Bram Moolenaar | ae5bce1 | 2005-08-15 21:41:48 +0000 | [diff] [blame] | 1 | # Aap recipe for Czech Vim spell files. |
| 2 | |
| 3 | # Use a freshly compiled Vim if it exists. |
| 4 | @if os.path.exists('../../../src/vim'): |
| 5 | VIM = ../../../src/vim |
| 6 | @else: |
| 7 | :progsearch VIM vim |
| 8 | |
| 9 | SPELLDIR = .. |
| 10 | FILES = cs_CZ.aff cs_CZ.dic |
| 11 | |
| 12 | all: $SPELLDIR/cs.iso-8859-2.spl $SPELLDIR/cs.utf-8.spl \ |
| 13 | $SPELLDIR/cs.cp1250.spl ../README_cs.txt |
| 14 | |
Bram Moolenaar | 5b8d8fd | 2005-08-16 23:01:50 +0000 | [diff] [blame] | 15 | $SPELLDIR/cs.iso-8859-2.spl : $FILES |
Bram Moolenaar | ae5bce1 | 2005-08-15 21:41:48 +0000 | [diff] [blame] | 16 | :sys env LANG=cs_CZ.ISO8859-2 $VIM -u NONE -e -c "mkspell! $SPELLDIR/cs cs_CZ" -c q |
| 17 | |
Bram Moolenaar | 5b8d8fd | 2005-08-16 23:01:50 +0000 | [diff] [blame] | 18 | $SPELLDIR/cs.utf-8.spl : $FILES |
Bram Moolenaar | ae5bce1 | 2005-08-15 21:41:48 +0000 | [diff] [blame] | 19 | :sys env LANG=cs_CZ.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/cs cs_CZ" -c q |
| 20 | |
Bram Moolenaar | 5b8d8fd | 2005-08-16 23:01:50 +0000 | [diff] [blame] | 21 | $SPELLDIR/cs.cp1250.spl : $FILES |
Bram Moolenaar | ae5bce1 | 2005-08-15 21:41:48 +0000 | [diff] [blame] | 22 | :sys $VIM -u NONE -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/cs cs_CZ" -c q |
| 23 | |
| 24 | ../README_cs.txt: README_cs_CZ.txt |
| 25 | :copy $source $target |
| 26 | |
| 27 | # |
| 28 | # Fetching the files from OpenOffice.org. |
| 29 | # |
| 30 | OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries |
| 31 | :attr {fetch = $OODIR/%file%} cs_CZ.zip |
| 32 | |
| 33 | # The files don't depend on the .zip file so that we can delete it. |
| 34 | # Only download the zip file if the targets don't exist. |
| 35 | # This is a bit tricky, since the file name includes the date. |
| 36 | cs_CZ.aff cs_CZ.dic: {buildcheck=} |
| 37 | :assertpkg unzip patch |
| 38 | :fetch cs_CZ.zip |
| 39 | :sys $UNZIP cs_CZ.zip |
| 40 | :delete cs_CZ.zip |
| 41 | @if not os.path.exists('cs_CZ.orig.aff'): |
| 42 | :copy cs_CZ.aff cs_CZ.orig.aff |
| 43 | @if not os.path.exists('cs_CZ.orig.dic'): |
| 44 | :copy cs_CZ.dic cs_CZ.orig.dic |
| 45 | @if os.path.exists('cs_CZ.diff'): |
| 46 | :sys patch <cs_CZ.diff |
| 47 | |
| 48 | |
| 49 | # Generate diff files, so that others can get the OpenOffice files and apply |
| 50 | # the diffs to get the Vim versions. |
| 51 | |
| 52 | diff: |
| 53 | :assertpkg diff |
| 54 | :sys {force} diff -a -C 1 cs_CZ.orig.aff cs_CZ.aff >cs_CZ.diff |
| 55 | :sys {force} diff -a -C 1 cs_CZ.orig.dic cs_CZ.dic >>cs_CZ.diff |
| 56 | |
| 57 | |
| 58 | # Check for updated OpenOffice spell files. When there are changes the |
| 59 | # ".new.aff" and ".new.dic" files are left behind for manual inspection. |
| 60 | |
| 61 | check: |
| 62 | :assertpkg unzip diff |
| 63 | :fetch cs_CZ.zip |
| 64 | :mkdir tmp |
| 65 | :cd tmp |
| 66 | @try: |
| 67 | @import stat |
| 68 | :sys $UNZIP ../cs_CZ.zip |
| 69 | :sys {force} diff ../cs_CZ.orig.aff cs_CZ.aff >d |
| 70 | @if os.stat('d')[stat.ST_SIZE] > 0: |
| 71 | :copy cs_CZ.aff ../cs_CZ.new.aff |
| 72 | :sys {force} diff ../cs_CZ.orig.dic cs_CZ.dic >d |
| 73 | @if os.stat('d')[stat.ST_SIZE] > 0: |
| 74 | :copy cs_CZ.dic ../cs_CZ.new.dic |
| 75 | @finally: |
| 76 | :cd .. |
| 77 | :delete {r}{f}{q} tmp |
| 78 | :delete cs_CZ.zip |
| 79 | |
| 80 | |
| 81 | # vim: set sts=4 sw=4 : |