From fb6b492d5c690908d44b36dffb0e23a21e344c59 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Wed, 22 Jul 2015 12:28:52 +0400 Subject: [PATCH] =?UTF-8?q?am=C3=A9liorer=20l'affichage=20des=20scripts=20?= =?UTF-8?q?geturl=20et=20openurl?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- caturl | 17 ++++++++++++++--- geturl | 7 ++++++- openurl | 7 ++++++- 3 files changed, 26 insertions(+), 5 deletions(-) diff --git a/caturl b/caturl index 3bcb50d..b76aef8 100755 --- a/caturl +++ b/caturl @@ -10,8 +10,10 @@ USAGE $scriptname " } +check= parse_opts "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ + --check check=1 \ @ args -- "$@" && set -- "${args[@]}" || die "$args" function findurl() { @@ -25,7 +27,10 @@ if [ -z "$URL" ]; then # Essayer de trouver une fichier homepage.{url,desktop} dans le répertoire # courant URLFILE="$(findurl homepage)" - [ -f "$URLFILE" ] || die "Il faut spécifier l'url à ouvrir" + if [ ! -f "$URLFILE" ]; then + [ -n "$check" ] && exit 2 + die "Il faut spécifier l'url à ouvrir" + fi elif [ -d "$URL" ]; then # répertoire dans lequel se trouve éventuellement un fichier # homepage.{url,desktop} @@ -63,7 +68,10 @@ if [ -n "$URLFILE" ]; then /[uU][rR][lL]=/ { URL = substr($0, 5) } END { if (type == 1) print URL } ')" - [ -n "$URL" ] || die "$URLFILE: ne contient pas d'URL" + if [ -z "$URL" ]; then + [ -n "$check" ] && exit 3 + die "$URLFILE: ne contient pas d'URL" + fi elif [ "${URLFILE%.desktop}" != "$URL" ]; then # raccourci vers une url de XDG URL="$(<"$URLFILE" awk 'BEGIN { type = 0; URL = "" } @@ -72,7 +80,10 @@ END { if (type == 1) print URL } /[uU][rR][lL]=/ { URL = substr($0, 5) } END { if (type == 2) print URL } ')" - [ -n "$URL" ] || die "$URLFILE: ne contient pas d'URL" + if [ -z "$URL" ]; then + [ -n "$check" ] && exit 3 + die "$URLFILE: ne contient pas d'URL" + fi fi fi diff --git a/geturl b/geturl index de561cd..6b2dbd4 100755 --- a/geturl +++ b/geturl @@ -14,7 +14,12 @@ parse_opts + "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ @ args -- "$@" && set -- "${args[@]}" || die "$args" -url="$("$scriptdir/caturl" "$1")" || die +"$scriptdir/caturl" --check "$1" +case $? in +2) die "Vous devez spécifier l'url à ouvrir";; +3) die "Le fichier spécifié ne contient pas d'url";; +esac +setx url="$scriptdir/caturl" "$1" || die shift filename="$(basename "$url")" diff --git a/openurl b/openurl index 4bbb31c..3e8a4e0 100755 --- a/openurl +++ b/openurl @@ -14,7 +14,12 @@ parse_opts "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ @ args -- "$@" && set -- "${args[@]}" || die "$args" -url="$("$scriptdir/caturl" "$1")" || die +"$scriptdir/caturl" --check "$1" +case $? in +2) die "Vous devez spécifier l'url à ouvrir";; +3) die "Le fichier spécifié ne contient pas d'url";; +esac +setx url="$scriptdir/caturl" "$1" || die if progexists xdg-open; then exec xdg-open "$url"