diff options
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 |