Skip to content

Commit d0aaa1f

Browse files
committed
Flatten dictionaries
1 parent fbb3249 commit d0aaa1f

File tree

1 file changed

+27
-1
lines changed

1 file changed

+27
-1
lines changed

.github/workflows/compact-dictionaries.yml

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,16 @@ jobs:
5353
files=$(mktemp)
5454
(
5555
cd dictionaries
56-
perl -ne 'next unless s/^\s*cspell://;my $file=$_; chomp $file; print if -e $file' "$action"
56+
git ls-files |
57+
filter=$(
58+
perl -ne 'next unless s/^\s*cspell://;s!(.*?)(?:/.*/|/)(.*)!
59+
quotemeta(quotemeta($1)) .
60+
"(?:/|/.*/)" .
61+
quotemeta(quotemeta($2))!e;
62+
print' "$action" |
63+
xargs|
64+
tr ' ' '|'
65+
) perl -ne 'next unless /$ENV{filter}/;print'
5766
) > "$files"
5867
echo "dictionaries=[$(perl -ne 'next unless s/^(\S+)\n/"$1",/;print' "$files"|perl -pe 's/,$//')]" >> "$GITHUB_OUTPUT"
5968
(cd dictionaries; zip "$archive" $(cat $files))
@@ -151,5 +160,22 @@ jobs:
151160
git config user.email "[email protected]"
152161
git add -u
153162
git commit -m 'Reduce dictionaries'
163+
164+
for src in $(
165+
git ls-files 'dictionaries/*/src/*.txt' |
166+
grep -vi -E 'license|readme|source-files|wordlist'
167+
); do
168+
dict=$(echo "$src"| sed -e 's#/src/#/dict/#')
169+
dest=$(echo "$src"| sed -e 's#/src/#/#')
170+
if [ ! -e "$dest" ]; then
171+
mkdir -p $(dirname "$dest")
172+
if [ -e "$dict" ]; then
173+
git mv "$dict" "$dest"
174+
else
175+
git mv "$src" "$dest"
176+
fi
177+
fi
178+
done
179+
git commit -m 'Reorganize dictionaries' || true
154180
git push origin HEAD
155181

0 commit comments

Comments
 (0)