Signed-off-by: Gordian Edenhofer <gordian.edenhofer@gmail.com> --- contrib/paccache.sh.in | 83 ++++++++++++++++++++++++++++++++------------------ 1 file changed, 53 insertions(+), 30 deletions(-) diff --git a/contrib/paccache.sh.in b/contrib/paccache.sh.in index 02fae52..78f566f 100644 --- a/contrib/paccache.sh.in +++ b/contrib/paccache.sh.in @@ -30,6 +30,17 @@ declare delim=$'\n' keep=3 movedir= scanarch= QUIET=0 USE_COLOR='y' +# gettext initialization +export TEXTDOMAIN='pacman' +export TEXTDOMAINDIR='@localedir@' + +# Determine whether we have gettext; make it a no-op if we do not +if ! type -p gettext >/dev/null; then + gettext() { + printf "%s\n" "$@" + } +fi + m4_include(../scripts/library/output_format.sh) m4_include(../scripts/library/parseopts.sh) @@ -172,36 +183,48 @@ summarize() { } usage() { - cat <<EOF -${myname} (pacman) v${myver} - -A flexible pacman cache cleaning utility. - -Usage: ${myname} <operation> [options] [targets...] - - Operations: - -d, --dryrun perform a dry run, only finding candidate packages. - -m, --move <dir> move candidate packages to "dir". - -r, --remove remove candidate packages. - - Options: - -a, --arch <arch> scan for "arch" (default: all architectures). - -c, --cachedir <dir> scan "dir" for packages. can be used more than once. - (default: read from @sysconfdir@/pacman.conf). - -f, --force apply force to mv(1) and rm(1) operations. - -h, --help display this help message and exit. - -i, --ignore <pkgs> ignore "pkgs", comma-separated. Alternatively, specify - "-" to read package names from stdin, newline- - delimited. - -k, --keep <num> keep "num" of each package in the cache (default: 3). - --nocolor remove color from output. - -q, --quiet minimize output - -u, --uninstalled target uninstalled packages. - -v, --verbose increase verbosity. specify up to 3 times. - -z, --null use null delimiters for candidate names (only with -v - and -vv). - -EOF + printf "%s (pacman) %s\n" "$myname" "$myver" + echo + printf -- "$(gettext "A flexible pacman cache cleaning utility")\n" + echo + printf -- "$(gettext "Usage: %s <operation> [options] [targets...]")\n" "$0" + echo + printf -- "$(gettext "Operations:")\n" + printf -- " -d, --dryrun " + printf -- "$(gettext "Perform a dry run, only finding candidate packages")\n" + printf -- " -m, --move <dir> " + printf -- "$(gettext "Move candidate packages to \"dir\"")\n" + printf -- " -r, --remove " + printf -- "$(gettext "Remove candidate packages")\n" + echo + printf -- "$(gettext "Options:")\n" + printf -- " -a, --arch <arch> " + printf -- "$(gettext "Scan for \"arch\" (default: all architectures)")\n" + printf -- " -c, --cachedir <dir> " + printf -- "$(gettext "Scan \"dir\" for packages. Can be used more than once.\n\ + (default: read from %s).")\n" "@sysconfdir@/pacman.conf" + printf -- " -f, --force " + printf -- "$(gettext "Apply force to mv(1) and rm(1) operations")\n" "\$srcdir/" + printf -- " -h, --help " + printf -- "$(gettext "Display this help message and exit")\n" + printf -- " -i, --ignore <pkgs> " + printf -- "$(gettext "Ignore \"pkgs\", comma-separated. Alternatively, specify\n\ + \"-\" to read package names from stdin, newline-\n\ + delimited.")\n" "\$srcdir/" + printf -- " -k, --keep <num> " + printf -- "$(gettext "Keep \"num\" of each package in the cache (default: 3)")\n" + printf -- " -q, --quiet " + printf -- "$(gettext "Minimize output")\n" + printf -- " -u, --uninstalled " + printf -- "$(gettext "Target uninstalled packages")\n" + printf -- " -v, --verbose " + printf -- "$(gettext "Increase verbosity. specify up to 3 times.")\n" + printf -- " -z, --null " + printf -- "$(gettext "Use null delimiters for candidate names (only with -v\n\ + and -vv)")\n" + printf -- " --nocolor " + printf -- "$(gettext "Remove color from output")\n" + echo } version() { -- 2.10.0