| # Aap recipe for Turkish Vim spell files. |
| |
| # Use a freshly compiled Vim if it exists. |
| @if os.path.exists('../../../src/vim'): |
| VIM = ../../../src/vim |
| @else: |
| :progsearch VIM vim |
| |
| SPELLDIR = .. |
| FILES = tr_TR.aff tr_TR.dic |
| |
| all: $SPELLDIR/tr.utf-8.spl |
| |
| $SPELLDIR/tr.utf-8.spl : $FILES |
| :sys env LANG=tr_TR.UTF-8 |
| $VIM -u NONE -e -c "mkspell! $SPELLDIR/tr tr_TR" -c q |
| |
| # Fetching LibreOffice spell files |
| FILE = https://github.com/bitigchi/bitigchi.github.io/raw/master/vim-tr-spell/tr_TR.zip |
| :attr {fetch = $FILE} tr_TR.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. |
| tr_TR.aff tr_TR.dic: {buildcheck=} |
| :assertpkg unzip patch |
| :fetch tr_TR.zip |
| :sys $UNZIP tr_TR.zip |
| :delete tr_TR.zip |
| @if not os.path.exists('tr_TR.orig.aff'): |
| :copy tr_TR.aff tr_TR.orig.aff |
| @if not os.path.exists('tr_TR.orig.dic'): |
| :copy tr_TR.dic tr_TR.orig.dic |
| @if os.path.exists('tr_TR.diff'): |
| :sys patch <tr_TR.diff |
| |
| # Generate diff files |
| diff: |
| :assertpkg diff |
| :sys {force} diff -a -C 1 tr_TR.orig.aff tr_TR.aff >tr_TR.diff |
| :sys {force} diff -a -C 1 tr_TR.orig.dic tr_TR.dic >>tr_TR.diff |
| |
| # Check for updated LibreOffice spell files. When there are changes the |
| # ".new.aff" and ".new.dic" files are left behind for manual inspection. |
| check: |
| :assertpkg unzip diff |
| :fetch tr_TR.zip |
| :mkdir tmp |
| :cd tmp |
| @try: |
| @import stat |
| :sys $UNZIP ../tr_TR.zip |
| :sys {force} diff ../tr_TR.orig.aff tr_TR.aff >d |
| @if os.stat('d')[stat.ST_SIZE] > 0: |
| :copy tr_TR.aff ../tr_TR.new.aff |
| :sys {force} diff ../tr_TR.orig.dic tr_TR.dic >d |
| @if os.stat('d')[stat.ST_SIZE] > 0: |
| :copy tr_TR.dic ../tr_TR.new.dic |
| @finally: |
| :cd .. |
| :delete {r}{f}{q} tmp |
| :delete tr_TR.zip |
| |
| # Remove all the downloaded and generated files. |
| clean: |
| :delete tr_TR.aff |
| :delete tr_TR.dic |
| :delete tr_TR.orig.aff |
| :delete tr_TR.orig.dic |