lifelines.vim 6.5 KB

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