summaryrefslogtreecommitdiffstats
path: root/runtime/spell/ru/main.aap
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/spell/ru/main.aap')
-rw-r--r--runtime/spell/ru/main.aap84
1 files changed, 84 insertions, 0 deletions
diff --git a/runtime/spell/ru/main.aap b/runtime/spell/ru/main.aap
new file mode 100644
index 0000000..e3d37a1
--- /dev/null
+++ b/runtime/spell/ru/main.aap
@@ -0,0 +1,84 @@
+# Aap recipe for Russian Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ :progsearch VIM vim
+
+REGIONS = RU YO
+SPELLDIR = ..
+FILES = ru_$*(REGIONS).aff ru_$*(REGIONS).dic
+
+all: $SPELLDIR/ru.koi8-r.spl $SPELLDIR/ru.utf-8.spl \
+ $SPELLDIR/ru.cp1251.spl ../README_ru.txt
+
+$SPELLDIR/ru.koi8-r.spl : $FILES
+ :sys env LANG=ru_RU.KOI8-R $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
+
+$SPELLDIR/ru.utf-8.spl : $FILES
+ :sys env LANG=ru_RU.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
+
+$SPELLDIR/ru.cp1251.spl : $FILES
+ :sys env LANG=ru_RU.CP1251 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
+
+../README_ru.txt: README_ru_$*(REGIONS).txt
+ :print ru_RU >! $target
+ :cat README_ru_RU.txt >> $target
+ :print =================================================== >>$target
+ :print ru_YO >> $target
+ :cat README_ru_YO.txt >> $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $OODIR/%file%} ru_RU.zip ru_RU_yo.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+# This is a bit tricky, since the file name includes the date.
+ru_RU.aff ru_RU.dic: {buildcheck=}
+ :assertpkg unzip
+ :fetch ru_RU.zip
+ :sys unzip ru_RU.zip
+ :delete ru_RU.zip
+ @if not os.path.exists('ru_RU.orig.aff'):
+ :copy ru_RU.aff ru_RU.orig.aff
+ @if not os.path.exists('ru_RU.orig.dic'):
+ :copy ru_RU.dic ru_RU.orig.dic
+ @if os.path.exists('ru_RU.diff'):
+ :sys patch <ru_RU.diff
+
+ru_YO.aff ru_YO.dic: {buildcheck=}
+ :assertpkg unzip
+ :fetch ru_RU_yo.zip
+ :sys unzip ru_RU_yo.zip
+ :delete ru_RU_yo.zip
+ :move ru_RU_yo.aff ru_YO.aff
+ :move ru_RU_yo.dic ru_YO.dic
+ :move README_ru_RU_yo.txt README_ru_YO.txt
+ @if not os.path.exists('ru_YO.orig.aff'):
+ :copy ru_YO.aff ru_YO.orig.aff
+ @if not os.path.exists('ru_YO.orig.dic'):
+ :copy ru_YO.dic ru_YO.orig.dic
+ @if os.path.exists('ru_YO.diff'):
+ :sys patch <ru_YO.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 ru_RU.orig.aff ru_RU.aff >ru_RU.diff
+ :sys {force} diff -a -C 1 ru_RU.orig.dic ru_RU.dic >>ru_RU.diff
+ :sys {force} diff -a -C 1 ru_YO.orig.aff ru_YO.aff >ru_YO.diff
+ :sys {force} diff -a -C 1 ru_YO.orig.dic ru_YO.dic >>ru_YO.diff
+
+
+# Check for updated spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :print Doesn't work yet.