author | Wuzzy <almikes@aol.com> |
Wed, 11 Oct 2017 18:52:50 +0200 | |
changeset 12695 | 260f907dd99c |
parent 12018 | 3e615852f36e |
permissions | -rw-r--r-- |
7828 | 1 |
# this is inefficient and clunky, but, figured it might as well be kept somewhere so people are aware of it |
2 |
# Is how I'm currently updated the locale files. |
|
3 |
# collect strings - run in Data |
|
12018
3e615852f36e
Add loc_noop to Locale Lua library
Wuzzy <almikes@aol.com>
parents:
7935
diff
changeset
|
4 |
echo -n "" > loc.txt; for F in loc loc_noop; do grep -F "$F(\"" */*/*.lua | sed 's/")/")\n/g' | sed "s/.*$F(\"/loc(\"/;s/\").*/\")/" | grep loc | sort | uniq >> loc.txt; done |
7828 | 5 |
# Update locale files - run in Locale |
6 |
for i in *.lua;do cat ../loc.txt | while read f;do STR=$(echo "$f" | sed 's/loc("//;s/")\s*$//;s/"/\\"/g');MAPS=$(grep -F -l -- "loc(\"${STR}\")" ../*/*/*.lua ../*/*/*/*.lua | sed 's/.*\/\([^\/]*\)\/map.lua/\1/;s/.*Campaign\/\([^\/]*\)\//\1:/;s/.*\///;s/.lua//;s/ /_/g' | xargs | sed 's/ /, /g');C=$(echo $MAPS | sed 's/,/\n/' | wc -l);grep -Fq -- "[\"${STR}\"]" $i;if(($?));then if((C>0));then echo "-- [\"${STR}\"] = \"\", -- $MAPS" >> $i;else echo "-- [\"${STR}\"] = \"\"," >> $i;fi;fi;done;done |
|
7 |
# sort - run in Locale |
|
7935
f8941f0b7bef
update lua (remove duplicate strings, esp in fr.lua - mostly my fault - and add a bit more escaping to the crude script)
nemo
parents:
7828
diff
changeset
|
8 |
for i in *.lua;do rm temphead temptail templua;cat $i | grep -Ev "}|{" | grep -Ev "^[[:space:]]*$" | sort | uniq > templua;echo "locale = {" > temphead;echo " }" > temptail;cat temphead templua temptail > $i;done |
7828 | 9 |
# drop unused - run in Locale |
7935
f8941f0b7bef
update lua (remove duplicate strings, esp in fr.lua - mostly my fault - and add a bit more escaping to the crude script)
nemo
parents:
7828
diff
changeset
|
10 |
cat stub.lua | grep '"] =' | while read f;do PHRASE=$(echo "$f" | sed 's/[^[]*\["//;s/"] =.*//;s/"/\\"/g');CNT=$(grep -Frc "loc(\"$PHRASE\")" ../*/*/*.lua ../*/*/*/*.lua | grep -v ":0" | wc -l);if(($CNT==0));then echo "|$PHRASE|";PHRASE=$(echo "$PHRASE" | sed 's/\\/\\\\/g;s/\[/\\[/g;s/\]/\\]/g;s/\//\\\//g');sed -i "s/.*\[\"$PHRASE\"\].*//" *.lua;fi;done |