diff options
author | EuAndreh <eu@euandre.org> | 2025-05-01 17:25:31 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2025-05-01 18:19:56 -0300 |
commit | 2f2a292b0aab4d1caf98e7681f3f60c1a01fa98a (patch) | |
tree | 88368de8a7881a5c32dfbea23eaeebe0676a27dd /src/categories | |
parent | mkdeps.sh: Add default $LANG export (diff) | |
download | mkwb-2f2a292b0aab4d1caf98e7681f3f60c1a01fa98a.tar.gz mkwb-2f2a292b0aab4d1caf98e7681f3f60c1a01fa98a.tar.xz |
Support multiple languages for "categories" string
Diffstat (limited to 'src/categories')
-rwxr-xr-x | src/categories | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/src/categories b/src/categories index 9261fdf..26172e8 100755 --- a/src/categories +++ b/src/categories @@ -3,19 +3,28 @@ set -euo pipefail usage() { - echo 'Usage: categories DIRECTORY' + echo 'Usage: categories GLOBAL_CONF DATADIRECTORY' } -DIRECTORY="${1:-}" -eval "$(assert-arg -- "$DIRECTORY" 'DIRECTORY')" +GLOBAL_CONF="${1:-}" +DATADIRECTORY="${2:-}" +eval "$(assert-arg -- "$GLOBAL_CONF" 'GLOBAL_CONF')" +eval "$(assert-arg -- "$DATADIRECTORY" 'DATADIRECTORY')" +. ./"$GLOBAL_CONF" + + +len="$( printf '%s..' "$root_dir" | sed -e 's|//|/|g' -e 's|/$||' | wc -c)" +lang="$(printf '%s' "$DATADIRECTORY" | cut -c "$len"- | tee /dev/stderr | cut -d/ -f1)" +SINGULAR="$(cat "$names_dir"/category/"$lang".txt)" +PLURAL="$( cat "$names_dir"/categories/"$lang".txt)" listall() ( - cd "$DIRECTORY" - find category.*.*.sortdata | cut -d. -f2 | sort | uniq + cd "$DATADIRECTORY" + find "$SINGULAR".*.*.sortdata | cut -d. -f2 | sort | uniq ) for category in `listall`; do - out="$DIRECTORY"/categories."$category".sortdata - cat "$DIRECTORY"/category."$category".*.sortdata > "$out" + out="$DATADIRECTORY"/"$PLURAL"."$category".sortdata + cat "$DATADIRECTORY"/"$SINGULAR"."$category".*.sortdata > "$out" printf '%s\n' "$out" done |