| # 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. |