From 2f2a292b0aab4d1caf98e7681f3f60c1a01fa98a Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Thu, 1 May 2025 17:25:31 -0300 Subject: Support multiple languages for "categories" string --- src/categories | 23 ++++++++++++++++------- src/categoriesbody | 4 ++-- src/categorydata | 4 +++- src/conf | 5 +++++ src/indexbody | 3 ++- 5 files changed, 28 insertions(+), 11 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 diff --git a/src/categoriesbody b/src/categoriesbody index 4ce7c73..cd7bd3d 100755 --- a/src/categoriesbody +++ b/src/categoriesbody @@ -10,9 +10,9 @@ FILENAME="${1:-}" eval "$(assert-arg -- "$FILENAME" 'FILENAME.conf')" . ./"$FILENAME" DIR="$(dirname -- "$FILENAME")" +PLURAL="$(cat "$names_dir"/categories/"$lang".txt)" - -for catsortdata in `cat "$DIR"/categories.txt`; do +for catsortdata in `cat "$DIR"/"$PLURAL".txt`; do category="$(basename -- "$catsortdata" | cut -d. -f2)" feedname=feed."$category".xml cat < and feeds by - categories. + $PLURAL.

EOF } -- cgit v1.2.3