1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: HTML/OS by Aestiva 3071d4279SBram Moolenaar" Maintainer: Jason Rust <[email protected]> 4071d4279SBram Moolenaar" URL: http://www.rustyparts.com/vim/syntax/htmlos.vim 5071d4279SBram Moolenaar" Info: http://www.rustyparts.com/scripts.php 6071d4279SBram Moolenaar" Last Change: 2003 May 11 7071d4279SBram Moolenaar" 8071d4279SBram Moolenaar 989bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1089bcfda6SBram Moolenaarif exists("b:current_syntax") 11071d4279SBram Moolenaar finish 12071d4279SBram Moolenaarendif 13071d4279SBram Moolenaar 14071d4279SBram Moolenaarif !exists("main_syntax") 15071d4279SBram Moolenaar let main_syntax = 'htmlos' 16071d4279SBram Moolenaarendif 17071d4279SBram Moolenaar 18071d4279SBram Moolenaarruntime! syntax/html.vim 19071d4279SBram Moolenaarunlet b:current_syntax 20071d4279SBram Moolenaar 21071d4279SBram Moolenaarsyn cluster htmlPreproc add=htmlosRegion 22071d4279SBram Moolenaar 23071d4279SBram Moolenaarsyn case ignore 24071d4279SBram Moolenaar 25071d4279SBram Moolenaar" Function names 26071d4279SBram Moolenaarsyn keyword htmlosFunctions expand sleep getlink version system ascii getascii syslock sysunlock cr lf clean postprep listtorow split listtocol coltolist rowtolist tabletolist contained 27071d4279SBram Moolenaarsyn keyword htmlosFunctions cut \display cutall cutx cutallx length reverse lower upper proper repeat left right middle trim trimleft trimright count countx locate locatex replace replacex replaceall replaceallx paste pasteleft pasteleftx pasteleftall pasteleftallx pasteright pasterightall pasterightallx chopleft chopleftx chopright choprightx format concat contained 28071d4279SBram Moolenaarsyn keyword htmlosFunctions goto exitgoto contained 29071d4279SBram Moolenaarsyn keyword htmlosFunctions layout cols rows row items getitem putitem switchitems gettable delrow delrows delcol delcols append merge fillcol fillrow filltable pastetable getcol getrow fillindexcol insindexcol dups nodups maxtable mintable maxcol mincol maxrow minrow avetable avecol averow mediantable mediancol medianrow producttable productcol productrow sumtable sumcol sumrow sumsqrtable sumsqrcol sumsqrrow reversecols reverserows switchcols switchrows inscols insrows insfillcol sortcol reversesortcol sortcoln reversesortcoln sortrow sortrown reversesortrow reversesortrown getcoleq getcoleqn getcolnoteq getcolany getcolbegin getcolnotany getcolnotbegin getcolge getcolgt getcolle getcollt getcolgen getcolgtn getcollen getcoltn getcolend getcolnotend getrowend getrownotend getcolin getcolnotin getcolinbegin getcolnotinbegin getcolinend getcolnotinend getrowin getrownotin getrowinbegin getrownotinbegin getrowinend getrownotinend contained 30071d4279SBram Moolenaarsyn keyword htmlosFunctions dbcreate dbadd dbedit dbdelete dbsearch dbsearchsort dbget dbgetsort dbstatus dbindex dbimport dbfill dbexport dbsort dbgetrec dbremove dbpurge dbfind dbfindsort dbunique dbcopy dbmove dbkill dbtransfer dbpoke dbsearchx dbgetx contained 31071d4279SBram Moolenaarsyn keyword htmlosFunctions syshtmlosname sysstartname sysfixfile fileinfo filelist fileindex domainname page browser regdomain username usernum getenv httpheader copy file ts row sysls syscp sysmv sysmd sysrd filepush filepushlink dirname contained 32071d4279SBram Moolenaarsyn keyword htmlosFunctions mail to address subject netmail netmailopen netmailclose mailfilelist netweb netwebresults webpush netsockopen netsockread netsockwrite netsockclose contained 33071d4279SBram Moolenaarsyn keyword htmlosFunctions today time systime now yesterday tomorrow getday getmonth getyear getminute getweekday getweeknum getyearday getdate gettime getamorpm gethour addhours addminutes adddays timebetween timetill timefrom datetill datefrom mixedtimebetween mixeddatetill mixedtimetill mixedtimefrom mixeddatefrom nextdaybyweekfromdate nextdaybyweekfromtoday nextdaybymonthfromdate nextdaybymonthfromtoday nextdaybyyearfromdate nextdaybyyearfromtoday offsetdaybyweekfromdate offsetdaybyweekfromtoday offsetdaybymonthfromdate offsetdaybymonthfromtoday contained 34071d4279SBram Moolenaarsyn keyword htmlosFunctions isprivate ispublic isfile isdir isblank iserror iserror iseven isodd istrue isfalse islogical istext istag isnumber isinteger isdate istableeq istableeqx istableeqn isfuture ispast istoday isweekday isweekend issamedate iseq isnoteq isge isle ismod10 isvalidstring contained 35071d4279SBram Moolenaarsyn keyword htmlosFunctions celtof celtokel ftocel ftokel keltocel keltof cmtoin intocm fttom mtoft fttomile miletoft kmtomile miletokm mtoyd ydtom galtoltr ltrtogal ltrtoqt qttoltr gtooz oztog kgtolb lbtokg mttoton tontomt contained 36071d4279SBram Moolenaarsyn keyword htmlosFunctions max min abs sign inverse square sqrt cube roundsig round ceiling roundup floor rounddown roundeven rounddowneven roundupeven roundodd roundupodd rounddownodd random factorial summand fibonacci remainder mod radians degrees cos sin tan cotan secant cosecant acos asin atan exp power power10 ln log10 log sinh cosh tanh contained 37071d4279SBram Moolenaarsyn keyword htmlosFunctions xmldelete xmldeletex xmldeleteattr xmldeleteattrx xmledit xmleditx xmleditvalue xmleditvaluex xmleditattr xmleditattrx xmlinsertbefore xmlinsertbeforex smlinsertafter xmlinsertafterx xmlinsertattr xmlinsertattrx smlget xmlgetx xmlgetvalue xmlgetvaluex xmlgetattrvalue xmlgetattrvaluex xmlgetrec xmlgetrecx xmlgetrecattrvalue xmlgetrecattrvaluex xmlchopleftbefore xmlchopleftbeforex xmlchoprightbefore xmlchoprightbeforex xmlchopleftafter xmlchopleftafterx xmlchoprightafter xmlchoprightafterx xmllocatebefore xmllocatebeforex xmllocateafter xmllocateafterx contained 38071d4279SBram Moolenaar 39071d4279SBram Moolenaar" Type 40071d4279SBram Moolenaarsyn keyword htmlosType int str dol flt dat grp contained 41071d4279SBram Moolenaar 42071d4279SBram Moolenaar" StorageClass 43071d4279SBram Moolenaarsyn keyword htmlosStorageClass locals contained 44071d4279SBram Moolenaar 45071d4279SBram Moolenaar" Operator 46071d4279SBram Moolenaarsyn match htmlosOperator "[-=+/\*!]" contained 47071d4279SBram Moolenaarsyn match htmlosRelation "[~]" contained 48071d4279SBram Moolenaarsyn match htmlosRelation "[=~][&!]" contained 49071d4279SBram Moolenaarsyn match htmlosRelation "[!=<>]=" contained 50071d4279SBram Moolenaarsyn match htmlosRelation "[<>]" contained 51071d4279SBram Moolenaar 52071d4279SBram Moolenaar" Comment 53071d4279SBram Moolenaarsyn region htmlosComment start="#" end="/#" contained 54071d4279SBram Moolenaar 55071d4279SBram Moolenaar" Conditional 56071d4279SBram Moolenaarsyn keyword htmlosConditional if then /if to else elif contained 57071d4279SBram Moolenaarsyn keyword htmlosConditional and or nand nor xor not contained 58071d4279SBram Moolenaar" Repeat 59071d4279SBram Moolenaarsyn keyword htmlosRepeat while do /while for /for contained 60071d4279SBram Moolenaar 61071d4279SBram Moolenaar" Keyword 62071d4279SBram Moolenaarsyn keyword htmlosKeyword name value step do rowname colname rownum contained 63071d4279SBram Moolenaar 64071d4279SBram Moolenaar" Repeat 65071d4279SBram Moolenaarsyn keyword htmlosLabel case matched /case switch contained 66071d4279SBram Moolenaar 67071d4279SBram Moolenaar" Statement 68071d4279SBram Moolenaarsyn keyword htmlosStatement break exit return continue contained 69071d4279SBram Moolenaar 70071d4279SBram Moolenaar" Identifier 71071d4279SBram Moolenaarsyn match htmlosIdentifier "\h\w*[\.]*\w*" contained 72071d4279SBram Moolenaar 73071d4279SBram Moolenaar" Special identifier 74071d4279SBram Moolenaarsyn match htmlosSpecialIdentifier "[\$@]" contained 75071d4279SBram Moolenaar 76071d4279SBram Moolenaar" Define 77071d4279SBram Moolenaarsyn keyword htmlosDefine function overlay contained 78071d4279SBram Moolenaar 79071d4279SBram Moolenaar" Boolean 80071d4279SBram Moolenaarsyn keyword htmlosBoolean true false contained 81071d4279SBram Moolenaar 82071d4279SBram Moolenaar" String 83071d4279SBram Moolenaarsyn region htmlosStringDouble keepend matchgroup=None start=+"+ end=+"+ contained 84071d4279SBram Moolenaarsyn region htmlosStringSingle keepend matchgroup=None start=+'+ end=+'+ contained 85071d4279SBram Moolenaar 86071d4279SBram Moolenaar" Number 87071d4279SBram Moolenaarsyn match htmlosNumber "-\=\<\d\+\>" contained 88071d4279SBram Moolenaar 89071d4279SBram Moolenaar" Float 90071d4279SBram Moolenaarsyn match htmlosFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained 91071d4279SBram Moolenaar 92071d4279SBram Moolenaar" Error 93071d4279SBram Moolenaarsyn match htmlosError "ERROR" contained 94071d4279SBram Moolenaar 95071d4279SBram Moolenaar" Parent 96071d4279SBram Moolenaarsyn match htmlosParent "[({[\]})]" contained 97071d4279SBram Moolenaar 98071d4279SBram Moolenaar" Todo 99071d4279SBram Moolenaarsyn keyword htmlosTodo TODO Todo todo contained 100071d4279SBram Moolenaar 101071d4279SBram Moolenaarsyn cluster htmlosInside contains=htmlosComment,htmlosFunctions,htmlosIdentifier,htmlosSpecialIdentifier,htmlosConditional,htmlosRepeat,htmlosLabel,htmlosStatement,htmlosOperator,htmlosRelation,htmlosStringSingle,htmlosStringDouble,htmlosNumber,htmlosFloat,htmlosError,htmlosKeyword,htmlosType,htmlosBoolean,htmlosParent 102071d4279SBram Moolenaar 103071d4279SBram Moolenaarsyn cluster htmlosTop contains=@htmlosInside,htmlosDefine,htmlosError,htmlosStorageClass 104071d4279SBram Moolenaar 105071d4279SBram Moolenaarsyn region htmlosRegion keepend matchgroup=Delimiter start="<<" skip=+".\{-}?>.\{-}"\|'.\{-}?>.\{-}'\|/\*.\{-}?>.\{-}\*/+ end=">>" contains=@htmlosTop 106071d4279SBram Moolenaarsyn region htmlosRegion keepend matchgroup=Delimiter start="\[\[" skip=+".\{-}?>.\{-}"\|'.\{-}?>.\{-}'\|/\*.\{-}?>.\{-}\*/+ end="\]\]" contains=@htmlosTop 107071d4279SBram Moolenaar 108071d4279SBram Moolenaar 109071d4279SBram Moolenaar" sync 110071d4279SBram Moolenaarif exists("htmlos_minlines") 111071d4279SBram Moolenaar exec "syn sync minlines=" . htmlos_minlines 112071d4279SBram Moolenaarelse 113071d4279SBram Moolenaar syn sync minlines=100 114071d4279SBram Moolenaarendif 115071d4279SBram Moolenaar 116071d4279SBram Moolenaar" Define the default highlighting. 11789bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 118071d4279SBram Moolenaar 119071d4279SBram Moolenaar" The default methods for highlighting. Can be overridden later 120*f37506f6SBram Moolenaarhi def link htmlosSpecialIdentifier Operator 121*f37506f6SBram Moolenaarhi def link htmlosIdentifier Identifier 122*f37506f6SBram Moolenaarhi def link htmlosStorageClass StorageClass 123*f37506f6SBram Moolenaarhi def link htmlosComment Comment 124*f37506f6SBram Moolenaarhi def link htmlosBoolean Boolean 125*f37506f6SBram Moolenaarhi def link htmlosStringSingle String 126*f37506f6SBram Moolenaarhi def link htmlosStringDouble String 127*f37506f6SBram Moolenaarhi def link htmlosNumber Number 128*f37506f6SBram Moolenaarhi def link htmlosFloat Float 129*f37506f6SBram Moolenaarhi def link htmlosFunctions Function 130*f37506f6SBram Moolenaarhi def link htmlosRepeat Repeat 131*f37506f6SBram Moolenaarhi def link htmlosConditional Conditional 132*f37506f6SBram Moolenaarhi def link htmlosLabel Label 133*f37506f6SBram Moolenaarhi def link htmlosStatement Statement 134*f37506f6SBram Moolenaarhi def link htmlosKeyword Statement 135*f37506f6SBram Moolenaarhi def link htmlosType Type 136*f37506f6SBram Moolenaarhi def link htmlosDefine Define 137*f37506f6SBram Moolenaarhi def link htmlosParent Delimiter 138*f37506f6SBram Moolenaarhi def link htmlosError Error 139*f37506f6SBram Moolenaarhi def link htmlosTodo Todo 140*f37506f6SBram Moolenaarhi def link htmlosOperator Operator 141*f37506f6SBram Moolenaarhi def link htmlosRelation Operator 142071d4279SBram Moolenaar 143071d4279SBram Moolenaarlet b:current_syntax = "htmlos" 144071d4279SBram Moolenaar 145071d4279SBram Moolenaarif main_syntax == 'htmlos' 146071d4279SBram Moolenaar unlet main_syntax 147071d4279SBram Moolenaarendif 148071d4279SBram Moolenaar 149071d4279SBram Moolenaar" vim: ts=8 sw=2 150