forked from aniani/vim
		
	
		
			
	
	
		
			83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			83 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | # Aap recipe for Setswana 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    = tn_ZA.aff tn_ZA.dic | ||
|  | 
 | ||
|  | # I don't have a Setswana locale, use Romanian instead. | ||
|  | all: $SPELLDIR/tn.iso-8859-2.spl $SPELLDIR/tn.utf-8.spl \ | ||
|  |         $SPELLDIR/tn.cp1250.spl ../README_tn.txt | ||
|  | 
 | ||
|  | $SPELLDIR/tn.iso-8859-2.spl : $FILES | ||
|  |         :sys env LANG=ro_RO.ISO8859-2 $VIM -u NONE -e -c "mkspell! $SPELLDIR/tn tn_ZA" -c q | ||
|  | 
 | ||
|  | $SPELLDIR/tn.utf-8.spl : $FILES | ||
|  |         :sys env LANG=ro_RO.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/tn tn_ZA" -c q | ||
|  | 
 | ||
|  | $SPELLDIR/tn.cp1250.spl : $FILES | ||
|  |         :sys $VIM -u NONE -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/tn tn_ZA" -c q | ||
|  | 
 | ||
|  | ../README_tn.txt: README_tn_ZA.txt | ||
|  |         :copy $source $target | ||
|  | 
 | ||
|  | # | ||
|  | # Fetching the files from OpenOffice.org. | ||
|  | # | ||
|  | OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries | ||
|  | :attr {fetch = $OODIR/%file%} tn_ZA.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. | ||
|  | tn_ZA.aff tn_ZA.dic: {buildcheck=} | ||
|  |         :assertpkg unzip patch | ||
|  |         :fetch tn_ZA.zip | ||
|  |         :sys $UNZIP tn_ZA.zip | ||
|  |         :delete tn_ZA.zip | ||
|  |         @if not os.path.exists('tn_ZA.orig.aff'): | ||
|  |             :copy tn_ZA.aff tn_ZA.orig.aff | ||
|  |         @if not os.path.exists('tn_ZA.orig.dic'): | ||
|  |             :copy tn_ZA.dic tn_ZA.orig.dic | ||
|  |         @if os.path.exists('tn_ZA.diff'): | ||
|  |             :sys patch <tn_ZA.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 tn_ZA.orig.aff tn_ZA.aff >tn_ZA.diff | ||
|  |         :sys {force} diff -a -C 1 tn_ZA.orig.dic tn_ZA.dic >>tn_ZA.diff | ||
|  | 
 | ||
|  | 
 | ||
|  | # Check for updated spell files.  When there are changes the | ||
|  | # ".new.aff" and ".new.dic" files are left behind for manual inspection. | ||
|  | 
 | ||
|  | check: | ||
|  |         :assertpkg unzip diff | ||
|  |         :fetch tn_ZA.zip | ||
|  |         :mkdir tmp | ||
|  |         :cd tmp | ||
|  |         @try: | ||
|  |             @import stat | ||
|  |             :sys $UNZIP ../tn_ZA.zip | ||
|  |             :sys {force} diff ../tn_ZA.orig.aff tn_ZA.aff >d | ||
|  |             @if os.stat('d')[stat.ST_SIZE] > 0: | ||
|  |                 :copy tn_ZA.aff ../tn_ZA.new.aff | ||
|  |             :sys {force} diff ../tn_ZA.orig.dic tn_ZA.dic >d | ||
|  |             @if os.stat('d')[stat.ST_SIZE] > 0: | ||
|  |                 :copy tn_ZA.dic ../tn_ZA.new.dic | ||
|  |         @finally: | ||
|  |             :cd .. | ||
|  |             :delete {r}{f}{q} tmp | ||
|  |             :delete tn_ZA.zip | ||
|  | 
 | ||
|  | 
 | ||
|  | # vim: set sts=4 sw=4 : |