From d748c4752d038627aa90f14a5c35c984d79b48ec Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Mon, 12 May 2025 06:16:25 -0300 Subject: git mv src/mandir src/instool --- deps.mk | 2 +- src/instool | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/mandir | 55 ------------------------------------------------------- 3 files changed, 56 insertions(+), 56 deletions(-) create mode 100755 src/instool delete mode 100755 src/mandir diff --git a/deps.mk b/deps.mk index 67f8625..5f2910c 100644 --- a/deps.mk +++ b/deps.mk @@ -5,7 +5,7 @@ sources.sh = \ src/htmlesc \ src/ifnew \ src/ifok \ - src/mandir \ + src/instool \ src/minutes \ src/mkdtemp \ src/mkstemp \ diff --git a/src/instool b/src/instool new file mode 100755 index 0000000..0b5060a --- /dev/null +++ b/src/instool @@ -0,0 +1,55 @@ +#!/bin/sh +set -eu + +usage() { + cat <<-'EOF' + Usage: + mandir (install|uninstall) DESTDIR MANPAGES... + EOF +} + + +ACTION="${1:-}" +DESTDIR="${2:-}" +eval "$(assert-arg -- "$ACTION" 'ACTION')" +eval "$(assert-arg -- "$DESTDIR" 'DESTDIR')" +shift +shift + + +ldirnames() { + find "$@" | xargs -I% basename % | + sed 's|^\(.*\)\.\([a-z][a-z]\)\.\(.*\)$|\2/man\3|' +} + +dirnames() { + ldirnames "$@" | sort | uniq + ldirnames "$@" | cut -d/ -f2- | sort | uniq +} + +if [ "$ACTION" = 'install' ]; then + dirnames "$@" | xargs -I% mkdir -p "$DESTDIR"/% +fi + +for f in "$@"; do + lang="$( printf '%s\n' "$f" | cut -d. -f2)" + section="$(printf '%s\n' "$f" | cut -d. -f3-)" + name="$(basename "${f%."$lang"."$section"}")" + nameext="$name.$section" + case "$ACTION" in + (install) + cp "$f" "$DESTDIR/$lang/man${section}/$nameext" + ln -fs "../en/man${section}/$nameext" \ + "$DESTDIR/man${section}/$nameext" + ;; + (uninstall) + rm -f \ + "$DESTDIR/$lang/man${section}/$nameext" \ + "$DESTDIR/man${section}/$nameext" + ;; + (*) + usage >&2 + exit 2 + ;; + esac +done diff --git a/src/mandir b/src/mandir deleted file mode 100755 index 0b5060a..0000000 --- a/src/mandir +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh -set -eu - -usage() { - cat <<-'EOF' - Usage: - mandir (install|uninstall) DESTDIR MANPAGES... - EOF -} - - -ACTION="${1:-}" -DESTDIR="${2:-}" -eval "$(assert-arg -- "$ACTION" 'ACTION')" -eval "$(assert-arg -- "$DESTDIR" 'DESTDIR')" -shift -shift - - -ldirnames() { - find "$@" | xargs -I% basename % | - sed 's|^\(.*\)\.\([a-z][a-z]\)\.\(.*\)$|\2/man\3|' -} - -dirnames() { - ldirnames "$@" | sort | uniq - ldirnames "$@" | cut -d/ -f2- | sort | uniq -} - -if [ "$ACTION" = 'install' ]; then - dirnames "$@" | xargs -I% mkdir -p "$DESTDIR"/% -fi - -for f in "$@"; do - lang="$( printf '%s\n' "$f" | cut -d. -f2)" - section="$(printf '%s\n' "$f" | cut -d. -f3-)" - name="$(basename "${f%."$lang"."$section"}")" - nameext="$name.$section" - case "$ACTION" in - (install) - cp "$f" "$DESTDIR/$lang/man${section}/$nameext" - ln -fs "../en/man${section}/$nameext" \ - "$DESTDIR/man${section}/$nameext" - ;; - (uninstall) - rm -f \ - "$DESTDIR/$lang/man${section}/$nameext" \ - "$DESTDIR/man${section}/$nameext" - ;; - (*) - usage >&2 - exit 2 - ;; - esac -done -- cgit v1.2.3