1" Vim syntax file 2" Language: LifeLines (v 3.0.62) <http://lifelines.sourceforge.net> 3" Maintainer: Patrick Texier <[email protected]> 4" Location: <http://patrick.texier.free.fr/vim/syntax/lifelines.vim> 5" Last Change: 2010 May 7 6 7" option to highlight error obsolete statements 8" add the following line to your .vimrc file : 9" let lifelines_deprecated = 1 10 11" For version 5.x: Clear all syntax items 12" For version 6.x: Quit when a syntax file was already loaded 13 14" quit when a syntax file was already loaded 15if exists("b:current_syntax") 16 finish 17endif 18 19" A bunch of useful LifeLines keywords 3.0.62 20 21syn keyword lifelinesDecl char_encoding require option include 22syn keyword lifelinesStatement set 23syn keyword lifelinesUser getindi geindiset getfam getint getstr choosechild 24syn keyword lifelinesUser chooseindi choosespouse choosesubset menuchoose 25syn keyword lifelinesUser choosefam 26syn keyword lifelinesProc proc func return call 27syn keyword lifelinesInclude include 28syn keyword lifelinesDef global 29syn keyword lifelinesConditional if else elsif switch 30syn keyword lifelinesRepeat continue break while 31syn keyword lifelinesLogical and or not eq ne lt gt le ge strcmp eqstr nestr 32syn keyword lifelinesArithm add sub mul div mod exp neg incr decr 33syn keyword lifelinesArithm cos sin tan arccos arcsin arctan 34syn keyword lifelinesArithm deg2dms dms2deg spdist 35syn keyword lifelinesIndi name fullname surname givens trimname birth 36syn keyword lifelinesIndi death burial baptism 37syn keyword lifelinesIndi father mother nextsib prevsib sex male female 38syn keyword lifelinesIndi pn nspouses nfamilies parents title key 39syn keyword lifelinesIndi soundex inode root indi firstindi nextindi 40syn keyword lifelinesIndi previndi spouses families forindi indiset 41syn keyword lifelinesIndi addtoset deletefromset union intersect 42syn keyword lifelinesIndi difference parentset childset spouseset siblingset 43syn keyword lifelinesIndi ancestorset descendentset descendantset uniqueset 44syn keyword lifelinesIndi namesort keysort valuesort genindiset getindiset 45syn keyword lifelinesIndi forindiset lastindi writeindi 46syn keyword lifelinesIndi inset 47syn keyword lifelinesFam marriage husband wife nchildren firstchild 48syn keyword lifelinesFam lastchild fnode fam firstfam nextfam lastfam 49syn keyword lifelinesFam prevfam children forfam writefam 50syn keyword lifelinesFam fathers mothers Parents 51syn keyword lifelinesList list empty length enqueue dequeue requeue 52syn keyword lifelinesList push pop setel getel forlist inlist dup clear 53syn keyword lifelinesTable table insert lookup 54syn keyword lifelinesGedcom xref tag value parent child sibling savenode 55syn keyword lifelinesGedcom fornodes traverse createnode addnode 56syn keyword lifelinesGedcom detachnode foreven fornotes forothr forsour 57syn keyword lifelinesGedcom reference dereference getrecord 58syn keyword lifelinesGedcom gengedcomstrong 59syn keyword lifelinesFunct date place year long short gettoday dayformat 60syn keyword lifelinesFunct monthformat dateformat extractdate eraformat 61syn keyword lifelinesFunct complexdate complexformat complexpic datepic 62syn keyword lifelinesFunct extractnames extractplaces extracttokens lower 63syn keyword lifelinesFunct yearformat 64syn keyword lifelinesFunct upper capitalize trim rjustify 65syn keyword lifelinesFunct concat strconcat strlen substring index 66syn keyword lifelinesFunct titlecase gettext 67syn keyword lifelinesFunct d card ord alpha roman strsoundex strtoint 68syn keyword lifelinesFunct atoi linemode pagemod col row pos pageout nl 69syn keyword lifelinesFunct sp qt newfile outfile copyfile print lock unlock test 70syn keyword lifelinesFunct database version system stddate program 71syn keyword lifelinesFunct pvalue pagemode level extractdatestr debug 72syn keyword lifelinesFunct f float int free getcol getproperty heapused 73syn keyword lifelinesFunct sort rsort 74syn keyword lifelinesFunct deleteel 75syn keyword lifelinesFunct bytecode convertcode setlocale 76" New dates functions (since 3.0.51) 77syn keyword lifelinesFunct jd2date date2jd dayofweek setdate 78 79" options to highlight as error obsolete statements 80" please read ll-reportmanual. 81 82if exists("lifelines_deprecated") 83 syn keyword lifelinesError getintmsg getindimsg getstrmsg 84 syn keyword lifelinesError gengedcom gengedcomweak deletenode 85 syn keyword lifelinesError save strsave 86 syn keyword lifelinesError lengthset 87 if version >= 700 88 let g:omni_syntax_group_exclude_lifelines = 'lifelinesError' 89 endif 90else 91 syn keyword lifelinesUser getintmsg getindimsg getstrmsg 92 syn keyword lifelinesGedcom gengedcom gengedcomweak deletenode 93 syn keyword lifelinesFunct save strsave 94 syn keyword lifelinesIndi lengthset 95endif 96 97syn region lifelinesString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=lifelinesSpecial 98 99syn match lifelinesSpecial "\\\(\\\|\(n\|t\)\)" contained 100 101syn keyword lifelinesTodo contained TODO FIXME XXX 102syn region lifelinesComment start="/\*" end="\*/" contains=lifelinesTodo 103 104" integers 105syn match lifelinesNumber "-\=\<\d\+\>" 106"floats, with dot 107syn match lifelinesNumber "-\=\<\d\+\.\d*\>" 108"floats, starting with a dot 109syn match lifelinesNumber "-\=\.\d\+\>" 110 111" folding using {} 112syn region lifelinesFoldBlock start="{" end="}" transparent fold 113 114"catch errors caused by wrong parenthesis 115"adapted from original c.vim written by Bram Moolenaar 116 117syn cluster lifelinesParenGroup contains=lifelinesParenError 118syn region lifelinesParen transparent start='(' end=')' contains=ALLBUT,@lifelinesParenGroup 119syn match lifelinesParenError ")" 120syn match lifelinesErrInParen contained "[{}]" 121 122" Define the default highlighting. 123" Only when an item doesn't have highlighting yet 124 125 126hi def link lifelinesConditional Conditional 127hi def link lifelinesArithm Operator 128hi def link lifelinesLogical Conditional 129hi def link lifelinesInclude Include 130hi def link lifelinesComment Comment 131hi def link lifelinesStatement Statement 132hi def link lifelinesUser Statement 133hi def link lifelinesFunct Statement 134hi def link lifelinesTable Statement 135hi def link lifelinesGedcom Statement 136hi def link lifelinesList Statement 137hi def link lifelinesRepeat Repeat 138hi def link lifelinesFam Statement 139hi def link lifelinesIndi Statement 140hi def link lifelinesProc Statement 141hi def link lifelinesDef Statement 142hi def link lifelinesString String 143hi def link lifelinesSpecial Special 144hi def link lifelinesNumber Number 145hi def link lifelinesParenError Error 146hi def link lifelinesErrInParen Error 147hi def link lifelinesError Error 148hi def link lifelinesTodo Todo 149hi def link lifelinesDecl PreProc 150 151 152let b:current_syntax = "lifelines" 153 154" vim: ts=8 sw=4 155