mirror of
https://github.com/gryf/.vim.git
synced 2025-12-17 19:40:29 +01:00
update syntastic, removed unused colors
This commit is contained in:
599
syntax/css.vim
Normal file
599
syntax/css.vim
Normal file
@@ -0,0 +1,599 @@
|
||||
" Vim syntax file
|
||||
" Language: Cascading Style Sheets
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/css.vim
|
||||
" Last Change: 2007 Nov 06
|
||||
" CSS2 by Nikolai Weibull
|
||||
" Full CSS2, HTML4 support by Yeti
|
||||
" <20><>bg<62><67><EFBFBD><EFBFBD>6λ<36><CEBB>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD>
|
||||
function! s:FGforBG(bg)
|
||||
" takes a 6hex color code and returns a matching color that is visible
|
||||
" substitute ɾ<><C9BE><EFBFBD><EFBFBD>ͷ<EFBFBD><CDB7>#
|
||||
let pure = substitute(a:bg,'^#','','')
|
||||
" <20><>λȡ<CEBB><C8A1>RGB
|
||||
let r = eval('0x'.pure[0].pure[1])
|
||||
let g = eval('0x'.pure[2].pure[3])
|
||||
let b = eval('0x'.pure[4].pure[5])
|
||||
if r*30 + g*59 + b*11 > 12000
|
||||
return '#000000'
|
||||
else
|
||||
return '#ffffff'
|
||||
end
|
||||
endfunction
|
||||
|
||||
function! s:SetMatcher(clr,pat)
|
||||
let group = 'cssColor'.substitute(a:clr,'^#','','')
|
||||
" Redirect messages to a variable
|
||||
redir => s:currentmatch
|
||||
silent! exe 'syn list '.group
|
||||
" End redirecting messages
|
||||
redir END
|
||||
" !~ regexp doesn't match
|
||||
if s:currentmatch !~ a:pat.'\/'
|
||||
exe 'syn match '.group.' /'.a:pat.'\>/ contained'
|
||||
exe 'syn cluster cssColors add='.group
|
||||
if has('gui_running')
|
||||
exe 'hi '.group.' guifg='.s:FGforBG(a:clr)
|
||||
exe 'hi '.group.' guibg='.a:clr
|
||||
elseif &t_Co == 256
|
||||
exe 'hi '.group.' ctermfg='.s:Rgb2xterm(s:FGforBG(a:clr))
|
||||
exe 'hi '.group.' ctermbg='.s:Rgb2xterm(a:clr)
|
||||
endif
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
"" the 6 value iterations in the xterm color cube
|
||||
let s:valuerange = [ 0x00, 0x5F, 0x87, 0xAF, 0xD7, 0xFF ]
|
||||
"
|
||||
"" 16 basic colors
|
||||
let s:basic16 = [ [ 0x00, 0x00, 0x00 ], [ 0xCD, 0x00, 0x00 ], [ 0x00, 0xCD, 0x00 ], [ 0xCD, 0xCD, 0x00 ], [ 0x00, 0x00, 0xEE ], [ 0xCD, 0x00, 0xCD ], [ 0x00, 0xCD, 0xCD ], [ 0xE5, 0xE5, 0xE5 ], [ 0x7F, 0x7F, 0x7F ], [ 0xFF, 0x00, 0x00 ], [ 0x00, 0xFF, 0x00 ], [ 0xFF, 0xFF, 0x00 ], [ 0x5C, 0x5C, 0xFF ], [ 0xFF, 0x00, 0xFF ], [ 0x00, 0xFF, 0xFF ], [ 0xFF, 0xFF, 0xFF ] ]
|
||||
:
|
||||
function! s:Xterm2rgb(color)
|
||||
" 16 basic colors
|
||||
let r=0
|
||||
let g=0
|
||||
let b=0
|
||||
if a:color<16
|
||||
let r = s:basic16[a:color][0]
|
||||
let g = s:basic16[a:color][1]
|
||||
let b = s:basic16[a:color][2]
|
||||
endif
|
||||
|
||||
" color cube color
|
||||
if a:color>=16 && a:color<=232
|
||||
let color=a:color-16
|
||||
let r = s:valuerange[(color/36)%6]
|
||||
let g = s:valuerange[(color/6)%6]
|
||||
let b = s:valuerange[color%6]
|
||||
endif
|
||||
|
||||
" gray tone
|
||||
if a:color>=233 && a:color<=253
|
||||
let r=8+(a:color-232)*0x0a
|
||||
let g=r
|
||||
let b=r
|
||||
endif
|
||||
let rgb=[r,g,b]
|
||||
return rgb
|
||||
endfunction
|
||||
|
||||
function! s:pow(x, n)
|
||||
let x = a:x
|
||||
for i in range(a:n-1)
|
||||
let x = x*a:x
|
||||
return x
|
||||
endfunction
|
||||
|
||||
let s:colortable=[]
|
||||
for c in range(0, 254)
|
||||
let color = s:Xterm2rgb(c)
|
||||
call add(s:colortable, color)
|
||||
endfor
|
||||
|
||||
" selects the nearest xterm color for a rgb value like #FF0000
|
||||
function! s:Rgb2xterm(color)
|
||||
let best_match=0
|
||||
let smallest_distance = 10000000000
|
||||
let r = eval('0x'.a:color[1].a:color[2])
|
||||
let g = eval('0x'.a:color[3].a:color[4])
|
||||
let b = eval('0x'.a:color[5].a:color[6])
|
||||
for c in range(0,254)
|
||||
let d = s:pow(s:colortable[c][0]-r,2) + s:pow(s:colortable[c][1]-g,2) + s:pow(s:colortable[c][2]-b,2)
|
||||
if d<smallest_distance
|
||||
let smallest_distance = d
|
||||
let best_match = c
|
||||
endif
|
||||
endfor
|
||||
return best_match
|
||||
endfunction
|
||||
|
||||
function! s:SetNamedColor(clr,name)
|
||||
let group = 'cssColor'.substitute(a:clr,'^#','','')
|
||||
exe 'syn keyword '.group.' '.a:name.' contained'
|
||||
exe 'syn cluster cssColors add='.group
|
||||
if has('gui_running')
|
||||
exe 'hi '.group.' guifg='.s:FGforBG(a:clr)
|
||||
exe 'hi '.group.' guibg='.a:clr
|
||||
elseif &t_Co == 256
|
||||
exe 'hi '.group.' ctermfg='.s:Rgb2xterm(s:FGforBG(a:clr))
|
||||
exe 'hi '.group.' ctermbg='.s:Rgb2xterm(a:clr)
|
||||
endif
|
||||
return 23
|
||||
endfunction
|
||||
|
||||
function! s:PreviewCSSColorInLine(where)
|
||||
" TODO use cssColor matchdata
|
||||
let foundcolor = matchstr( getline(a:where), '#[0-9A-Fa-f]\{3,6\}\>' )
|
||||
let color = ''
|
||||
if foundcolor != ''
|
||||
if foundcolor =~ '#\x\{6}$'
|
||||
let color = foundcolor
|
||||
elseif foundcolor =~ '#\x\{3}$'
|
||||
let color = substitute(foundcolor, '\(\x\)\(\x\)\(\x\)', '\1\1\2\2\3\3', '')
|
||||
else
|
||||
let color = ''
|
||||
endif
|
||||
if color != ''
|
||||
return s:SetMatcher(color,foundcolor)
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if !exists("main_syntax")
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
let main_syntax = 'css'
|
||||
endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn keyword cssTagName abbr acronym address applet area a b base
|
||||
syn keyword cssTagName basefont bdo big blockquote body br button
|
||||
syn keyword cssTagName caption center cite code col colgroup dd del
|
||||
syn keyword cssTagName dfn dir div dl dt em fieldset font form frame
|
||||
syn keyword cssTagName frameset h1 h2 h3 h4 h5 h6 head hr html img i
|
||||
syn keyword cssTagName iframe img input ins isindex kbd label legend li
|
||||
syn keyword cssTagName link map menu meta noframes noscript ol optgroup
|
||||
syn keyword cssTagName option p param pre q s samp script select small
|
||||
syn keyword cssTagName span strike strong style sub sup tbody td
|
||||
syn keyword cssTagName textarea tfoot th thead title tr tt ul u var
|
||||
syn match cssTagName "\<table\>"
|
||||
syn match cssTagName "\*"
|
||||
|
||||
syn match cssTagName "@page\>" nextgroup=cssDefinition
|
||||
|
||||
syn match cssSelectorOp "[+>.]"
|
||||
syn match cssSelectorOp2 "[~|]\?=" contained
|
||||
syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" transparent contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
|
||||
|
||||
try
|
||||
syn match cssIdentifier "#[A-Za-z<>-<2D>_@][A-Za-z<>-<2D>0-9_@-]*"
|
||||
catch /^.*/
|
||||
syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
|
||||
endtry
|
||||
|
||||
|
||||
syn match cssMedia "@media\>" nextgroup=cssMediaType skipwhite skipnl
|
||||
syn keyword cssMediaType contained screen print aural braile embosed handheld projection ty tv all nextgroup=cssMediaComma,cssMediaBlock skipwhite skipnl
|
||||
syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
|
||||
syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssError,cssComment,cssDefinition,cssURL,cssUnicodeEscape,cssIdentifier
|
||||
|
||||
syn match cssValueInteger contained "[-+]\=\d\+"
|
||||
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\="
|
||||
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\)"
|
||||
syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)"
|
||||
syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)"
|
||||
syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)"
|
||||
|
||||
syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl
|
||||
syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssFontProp,cssFontAttr,cssCommonAttr,cssStringQ,cssStringQQ,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssUnicodeRange,cssFontDescriptorAttr
|
||||
syn match cssFontDescriptorProp contained "\<\(unicode-range\|unit-per-em\|panose-1\|cap-height\|x-height\|definition-src\)\>"
|
||||
syn keyword cssFontDescriptorProp contained src stemv stemh slope ascent descent widths bbox baseline centerline mathline topline
|
||||
syn keyword cssFontDescriptorAttr contained all
|
||||
syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend
|
||||
syn match cssUnicodeRange contained "U+[0-9A-Fa-f?]\+"
|
||||
syn match cssUnicodeRange contained "U+\x\+-\x\+"
|
||||
|
||||
syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow
|
||||
" FIXME: These are actually case-insentivie too, but (a) specs recommend using
|
||||
" mixed-case (b) it's hard to highlight the word `Background' correctly in
|
||||
" all situations
|
||||
syn case match
|
||||
syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background
|
||||
syn case ignore
|
||||
syn match cssColor contained "\<transparent\>"
|
||||
syn match cssColor contained "\<white\>"
|
||||
syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>"
|
||||
syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>"
|
||||
"syn match cssColor contained "\<rgb\s*(\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*)"
|
||||
syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\)\s*(" end=")" oneline keepend
|
||||
|
||||
syn match cssImportant contained "!\s*important\>"
|
||||
|
||||
syn keyword cssCommonAttr contained auto none inherit
|
||||
syn keyword cssCommonAttr contained top bottom
|
||||
syn keyword cssCommonAttr contained medium normal
|
||||
|
||||
syn match cssFontProp contained "\<font\>\(-\(family\|style\|variant\|weight\|size\(-adjust\)\=\|stretch\)\>\)\="
|
||||
syn match cssFontAttr contained "\<\(sans-\)\=\<serif\>"
|
||||
syn match cssFontAttr contained "\<small\>\(-\(caps\|caption\)\>\)\="
|
||||
syn match cssFontAttr contained "\<x\{1,2\}-\(large\|small\)\>"
|
||||
syn match cssFontAttr contained "\<message-box\>"
|
||||
syn match cssFontAttr contained "\<status-bar\>"
|
||||
syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\|status-bar\)-\)\=\(condensed\|expanded\)\>"
|
||||
syn keyword cssFontAttr contained cursive fantasy monospace italic oblique
|
||||
syn keyword cssFontAttr contained bold bolder lighter larger smaller
|
||||
syn keyword cssFontAttr contained icon menu
|
||||
syn match cssFontAttr contained "\<caption\>"
|
||||
syn keyword cssFontAttr contained large smaller larger
|
||||
syn keyword cssFontAttr contained narrower wider
|
||||
|
||||
syn keyword cssColorProp contained color
|
||||
syn match cssColorProp contained "\<background\(-\(color\|image\|attachment\|position\)\)\="
|
||||
syn keyword cssColorAttr contained center scroll fixed
|
||||
syn match cssColorAttr contained "\<repeat\(-[xy]\)\=\>"
|
||||
syn match cssColorAttr contained "\<no-repeat\>"
|
||||
|
||||
syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
|
||||
syn match cssTextAttr contained "\<line-through\>"
|
||||
syn match cssTextAttr contained "\<text-indent\>"
|
||||
syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
|
||||
syn keyword cssTextAttr contained underline overline blink sub super middle
|
||||
syn keyword cssTextAttr contained capitalize uppercase lowercase center justify baseline sub super
|
||||
|
||||
syn match cssBoxProp contained "\<\(margin\|padding\|border\)\(-\(top\|right\|bottom\|left\)\)\=\>"
|
||||
syn match cssBoxProp contained "\<border-\(\(\(top\|right\|bottom\|left\)-\)\=\(width\|color\|style\)\)\=\>"
|
||||
syn match cssBoxProp contained "\<\(width\|z-index\)\>"
|
||||
syn match cssBoxProp contained "\<\(min\|max\)-\(width\|height\)\>"
|
||||
syn keyword cssBoxProp contained width height float clear overflow clip visibility
|
||||
syn keyword cssBoxAttr contained thin thick both
|
||||
syn keyword cssBoxAttr contained dotted dashed solid double groove ridge inset outset
|
||||
syn keyword cssBoxAttr contained hidden visible scroll collapse
|
||||
|
||||
syn keyword cssGeneratedContentProp contained content quotes
|
||||
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
|
||||
syn match cssGeneratedContentProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
|
||||
syn match cssAuralAttr contained "\<lower\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
|
||||
syn keyword cssGeneratedContentAttr contained disc circle square hebrew armenian georgian
|
||||
syn keyword cssGeneratedContentAttr contained inside outside
|
||||
|
||||
syn match cssPagingProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
|
||||
syn keyword cssPagingProp contained size marks inside orphans widows
|
||||
syn keyword cssPagingAttr contained landscape portrait crop cross always avoid
|
||||
|
||||
syn keyword cssUIProp contained cursor
|
||||
syn match cssUIProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
|
||||
syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
|
||||
syn keyword cssUIAttr contained default crosshair pointer move wait help
|
||||
syn keyword cssUIAttr contained thin thick
|
||||
syn keyword cssUIAttr contained dotted dashed solid double groove ridge inset outset
|
||||
syn keyword cssUIAttr contained invert
|
||||
|
||||
syn match cssRenderAttr contained "\<marker\>"
|
||||
syn match cssRenderProp contained "\<\(display\|marker-offset\|unicode-bidi\|white-space\|list-item\|run-in\|inline-table\)\>"
|
||||
syn keyword cssRenderProp contained position top bottom direction
|
||||
syn match cssRenderProp contained "\<\(left\|right\)\>"
|
||||
syn keyword cssRenderAttr contained block inline compact
|
||||
syn match cssRenderAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
|
||||
syn keyword cssRenderAttr contained static relative absolute fixed
|
||||
syn keyword cssRenderAttr contained ltr rtl embed bidi-override pre nowrap
|
||||
syn match cssRenderAttr contained "\<bidi-override\>"
|
||||
|
||||
|
||||
syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
|
||||
syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numerals\)\)\=\)\>"
|
||||
syn keyword cssAuralProp contained volume during azimuth elevation stress richness
|
||||
syn match cssAuralAttr contained "\<\(x-\)\=\(soft\|loud\)\>"
|
||||
syn keyword cssAuralAttr contained silent
|
||||
syn match cssAuralAttr contained "\<spell-out\>"
|
||||
syn keyword cssAuralAttr contained non mix
|
||||
syn match cssAuralAttr contained "\<\(left\|right\)-side\>"
|
||||
syn match cssAuralAttr contained "\<\(far\|center\)-\(left\|center\|right\)\>"
|
||||
syn keyword cssAuralAttr contained leftwards rightwards behind
|
||||
syn keyword cssAuralAttr contained below level above higher
|
||||
syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\)\>"
|
||||
syn keyword cssAuralAttr contained faster slower
|
||||
syn keyword cssAuralAttr contained male female child code digits continuous
|
||||
|
||||
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\|speak-header\)\>"
|
||||
syn keyword cssTableAttr contained fixed collapse separate show hide once always
|
||||
|
||||
" FIXME: This allows cssMediaBlock before the semicolon, which is wrong.
|
||||
syn region cssInclude start="@import" end=";" contains=cssComment,cssURL,cssUnicodeEscape,cssMediaType
|
||||
syn match cssBraces contained "[{}]"
|
||||
syn match cssError contained "{@<>"
|
||||
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape
|
||||
syn match cssBraceError "}"
|
||||
|
||||
syn match cssPseudoClass ":\S*" contains=cssPseudoClassId,cssUnicodeEscape
|
||||
syn keyword cssPseudoClassId contained link visited active hover focus before after left right
|
||||
syn match cssPseudoClassId contained "\<first\(-\(line\|letter\|child\)\)\=\>"
|
||||
syn region cssPseudoClassLang matchgroup=cssPseudoClassId start=":lang(" end=")" oneline
|
||||
|
||||
syn region cssComment start="/\*" end="\*/" contains=@Spell
|
||||
|
||||
syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
|
||||
syn match cssSpecialCharQQ +\\"+ contained
|
||||
syn match cssSpecialCharQ +\\'+ contained
|
||||
syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
|
||||
syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
|
||||
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
|
||||
|
||||
if main_syntax == "css"
|
||||
syn sync minlines=10
|
||||
endif
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_css_syn_inits")
|
||||
if version < 508
|
||||
let did_css_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink cssComment Comment
|
||||
HiLink cssTagName Statement
|
||||
HiLink cssSelectorOp Special
|
||||
HiLink cssSelectorOp2 Special
|
||||
HiLink cssFontProp StorageClass
|
||||
HiLink cssColorProp StorageClass
|
||||
HiLink cssTextProp StorageClass
|
||||
HiLink cssBoxProp StorageClass
|
||||
HiLink cssRenderProp StorageClass
|
||||
HiLink cssAuralProp StorageClass
|
||||
HiLink cssRenderProp StorageClass
|
||||
HiLink cssGeneratedContentProp StorageClass
|
||||
HiLink cssPagingProp StorageClass
|
||||
HiLink cssTableProp StorageClass
|
||||
HiLink cssUIProp StorageClass
|
||||
HiLink cssFontAttr Type
|
||||
HiLink cssColorAttr Type
|
||||
HiLink cssTextAttr Type
|
||||
HiLink cssBoxAttr Type
|
||||
HiLink cssRenderAttr Type
|
||||
HiLink cssAuralAttr Type
|
||||
HiLink cssGeneratedContentAttr Type
|
||||
HiLink cssPagingAttr Type
|
||||
HiLink cssTableAttr Type
|
||||
HiLink cssUIAttr Type
|
||||
HiLink cssCommonAttr Type
|
||||
HiLink cssPseudoClassId PreProc
|
||||
HiLink cssPseudoClassLang Constant
|
||||
HiLink cssValueLength Number
|
||||
HiLink cssValueInteger Number
|
||||
HiLink cssValueNumber Number
|
||||
HiLink cssValueAngle Number
|
||||
HiLink cssValueTime Number
|
||||
HiLink cssValueFrequency Number
|
||||
HiLink cssFunction Constant
|
||||
HiLink cssURL String
|
||||
HiLink cssFunctionName Function
|
||||
HiLink cssColor Constant
|
||||
HiLink cssIdentifier Function
|
||||
HiLink cssInclude Include
|
||||
HiLink cssImportant Special
|
||||
HiLink cssBraces Function
|
||||
HiLink cssBraceError Error
|
||||
HiLink cssError Error
|
||||
HiLink cssInclude Include
|
||||
HiLink cssUnicodeEscape Special
|
||||
HiLink cssStringQQ String
|
||||
HiLink cssStringQ String
|
||||
HiLink cssMedia Special
|
||||
HiLink cssMediaType Special
|
||||
HiLink cssMediaComma Normal
|
||||
HiLink cssFontDescriptor Special
|
||||
HiLink cssFontDescriptorFunction Constant
|
||||
HiLink cssFontDescriptorProp StorageClass
|
||||
HiLink cssFontDescriptorAttr Type
|
||||
HiLink cssUnicodeRange Constant
|
||||
HiLink cssClassName Function
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
" <20><><EFBFBD>ǵ<EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD><EFBFBD>256ɫ<36>£<EFBFBD><C2A3><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:set t_Co=256
|
||||
if has("gui_running") || &t_Co==256
|
||||
" HACK modify cssDefinition to add @cssColors to its contains
|
||||
redir => s:olddef
|
||||
silent! syn list cssDefinition
|
||||
redir END
|
||||
if s:olddef != ''
|
||||
let s:b = strridx(s:olddef,'matchgroup')
|
||||
if s:b != -1
|
||||
exe 'syn region cssDefinition '.strpart(s:olddef,s:b).',@cssColors'
|
||||
endif
|
||||
endif
|
||||
|
||||
" w3c Colors
|
||||
let i = s:SetNamedColor('#800000', 'maroon')
|
||||
let i = s:SetNamedColor('#ff0000', 'red')
|
||||
let i = s:SetNamedColor('#ffA500', 'orange')
|
||||
let i = s:SetNamedColor('#ffff00', 'yellow')
|
||||
let i = s:SetNamedColor('#808000', 'olive')
|
||||
let i = s:SetNamedColor('#800080', 'purple')
|
||||
let i = s:SetNamedColor('#ff00ff', 'fuchsia')
|
||||
let i = s:SetNamedColor('#ffffff', 'white')
|
||||
let i = s:SetNamedColor('#00ff00', 'lime')
|
||||
let i = s:SetNamedColor('#008000', 'green')
|
||||
let i = s:SetNamedColor('#000080', 'navy')
|
||||
let i = s:SetNamedColor('#0000ff', 'blue')
|
||||
let i = s:SetNamedColor('#00ffff', 'aqua')
|
||||
let i = s:SetNamedColor('#008080', 'teal')
|
||||
let i = s:SetNamedColor('#000000', 'black')
|
||||
let i = s:SetNamedColor('#c0c0c0', 'silver')
|
||||
let i = s:SetNamedColor('#808080', 'gray')
|
||||
|
||||
" extra colors
|
||||
let i = s:SetNamedColor('#F0F8FF','AliceBlue')
|
||||
let i = s:SetNamedColor('#FAEBD7','AntiqueWhite')
|
||||
let i = s:SetNamedColor('#7FFFD4','Aquamarine')
|
||||
let i = s:SetNamedColor('#F0FFFF','Azure')
|
||||
let i = s:SetNamedColor('#F5F5DC','Beige')
|
||||
let i = s:SetNamedColor('#FFE4C4','Bisque')
|
||||
let i = s:SetNamedColor('#FFEBCD','BlanchedAlmond')
|
||||
let i = s:SetNamedColor('#8A2BE2','BlueViolet')
|
||||
let i = s:SetNamedColor('#A52A2A','Brown')
|
||||
let i = s:SetNamedColor('#DEB887','BurlyWood')
|
||||
let i = s:SetNamedColor('#5F9EA0','CadetBlue')
|
||||
let i = s:SetNamedColor('#7FFF00','Chartreuse')
|
||||
let i = s:SetNamedColor('#D2691E','Chocolate')
|
||||
let i = s:SetNamedColor('#FF7F50','Coral')
|
||||
let i = s:SetNamedColor('#6495ED','CornflowerBlue')
|
||||
let i = s:SetNamedColor('#FFF8DC','Cornsilk')
|
||||
let i = s:SetNamedColor('#DC143C','Crimson')
|
||||
let i = s:SetNamedColor('#00FFFF','Cyan')
|
||||
let i = s:SetNamedColor('#00008B','DarkBlue')
|
||||
let i = s:SetNamedColor('#008B8B','DarkCyan')
|
||||
let i = s:SetNamedColor('#B8860B','DarkGoldenRod')
|
||||
let i = s:SetNamedColor('#A9A9A9','DarkGray')
|
||||
let i = s:SetNamedColor('#A9A9A9','DarkGrey')
|
||||
let i = s:SetNamedColor('#006400','DarkGreen')
|
||||
let i = s:SetNamedColor('#BDB76B','DarkKhaki')
|
||||
let i = s:SetNamedColor('#8B008B','DarkMagenta')
|
||||
let i = s:SetNamedColor('#556B2F','DarkOliveGreen')
|
||||
let i = s:SetNamedColor('#FF8C00','Darkorange')
|
||||
let i = s:SetNamedColor('#9932CC','DarkOrchid')
|
||||
let i = s:SetNamedColor('#8B0000','DarkRed')
|
||||
let i = s:SetNamedColor('#E9967A','DarkSalmon')
|
||||
let i = s:SetNamedColor('#8FBC8F','DarkSeaGreen')
|
||||
let i = s:SetNamedColor('#483D8B','DarkSlateBlue')
|
||||
let i = s:SetNamedColor('#2F4F4F','DarkSlateGray')
|
||||
let i = s:SetNamedColor('#2F4F4F','DarkSlateGrey')
|
||||
let i = s:SetNamedColor('#00CED1','DarkTurquoise')
|
||||
let i = s:SetNamedColor('#9400D3','DarkViolet')
|
||||
let i = s:SetNamedColor('#FF1493','DeepPink')
|
||||
let i = s:SetNamedColor('#00BFFF','DeepSkyBlue')
|
||||
let i = s:SetNamedColor('#696969','DimGray')
|
||||
let i = s:SetNamedColor('#696969','DimGrey')
|
||||
let i = s:SetNamedColor('#1E90FF','DodgerBlue')
|
||||
let i = s:SetNamedColor('#B22222','FireBrick')
|
||||
let i = s:SetNamedColor('#FFFAF0','FloralWhite')
|
||||
let i = s:SetNamedColor('#228B22','ForestGreen')
|
||||
let i = s:SetNamedColor('#DCDCDC','Gainsboro')
|
||||
let i = s:SetNamedColor('#F8F8FF','GhostWhite')
|
||||
let i = s:SetNamedColor('#FFD700','Gold')
|
||||
let i = s:SetNamedColor('#DAA520','GoldenRod')
|
||||
let i = s:SetNamedColor('#808080','Grey')
|
||||
let i = s:SetNamedColor('#ADFF2F','GreenYellow')
|
||||
let i = s:SetNamedColor('#F0FFF0','HoneyDew')
|
||||
let i = s:SetNamedColor('#FF69B4','HotPink')
|
||||
let i = s:SetNamedColor('#CD5C5C','IndianRed')
|
||||
let i = s:SetNamedColor('#4B0082','Indigo')
|
||||
let i = s:SetNamedColor('#FFFFF0','Ivory')
|
||||
let i = s:SetNamedColor('#F0E68C','Khaki')
|
||||
let i = s:SetNamedColor('#E6E6FA','Lavender')
|
||||
let i = s:SetNamedColor('#FFF0F5','LavenderBlush')
|
||||
let i = s:SetNamedColor('#7CFC00','LawnGreen')
|
||||
let i = s:SetNamedColor('#FFFACD','LemonChiffon')
|
||||
let i = s:SetNamedColor('#ADD8E6','LightBlue')
|
||||
let i = s:SetNamedColor('#F08080','LightCoral')
|
||||
let i = s:SetNamedColor('#E0FFFF','LightCyan')
|
||||
let i = s:SetNamedColor('#FAFAD2','LightGoldenRodYellow')
|
||||
let i = s:SetNamedColor('#D3D3D3','LightGray')
|
||||
let i = s:SetNamedColor('#D3D3D3','LightGrey')
|
||||
let i = s:SetNamedColor('#90EE90','LightGreen')
|
||||
let i = s:SetNamedColor('#FFB6C1','LightPink')
|
||||
let i = s:SetNamedColor('#FFA07A','LightSalmon')
|
||||
let i = s:SetNamedColor('#20B2AA','LightSeaGreen')
|
||||
let i = s:SetNamedColor('#87CEFA','LightSkyBlue')
|
||||
let i = s:SetNamedColor('#778899','LightSlateGray')
|
||||
let i = s:SetNamedColor('#778899','LightSlateGrey')
|
||||
let i = s:SetNamedColor('#B0C4DE','LightSteelBlue')
|
||||
let i = s:SetNamedColor('#FFFFE0','LightYellow')
|
||||
let i = s:SetNamedColor('#32CD32','LimeGreen')
|
||||
let i = s:SetNamedColor('#FAF0E6','Linen')
|
||||
let i = s:SetNamedColor('#FF00FF','Magenta')
|
||||
let i = s:SetNamedColor('#66CDAA','MediumAquaMarine')
|
||||
let i = s:SetNamedColor('#0000CD','MediumBlue')
|
||||
let i = s:SetNamedColor('#BA55D3','MediumOrchid')
|
||||
let i = s:SetNamedColor('#9370D8','MediumPurple')
|
||||
let i = s:SetNamedColor('#3CB371','MediumSeaGreen')
|
||||
let i = s:SetNamedColor('#7B68EE','MediumSlateBlue')
|
||||
let i = s:SetNamedColor('#00FA9A','MediumSpringGreen')
|
||||
let i = s:SetNamedColor('#48D1CC','MediumTurquoise')
|
||||
let i = s:SetNamedColor('#C71585','MediumVioletRed')
|
||||
let i = s:SetNamedColor('#191970','MidnightBlue')
|
||||
let i = s:SetNamedColor('#F5FFFA','MintCream')
|
||||
let i = s:SetNamedColor('#FFE4E1','MistyRose')
|
||||
let i = s:SetNamedColor('#FFE4B5','Moccasin')
|
||||
let i = s:SetNamedColor('#FFDEAD','NavajoWhite')
|
||||
let i = s:SetNamedColor('#FDF5E6','OldLace')
|
||||
let i = s:SetNamedColor('#6B8E23','OliveDrab')
|
||||
let i = s:SetNamedColor('#FF4500','OrangeRed')
|
||||
let i = s:SetNamedColor('#DA70D6','Orchid')
|
||||
let i = s:SetNamedColor('#EEE8AA','PaleGoldenRod')
|
||||
let i = s:SetNamedColor('#98FB98','PaleGreen')
|
||||
let i = s:SetNamedColor('#AFEEEE','PaleTurquoise')
|
||||
let i = s:SetNamedColor('#D87093','PaleVioletRed')
|
||||
let i = s:SetNamedColor('#FFEFD5','PapayaWhip')
|
||||
let i = s:SetNamedColor('#FFDAB9','PeachPuff')
|
||||
let i = s:SetNamedColor('#CD853F','Peru')
|
||||
let i = s:SetNamedColor('#FFC0CB','Pink')
|
||||
let i = s:SetNamedColor('#DDA0DD','Plum')
|
||||
let i = s:SetNamedColor('#B0E0E6','PowderBlue')
|
||||
let i = s:SetNamedColor('#BC8F8F','RosyBrown')
|
||||
let i = s:SetNamedColor('#4169E1','RoyalBlue')
|
||||
let i = s:SetNamedColor('#8B4513','SaddleBrown')
|
||||
let i = s:SetNamedColor('#FA8072','Salmon')
|
||||
let i = s:SetNamedColor('#F4A460','SandyBrown')
|
||||
let i = s:SetNamedColor('#2E8B57','SeaGreen')
|
||||
let i = s:SetNamedColor('#FFF5EE','SeaShell')
|
||||
let i = s:SetNamedColor('#A0522D','Sienna')
|
||||
let i = s:SetNamedColor('#87CEEB','SkyBlue')
|
||||
let i = s:SetNamedColor('#6A5ACD','SlateBlue')
|
||||
let i = s:SetNamedColor('#708090','SlateGray')
|
||||
let i = s:SetNamedColor('#708090','SlateGrey')
|
||||
let i = s:SetNamedColor('#FFFAFA','Snow')
|
||||
let i = s:SetNamedColor('#00FF7F','SpringGreen')
|
||||
let i = s:SetNamedColor('#4682B4','SteelBlue')
|
||||
let i = s:SetNamedColor('#D2B48C','Tan')
|
||||
let i = s:SetNamedColor('#D8BFD8','Thistle')
|
||||
let i = s:SetNamedColor('#FF6347','Tomato')
|
||||
let i = s:SetNamedColor('#40E0D0','Turquoise')
|
||||
let i = s:SetNamedColor('#EE82EE','Violet')
|
||||
let i = s:SetNamedColor('#F5DEB3','Wheat')
|
||||
let i = s:SetNamedColor('#F5F5F5','WhiteSmoke')
|
||||
let i = s:SetNamedColor('#9ACD32','YellowGreen')
|
||||
|
||||
|
||||
|
||||
let i = 1
|
||||
while i <= line("$")
|
||||
call s:PreviewCSSColorInLine(i)
|
||||
let i = i+1
|
||||
endwhile
|
||||
unlet i
|
||||
|
||||
autocmd CursorHold * silent call s:PreviewCSSColorInLine('.')
|
||||
autocmd CursorHoldI * silent call s:PreviewCSSColorInLine('.')
|
||||
set ut=100
|
||||
endif " has("gui_running")
|
||||
|
||||
let b:current_syntax = "css"
|
||||
|
||||
if main_syntax == 'css'
|
||||
unlet main_syntax
|
||||
endif
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
86
syntax/mako.vim
Normal file
86
syntax/mako.vim
Normal file
@@ -0,0 +1,86 @@
|
||||
" Vim syntax file
|
||||
" Language: Mako
|
||||
" Maintainer: Armin Ronacher <armin.ronacher@active-4.com>
|
||||
" URL: http://lucumr.pocoo.org/
|
||||
" Last Change: 2008 September 12
|
||||
" Version: 0.6.1
|
||||
"
|
||||
" Thanks to Brine Rue <brian@lolapps.com> who noticed a bug in the
|
||||
" delimiter handling.
|
||||
"
|
||||
" Known Limitations
|
||||
" the <%text> block does not have correct attributes
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
if !exists("main_syntax")
|
||||
let main_syntax = "html"
|
||||
endif
|
||||
|
||||
"Source the html syntax file
|
||||
ru! syntax/html.vim
|
||||
unlet b:current_syntax
|
||||
|
||||
"Put the python syntax file in @pythonTop
|
||||
syn include @pythonTop syntax/python.vim
|
||||
|
||||
" End keywords
|
||||
syn keyword makoEnd contained endfor endwhile endif endtry enddef
|
||||
|
||||
" Block rules
|
||||
syn region makoLine matchgroup=makoDelim start=#^\s*%# end=#$# keepend contains=@pythonTop,makoEnd
|
||||
syn region makoBlock matchgroup=makoDelim start=#<%!\?# end=#%># keepend contains=@pythonTop,makoEnd
|
||||
|
||||
" Variables
|
||||
syn region makoNested start="{" end="}" transparent display contained contains=makoNested,@pythonTop
|
||||
syn region makoVariable matchgroup=makoDelim start=#\${# end=#}# contains=makoNested,@pythonTop
|
||||
|
||||
" Comments
|
||||
syn region makoComment start="^\s*##" end="$"
|
||||
syn region makoDocComment matchgroup=makoDelim start="<%doc>" end="</%doc>" keepend
|
||||
|
||||
" Literal Blocks
|
||||
syn region makoText matchgroup=makoDelim start="<%text[^>]*>" end="</%text>"
|
||||
|
||||
" Attribute Sublexing
|
||||
syn match makoAttributeKey containedin=makoTag contained "[a-zA-Z_][a-zA-Z0-9_]*="
|
||||
syn region makoAttributeValue containedin=makoTag contained start=/"/ skip=/\\"/ end=/"/
|
||||
syn region makoAttributeValue containedin=MakoTag contained start=/'/ skip=/\\'/ end=/'/
|
||||
|
||||
" Tags
|
||||
syn region makoTag matchgroup=makoDelim start="<%\(def\|call\|page\|include\|namespace\|inherit\)\>" end="/\?>"
|
||||
syn match makoDelim "</%\(def\|call\|namespace\)>"
|
||||
|
||||
" Newline Escapes
|
||||
syn match makoEscape /\\$/
|
||||
|
||||
" Default highlighting links
|
||||
if version >= 508 || !exists("did_mako_syn_inits")
|
||||
if version < 508
|
||||
let did_mako_syn_inits = 1
|
||||
com -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
com -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink makoDocComment makoComment
|
||||
HiLink makoDefEnd makoDelim
|
||||
|
||||
HiLink makoAttributeKey Type
|
||||
HiLink makoAttributeValue String
|
||||
HiLink makoText Normal
|
||||
HiLink makoDelim Preproc
|
||||
HiLink makoEnd Keyword
|
||||
HiLink makoComment Comment
|
||||
HiLink makoEscape Special
|
||||
|
||||
delc HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "eruby"
|
||||
71
syntax/pd_opl.vim
Normal file
71
syntax/pd_opl.vim
Normal file
@@ -0,0 +1,71 @@
|
||||
" Vim syntax file
|
||||
" Language: OpenUI/OPL
|
||||
" Maintainer: Roman 'gryf' Dobosz
|
||||
" $Id: opl.vim,v 1.0 2011/01/09 17:34:11 vimboss Exp $
|
||||
|
||||
" Open UI Language
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn region OPLString start=+"+ end=+"+ contains=@Spell
|
||||
syn region OPLSString start=+'+ end=+'+ contains=@Spell
|
||||
syn match OPLNumber "\<\d\+\>" display
|
||||
syn match OPLFloat "\<\d\+\.\d\+\>"
|
||||
"syn match OPLFloat "\.\d\+\>"
|
||||
|
||||
syn keyword OPLCommentTodo TODO FIXME XXX TBD
|
||||
syn match OPLLineComment "\/\/.*" contains=@Spell,OPLCommentTodo
|
||||
syn region OPLComment start="/\*" end="\*/" contains=@Spell,OPLCommentTodo
|
||||
|
||||
syn keyword OPLConditional if else when goto
|
||||
syn keyword OPLRepeat for while
|
||||
syn keyword OPLConstant TRUE FALSE true false NULL
|
||||
|
||||
syn keyword OPLType OuiBooleanT OuiCharT OuiDecimalT OuiFloatT OuiIntegerT
|
||||
syn keyword OPLType OuiLongT OuiPointerT OuiShortT OuiStringT
|
||||
syn keyword OPLType array bool char const constant enum float inst
|
||||
syn keyword OPLType int long message record short string
|
||||
|
||||
syn keyword OPLStatement class of return const var module on message
|
||||
syn keyword OPLStatement initially instance private public type var
|
||||
syn keyword OPLStatement variable when while
|
||||
|
||||
syn keyword OPLOperator and in not div
|
||||
|
||||
syn keyword OPLStatement class function nextgroup=OPLFunction skipwhite
|
||||
syn match OPLFunction "[a-zA-Z_][a-zA-Z0-9_]*" display contained
|
||||
syn match OPLSpecial "::\~\?\zs\h\w*\ze([^)]*\()\s*\(const\)\?\)\?"
|
||||
syn match OPLKeyword "\^\w*\~\?"
|
||||
|
||||
" Highlight Class and Function names
|
||||
syn match OPLCustomParen "(" "contains=Paren,cCppParen
|
||||
syn match OPLCustomFunction "\w\+\s*(" contains=OPLCustomParen
|
||||
"syn match OPLCustomScope "::"
|
||||
"syn match OPLCustomClass "\w\+\s*::" contains=OPLCustomScope
|
||||
|
||||
" Folding
|
||||
syn region OPLFold start="{" end="}" transparent fold
|
||||
"syn sync fromstart
|
||||
setlocal foldmethod=syntax
|
||||
setlocal nofoldenable
|
||||
|
||||
" Define the default highliting
|
||||
hi def link OPLComment Comment
|
||||
hi def link OPLLineComment Comment
|
||||
hi def link OPLNumber Number
|
||||
hi def link OPLFloat Float
|
||||
hi def link OPLFunction Function
|
||||
hi def link OPLConstant Constant
|
||||
hi def link OPLStatement Statement
|
||||
hi def link OPLString String
|
||||
hi def link OPLSString String
|
||||
hi def link OPLType Type
|
||||
hi def link OPLConditional Conditional
|
||||
hi def link OPLCommentTodo Todo
|
||||
hi def link OPLSpecial Special
|
||||
hi def link OPLKeyword Keyword
|
||||
hi def link OPLCustomFunction Special
|
||||
|
||||
let b:current_syntax = "opl"
|
||||
" vim: ts=8
|
||||
136
syntax/pentadactyl.vim
Normal file
136
syntax/pentadactyl.vim
Normal file
@@ -0,0 +1,136 @@
|
||||
|
||||
" Vim syntax file
|
||||
" Language: Pentadactyl configuration file
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
|
||||
" TODO: make this pentadactyl specific - shared dactyl config?
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn include @javascriptTop syntax/javascript.vim
|
||||
unlet b:current_syntax
|
||||
|
||||
syn include @cssTop syntax/css.vim
|
||||
unlet b:current_syntax
|
||||
|
||||
syn match pentadactylCommandStart "\%(^\s*:\=\)\@<=" nextgroup=pentadactylCommand,pentadactylAutoCmd
|
||||
|
||||
syn keyword pentadactylCommand loadplugins lpl gr[oup] ! run Clistk[eys] Clk
|
||||
\ Cm[ap] Cno[remap] Cunm[ap] Ilistk[eys] Ilk Im[ap] Ino[remap] Iunm[ap]
|
||||
\ ab[breviate] addo[ns] ao au[tocmd] ba[ck] background bg bd[elete]
|
||||
\ blistk[eys] blk bm[ap] bma[rk] bmarks bno[remap] b[uffer] buffers files ls
|
||||
\ tabs bunm[ap] ca[bbreviate] caretlistk[eys] caretlk caretm[ap]
|
||||
\ caretno[remap] caretunm[ap] cd chd[ir] clistk[eys] clk cm[ap] cno[remap]
|
||||
\ colo[rscheme] com[mand] comp[letions] contexts cookies ck cuna[bbreviate]
|
||||
\ cunm[ap] delbm[arks] delc[ommand] delg[roup] delmac[ros] delm[arks]
|
||||
\ delqm[arks] dels[tyle] dia[log] dlc[lear] doautoa[ll] do[autocmd]
|
||||
\ downl[oads] dl ec[ho] echoe[rr] echom[sg] el[se] elsei[f] elif em[enu]
|
||||
\ en[dif] fi exe[cute] exit x exta[dd] extde[lete] extrm extd[isable]
|
||||
\ exte[nable] exto[ptions] extp[references] extr[ehash] extt[oggle]
|
||||
\ extu[pdate] feedkeys fk fini[sh] fo[rward] fw frameo[nly] ha[rdcopy]
|
||||
\ h[elp] helpa[ll] hi[ghlight] hist[ory] hs ia[bbreviate] if ilistk[eys] ilk
|
||||
\ im[ap] ino[remap] iuna[bbreviate] iunm[ap] javas[cript] js ju[mps]
|
||||
\ keepa[lt] let listc[ommands] lc listk[eys] lk listo[ptions] lo mac[ros]
|
||||
\ map ma[rk] marks mes[sages] messc[lear] mkp[entadactylrc] mks[yntax]
|
||||
\ mlistk[eys] mlk mm[ap] mno[remap] munm[ap] nlistk[eys] nlk nm[ap]
|
||||
\ nno[remap] noh[lfind] no[remap] norm[al] nunm[ap] olistk[eys] olk om[ap]
|
||||
\ ono[remap] o[pen] ounm[ap] pa[geinfo] pagest[yle] pas pin[tab]
|
||||
\ pref[erences] prefs pw[d] qma[rk] qmarks q[uit] quita[ll] qa[ll] redr[aw]
|
||||
\ reg[isters] reh[ash] re[load] reloada[ll] res[tart] runt[ime] sa[nitize]
|
||||
\ sav[eas] w[rite] sbcl[ose] scrip[tnames] se[t] setg[lobal] setl[ocal]
|
||||
\ sideb[ar] sb[ar] sbop[en] sil[ent] so[urce] st[op] stopa[ll] sty[le]
|
||||
\ styled[isable] styd[isable] stylee[nable] stye[nable] stylet[oggle]
|
||||
\ styt[oggle] tab taba[ttach] tabc[lose] tabde[tach] tabd[o] bufd[o]
|
||||
\ tabdu[plicate] tabl[ast] bl[ast] tabm[ove] tabn[ext] tn[ext] bn[ext]
|
||||
\ tabo[nly] tabopen t[open] tabnew tabp[revious] tp[revious] tabN[ext]
|
||||
\ tN[ext] bp[revious] bN[ext] tabr[ewind] tabfir[st] br[ewind] bf[irst] time
|
||||
\ tlistk[eys] tlk tm[ap] tno[remap] toolbarh[ide] tbh[ide] toolbars[how]
|
||||
\ tbs[how] toolbart[oggle] tbt[oggle] tunm[ap] una[bbreviate] u[ndo]
|
||||
\ undoa[ll] unl[et] unm[ap] unpin[tab] verb[ose] ve[rsion] vie[wsource]
|
||||
\ vlistk[eys] vlk vm[ap] vno[remap] vunm[ap] winc[lose] wc[lose] wind[ow]
|
||||
\ winon[ly] wino[pen] wo[pen] wqa[ll] wq xa[ll] y[ank] zo[om]
|
||||
\ contained
|
||||
|
||||
syn match pentadactylCommand "!" contained
|
||||
|
||||
syn keyword pentadactylAutoCmd au[tocmd] contained nextgroup=pentadactylAutoEventList skipwhite
|
||||
|
||||
syn keyword pentadactylAutoEvent BookmarkAdd BookmarkChange BookmarkRemove
|
||||
\ ColorScheme DOMLoad DownloadPost Fullscreen LocationChange PageLoadPre
|
||||
\ PageLoad PrivateMode Sanitize ShellCmdPost Enter LeavePre Leave
|
||||
\ contained
|
||||
|
||||
syn match pentadactylAutoEventList "\(\a\+,\)*\a\+" contained contains=pentadactylAutoEvent
|
||||
|
||||
syn region pentadactylSet matchgroup=pentadactylCommand start="\%(^\s*:\=\)\@<=\<\%(setl\%[ocal]\|setg\%[lobal]\|set\=\)\=\>"
|
||||
\ end="$" keepend oneline contains=pentadactylOption,pentadactylString
|
||||
|
||||
syn keyword pentadactylOption activate act altwildmode awim autocomplete au
|
||||
\ cdpath cd complete cpt cookieaccept ca cookielifetime cl cookies ck
|
||||
\ defsearch ds downloadsort dlsort dls editor encoding enc eventignore ei
|
||||
\ extendedhinttags eht fileencoding fenc findcase fc findflags ff
|
||||
\ followhints fh guioptions go helpfile hf hintinputs hin hintkeys hk
|
||||
\ hintmatching hm hinttags ht hinttimeout hto history hi iskeyword isk
|
||||
\ jumptags jt linenumbers ln loadplugins lpl mapleader ml maxitems messages
|
||||
\ msgs newtab nextpattern noscript-forbid nsf noscript-list nsl
|
||||
\ noscript-objects nso noscript-sites nss noscript-tempsites nst
|
||||
\ noscript-untrusted nsu pageinfo pa passkeys pk passunknown pu popups pps
|
||||
\ previouspattern runtimepath rtp sanitizeitems si sanitizeshutdown ss
|
||||
\ sanitizetimespan sts scroll scr scrollsteps scs scrolltime sct shell sh
|
||||
\ shellcmdflag shcf showmode smd showstatuslinks ssli showtabline stal
|
||||
\ spelllang spl strictfocus sf suggestengines timeoutlen tmol titlestring
|
||||
\ urlseparator urlsep us verbose vbs wildanchor wia wildcase wic wildignore
|
||||
\ wig wildmode wim wildsort wis wordseparators wsp yankshort ys
|
||||
\ contained nextgroup=pentadactylSetMod
|
||||
|
||||
let s:toggleOptions = ["banghist", "bh", "errorbells", "eb", "exrc", "ex",
|
||||
\ "fullscreen", "fs", "hlfind", "hlf", "incfind", "if", "insertmode", "im",
|
||||
\ "jsdebugger", "jsd", "more", "online", "private", "pornmode", "script",
|
||||
\ "timeout", "tmo", "usermode", "um", "visualbell", "vb"]
|
||||
execute 'syn match pentadactylOption "\<\%(no\|inv\)\=\%(' .
|
||||
\ join(s:toggleOptions, '\|') .
|
||||
\ '\)\>!\=" contained nextgroup=pentadactylSetMod'
|
||||
|
||||
syn match pentadactylSetMod "\%(\<[a-z_]\+\)\@<=&" contained
|
||||
|
||||
syn region pentadactylJavaScript start="\%(^\s*\%(javascript\|js\)\s\+\)\@<=" end="$" contains=@javascriptTop keepend oneline
|
||||
syn region pentadactylJavaScript matchgroup=pentadactylJavaScriptDelimiter
|
||||
\ start="\%(^\s*\%(javascript\|js\)\s\+\)\@<=<<\s*\z(\h\w*\)"hs=s+2 end="^\z1$" contains=@javascriptTop fold
|
||||
|
||||
let s:cssRegionStart = '\%(^\s*sty\%[le]!\=\s\+\%(-\%(n\|name\)\%(\s\+\|=\)\S\+\s\+\)\=[^-]\S\+\s\+\)\@<='
|
||||
execute 'syn region pentadactylCss start="' . s:cssRegionStart . '" end="$" contains=@cssTop keepend oneline'
|
||||
execute 'syn region pentadactylCss matchgroup=pentadactylCssDelimiter'
|
||||
\ 'start="' . s:cssRegionStart . '<<\s*\z(\h\w*\)"hs=s+2 end="^\z1$" contains=@cssTop fold'
|
||||
|
||||
syn match pentadactylNotation "<[0-9A-Za-z-]\+>"
|
||||
|
||||
syn keyword pentadactylTodo FIXME NOTE TODO XXX contained
|
||||
|
||||
syn region pentadactylString start="\z(["']\)" end="\z1" skip="\\\\\|\\\z1" oneline
|
||||
|
||||
syn match pentadactylComment +^\s*".*$+ contains=pentadactylTodo,@Spell
|
||||
|
||||
" NOTE: match vim.vim highlighting group names
|
||||
hi def link pentadactylAutoCmd pentadactylCommand
|
||||
hi def link pentadactylAutoEvent Type
|
||||
hi def link pentadactylCommand Statement
|
||||
hi def link pentadactylJavaScriptDelimiter Delimiter
|
||||
hi def link pentadactylCssDelimiter Delimiter
|
||||
hi def link pentadactylNotation Special
|
||||
hi def link pentadactylComment Comment
|
||||
hi def link pentadactylOption PreProc
|
||||
hi def link pentadactylSetMod pentadactylOption
|
||||
hi def link pentadactylString String
|
||||
hi def link pentadactylTodo Todo
|
||||
|
||||
let b:current_syntax = "pentadactyl"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: tw=130 et ts=4 sw=4:
|
||||
376
syntax/python.vim
Normal file
376
syntax/python.vim
Normal file
@@ -0,0 +1,376 @@
|
||||
" Vim syntax file
|
||||
" Language: Python
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/python/python.vim
|
||||
" Last Change: 2012-02-11
|
||||
" Filenames: *.py
|
||||
" Version: 2.6.7
|
||||
"
|
||||
" Based on python.vim (from Vim 6.1 distribution)
|
||||
" by Neil Schemenauer <nas at python dot ca>
|
||||
"
|
||||
" Thanks:
|
||||
"
|
||||
" Jeroen Ruigrok van der Werven
|
||||
" for the idea to highlight erroneous operators
|
||||
" Pedro Algarvio
|
||||
" for the patch to enable spell checking only for the right spots
|
||||
" (strings and comments)
|
||||
" John Eikenberry
|
||||
" for the patch fixing small typo
|
||||
" Caleb Adamantine
|
||||
" for the patch fixing highlighting for decorators
|
||||
" Andrea Riciputi
|
||||
" for the patch with new configuration options
|
||||
|
||||
"
|
||||
" Options:
|
||||
"
|
||||
" For set option do: let OPTION_NAME = 1
|
||||
" For clear option do: let OPTION_NAME = 0
|
||||
"
|
||||
" Option names:
|
||||
"
|
||||
" For highlight builtin functions and objects:
|
||||
" python_highlight_builtins
|
||||
"
|
||||
" For highlight builtin objects:
|
||||
" python_highlight_builtin_objs
|
||||
"
|
||||
" For highlight builtin funtions:
|
||||
" python_highlight_builtin_funcs
|
||||
"
|
||||
" For highlight standard exceptions:
|
||||
" python_highlight_exceptions
|
||||
"
|
||||
" For highlight string formatting:
|
||||
" python_highlight_string_formatting
|
||||
"
|
||||
" For highlight str.format syntax:
|
||||
" python_highlight_string_format
|
||||
"
|
||||
" For highlight string.Template syntax:
|
||||
" python_highlight_string_templates
|
||||
"
|
||||
" For highlight indentation errors:
|
||||
" python_highlight_indent_errors
|
||||
"
|
||||
" For highlight trailing spaces:
|
||||
" python_highlight_space_errors
|
||||
"
|
||||
" For highlight doc-tests:
|
||||
" python_highlight_doctests
|
||||
"
|
||||
" If you want all Python highlightings above:
|
||||
" python_highlight_all
|
||||
" (This option not override previously set options)
|
||||
"
|
||||
" For fast machines:
|
||||
" python_slow_sync
|
||||
"
|
||||
" For "print" builtin as function:
|
||||
" python_print_as_function
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists("python_highlight_all") && python_highlight_all != 0
|
||||
" Not override previously set options
|
||||
if !exists("python_highlight_builtins")
|
||||
if !exists("python_highlight_builtin_objs")
|
||||
let python_highlight_builtin_objs = 1
|
||||
endif
|
||||
if !exists("python_highlight_builtin_funcs")
|
||||
let python_highlight_builtin_funcs = 1
|
||||
endif
|
||||
endif
|
||||
if !exists("python_highlight_exceptions")
|
||||
let python_highlight_exceptions = 1
|
||||
endif
|
||||
if !exists("python_highlight_string_formatting")
|
||||
let python_highlight_string_formatting = 1
|
||||
endif
|
||||
if !exists("python_highlight_string_format")
|
||||
let python_highlight_string_format = 1
|
||||
endif
|
||||
if !exists("python_highlight_string_templates")
|
||||
let python_highlight_string_templates = 1
|
||||
endif
|
||||
if !exists("python_highlight_indent_errors")
|
||||
let python_highlight_indent_errors = 1
|
||||
endif
|
||||
if !exists("python_highlight_space_errors")
|
||||
let python_highlight_space_errors = 1
|
||||
endif
|
||||
if !exists("python_highlight_doctests")
|
||||
let python_highlight_doctests = 1
|
||||
endif
|
||||
endif
|
||||
|
||||
" Keywords
|
||||
syn keyword pythonStatement break continue del
|
||||
syn keyword pythonStatement exec return
|
||||
syn keyword pythonStatement pass raise
|
||||
syn keyword pythonStatement global assert
|
||||
syn keyword pythonStatement lambda yield
|
||||
syn keyword pythonStatement with
|
||||
syn keyword pythonStatement def class nextgroup=pythonFunction skipwhite
|
||||
syn match pythonFunction "[a-zA-Z_][a-zA-Z0-9_]*" display contained
|
||||
syn keyword pythonRepeat for while
|
||||
syn keyword pythonConditional if elif else
|
||||
syn keyword pythonPreCondit import from as
|
||||
syn keyword pythonException try except finally
|
||||
syn keyword pythonOperator and in is not or
|
||||
|
||||
if !exists("python_print_as_function") || python_print_as_function == 0
|
||||
syn keyword pythonStatement print
|
||||
endif
|
||||
|
||||
" Decorators (new in Python 2.4)
|
||||
" gryf: match also name of the decorator not only at sign.
|
||||
syn match pythonDecorator "@[a-zA-Z_][a-zA-Z0-9_]*" display nextgroup=pythonDottedName skipwhite
|
||||
"syn match pythonDecorator "@" display nextgroup=pythonDottedName skipwhite
|
||||
syn match pythonDottedName "[a-zA-Z_][a-zA-Z0-9_]*\(\.[a-zA-Z_][a-zA-Z0-9_]*\)*" display contained
|
||||
syn match pythonDot "\." display containedin=pythonDottedName
|
||||
|
||||
" Comments
|
||||
syn match pythonComment "#.*$" display contains=pythonTodo,@Spell
|
||||
syn match pythonRun "\%^#!.*$"
|
||||
syn match pythonCoding "\%^.*\(\n.*\)\?#.*coding[:=]\s*[0-9A-Za-z-_.]\+.*$"
|
||||
syn keyword pythonTodo TODO FIXME XXX contained
|
||||
|
||||
" Errors
|
||||
syn match pythonError "\<\d\+\D\+\>" display
|
||||
syn match pythonError "[$?]" display
|
||||
syn match pythonError "[&|]\{2,}" display
|
||||
syn match pythonError "[=]\{3,}" display
|
||||
|
||||
" TODO: Mixing spaces and tabs also may be used for pretty formatting multiline
|
||||
" statements. For now I don't know how to work around this.
|
||||
if exists("python_highlight_indent_errors") && python_highlight_indent_errors != 0
|
||||
syn match pythonIndentError "^\s*\( \t\|\t \)\s*\S"me=e-1 display
|
||||
endif
|
||||
|
||||
" Trailing space errors
|
||||
if exists("python_highlight_space_errors") && python_highlight_space_errors != 0
|
||||
syn match pythonSpaceError "\s\+$" display
|
||||
endif
|
||||
|
||||
" Strings
|
||||
syn region pythonString start=+[bB]\='+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonEscape,pythonEscapeError,@Spell
|
||||
syn region pythonString start=+[bB]\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonEscape,pythonEscapeError,@Spell
|
||||
syn region pythonString start=+[bB]\="""+ end=+"""+ keepend contains=pythonEscape,pythonEscapeError,pythonDocTest2,pythonSpaceError,@Spell
|
||||
syn region pythonString start=+[bB]\='''+ end=+'''+ keepend contains=pythonEscape,pythonEscapeError,pythonDocTest,pythonSpaceError,@Spell
|
||||
|
||||
syn match pythonEscape +\\[abfnrtv'"\\]+ display contained
|
||||
syn match pythonEscape "\\\o\o\=\o\=" display contained
|
||||
syn match pythonEscapeError "\\\o\{,2}[89]" display contained
|
||||
syn match pythonEscape "\\x\x\{2}" display contained
|
||||
syn match pythonEscapeError "\\x\x\=\X" display contained
|
||||
syn match pythonEscape "\\$"
|
||||
|
||||
" Unicode strings
|
||||
syn region pythonUniString start=+[uU]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,@Spell
|
||||
syn region pythonUniString start=+[uU]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,@Spell
|
||||
syn region pythonUniString start=+[uU]"""+ end=+"""+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,pythonDocTest2,pythonSpaceError,@Spell
|
||||
syn region pythonUniString start=+[uU]'''+ end=+'''+ keepend contains=pythonEscape,pythonUniEscape,pythonEscapeError,pythonUniEscapeError,pythonDocTest,pythonSpaceError,@Spell
|
||||
|
||||
syn match pythonUniEscape "\\u\x\{4}" display contained
|
||||
syn match pythonUniEscapeError "\\u\x\{,3}\X" display contained
|
||||
syn match pythonUniEscape "\\U\x\{8}" display contained
|
||||
syn match pythonUniEscapeError "\\U\x\{,7}\X" display contained
|
||||
syn match pythonUniEscape "\\N{[A-Z ]\+}" display contained
|
||||
syn match pythonUniEscapeError "\\N{[^A-Z ]\+}" display contained
|
||||
|
||||
" Raw strings
|
||||
syn region pythonRawString start=+[rR]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonRawEscape,@Spell
|
||||
syn region pythonRawString start=+[rR]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonRawEscape,@Spell
|
||||
syn region pythonRawString start=+[rR]"""+ end=+"""+ keepend contains=pythonDocTest2,pythonSpaceError,@Spell
|
||||
syn region pythonRawString start=+[rR]'''+ end=+'''+ keepend contains=pythonDocTest,pythonSpaceError,@Spell
|
||||
|
||||
syn match pythonRawEscape +\\['"]+ display transparent contained
|
||||
|
||||
" Unicode raw strings
|
||||
syn region pythonUniRawString start=+[uU][rR]'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=pythonRawEscape,pythonUniRawEscape,pythonUniRawEscapeError,@Spell
|
||||
syn region pythonUniRawString start=+[uU][rR]"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=pythonRawEscape,pythonUniRawEscape,pythonUniRawEscapeError,@Spell
|
||||
syn region pythonUniRawString start=+[uU][rR]"""+ end=+"""+ keepend contains=pythonUniRawEscape,pythonUniRawEscapeError,pythonDocTest2,pythonSpaceError,@Spell
|
||||
syn region pythonUniRawString start=+[uU][rR]'''+ end=+'''+ keepend contains=pythonUniRawEscape,pythonUniRawEscapeError,pythonDocTest,pythonSpaceError,@Spell
|
||||
|
||||
syn match pythonUniRawEscape "\([^\\]\(\\\\\)*\)\@<=\\u\x\{4}" display contained
|
||||
syn match pythonUniRawEscapeError "\([^\\]\(\\\\\)*\)\@<=\\u\x\{,3}\X" display contained
|
||||
|
||||
if exists("python_highlight_string_formatting") && python_highlight_string_formatting != 0
|
||||
" String formatting
|
||||
syn match pythonStrFormatting "%\(([^)]\+)\)\=[-#0 +]*\d*\(\.\d\+\)\=[hlL]\=[diouxXeEfFgGcrs%]" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
syn match pythonStrFormatting "%[-#0 +]*\(\*\|\d\+\)\=\(\.\(\*\|\d\+\)\)\=[hlL]\=[diouxXeEfFgGcrs%]" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
endif
|
||||
|
||||
if exists("python_highlight_string_format") && python_highlight_string_format != 0
|
||||
" str.format syntax
|
||||
syn match pythonStrFormat "{{\|}}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
syn match pythonStrFormat "{\([a-zA-Z_][a-zA-Z0-9_]*\|\d\+\)\(\.[a-zA-Z_][a-zA-Z0-9_]*\|\[\(\d\+\|[^!:\}]\+\)\]\)*\(![rs]\)\=\(:\({\([a-zA-Z_][a-zA-Z0-9_]*\|\d\+\)}\|\([^}]\=[<>=^]\)\=[ +-]\=#\=0\=\d*\(\.\d\+\)\=[bcdeEfFgGnoxX%]\=\)\=\)\=}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
endif
|
||||
|
||||
if exists("python_highlight_string_templates") && python_highlight_string_templates != 0
|
||||
" String templates
|
||||
syn match pythonStrTemplate "\$\$" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
syn match pythonStrTemplate "\${[a-zA-Z_][a-zA-Z0-9_]*}" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
syn match pythonStrTemplate "\$[a-zA-Z_][a-zA-Z0-9_]*" contained containedin=pythonString,pythonUniString,pythonRawString,pythonUniRawString
|
||||
endif
|
||||
|
||||
if exists("python_highlight_doctests") && python_highlight_doctests != 0
|
||||
" DocTests
|
||||
syn region pythonDocTest start="^\s*>>>" end=+'''+he=s-1 end="^\s*$" contained
|
||||
syn region pythonDocTest2 start="^\s*>>>" end=+"""+he=s-1 end="^\s*$" contained
|
||||
endif
|
||||
|
||||
" Numbers (ints, longs, floats, complex)
|
||||
syn match pythonHexError "\<0[xX]\x*[g-zG-Z]\x*[lL]\=\>" display
|
||||
|
||||
syn match pythonHexNumber "\<0[xX]\x\+[lL]\=\>" display
|
||||
syn match pythonOctNumber "\<0[oO]\o\+[lL]\=\>" display
|
||||
syn match pythonBinNumber "\<0[bB][01]\+[lL]\=\>" display
|
||||
|
||||
syn match pythonNumber "\<\d\+[lLjJ]\=\>" display
|
||||
|
||||
syn match pythonFloat "\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>" display
|
||||
syn match pythonFloat "\<\d\+[eE][+-]\=\d\+[jJ]\=\>" display
|
||||
syn match pythonFloat "\<\d\+\.\d*\([eE][+-]\=\d\+\)\=[jJ]\=" display
|
||||
|
||||
syn match pythonOctError "\<0[oO]\=\o*[8-9]\d*[lL]\=\>" display
|
||||
syn match pythonBinError "\<0[bB][01]*[2-9]\d*[lL]\=\>" display
|
||||
|
||||
if exists("python_highlight_builtin_objs") && python_highlight_builtin_objs != 0
|
||||
" Builtin objects and types
|
||||
syn keyword pythonBuiltinObj True False Ellipsis None NotImplemented
|
||||
syn keyword pythonBuiltinObj __debug__ __doc__ __file__ __name__ __package__
|
||||
endif
|
||||
|
||||
if exists("python_highlight_builtin_funcs") && python_highlight_builtin_funcs != 0
|
||||
" Builtin functions
|
||||
syn keyword pythonBuiltinFunc __import__ abs all any apply
|
||||
syn keyword pythonBuiltinFunc basestring bin bool buffer bytearray bytes callable
|
||||
syn keyword pythonBuiltinFunc chr classmethod cmp coerce compile complex
|
||||
syn keyword pythonBuiltinFunc delattr dict dir divmod enumerate eval
|
||||
syn keyword pythonBuiltinFunc execfile file filter float format frozenset getattr
|
||||
syn keyword pythonBuiltinFunc globals hasattr hash help hex id
|
||||
syn keyword pythonBuiltinFunc input int intern isinstance
|
||||
syn keyword pythonBuiltinFunc issubclass iter len list locals long map max
|
||||
syn keyword pythonBuiltinFunc min next object oct open ord
|
||||
syn keyword pythonBuiltinFunc pow property range
|
||||
syn keyword pythonBuiltinFunc raw_input reduce reload repr
|
||||
syn keyword pythonBuiltinFunc reversed round set setattr
|
||||
syn keyword pythonBuiltinFunc slice sorted staticmethod str sum super tuple
|
||||
syn keyword pythonBuiltinFunc type unichr unicode vars xrange zip
|
||||
|
||||
if exists("python_print_as_function") && python_print_as_function != 0
|
||||
syn keyword pythonBuiltinFunc print
|
||||
endif
|
||||
endif
|
||||
|
||||
if exists("python_highlight_exceptions") && python_highlight_exceptions != 0
|
||||
" Builtin exceptions and warnings
|
||||
syn keyword pythonExClass BaseException
|
||||
syn keyword pythonExClass Exception StandardError ArithmeticError
|
||||
syn keyword pythonExClass LookupError EnvironmentError
|
||||
|
||||
syn keyword pythonExClass AssertionError AttributeError BufferError EOFError
|
||||
syn keyword pythonExClass FloatingPointError GeneratorExit IOError
|
||||
syn keyword pythonExClass ImportError IndexError KeyError
|
||||
syn keyword pythonExClass KeyboardInterrupt MemoryError NameError
|
||||
syn keyword pythonExClass NotImplementedError OSError OverflowError
|
||||
syn keyword pythonExClass ReferenceError RuntimeError StopIteration
|
||||
syn keyword pythonExClass SyntaxError IndentationError TabError
|
||||
syn keyword pythonExClass SystemError SystemExit TypeError
|
||||
syn keyword pythonExClass UnboundLocalError UnicodeError
|
||||
syn keyword pythonExClass UnicodeEncodeError UnicodeDecodeError
|
||||
syn keyword pythonExClass UnicodeTranslateError ValueError VMSError
|
||||
syn keyword pythonExClass WindowsError ZeroDivisionError
|
||||
|
||||
syn keyword pythonExClass Warning UserWarning BytesWarning DeprecationWarning
|
||||
syn keyword pythonExClass PendingDepricationWarning SyntaxWarning
|
||||
syn keyword pythonExClass RuntimeWarning FutureWarning
|
||||
syn keyword pythonExClass ImportWarning UnicodeWarning
|
||||
endif
|
||||
|
||||
if exists("python_slow_sync") && python_slow_sync != 0
|
||||
syn sync minlines=2000
|
||||
else
|
||||
" This is fast but code inside triple quoted strings screws it up. It
|
||||
" is impossible to fix because the only way to know if you are inside a
|
||||
" triple quoted string is to start from the beginning of the file.
|
||||
syn sync match pythonSync grouphere NONE "):$"
|
||||
syn sync maxlines=200
|
||||
endif
|
||||
|
||||
if version >= 508 || !exists("did_python_syn_inits")
|
||||
if version <= 508
|
||||
let did_python_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink pythonStatement Statement
|
||||
HiLink pythonPreCondit Statement
|
||||
HiLink pythonFunction Function
|
||||
HiLink pythonConditional Conditional
|
||||
HiLink pythonRepeat Repeat
|
||||
HiLink pythonException Exception
|
||||
HiLink pythonOperator Operator
|
||||
|
||||
HiLink pythonDecorator Define
|
||||
HiLink pythonDottedName Function
|
||||
HiLink pythonDot Normal
|
||||
|
||||
HiLink pythonComment Comment
|
||||
HiLink pythonCoding Special
|
||||
HiLink pythonRun Special
|
||||
HiLink pythonTodo Todo
|
||||
|
||||
HiLink pythonError Error
|
||||
HiLink pythonIndentError Error
|
||||
HiLink pythonSpaceError Error
|
||||
|
||||
HiLink pythonString String
|
||||
HiLink pythonUniString String
|
||||
HiLink pythonRawString String
|
||||
HiLink pythonUniRawString String
|
||||
|
||||
HiLink pythonEscape Special
|
||||
HiLink pythonEscapeError Error
|
||||
HiLink pythonUniEscape Special
|
||||
HiLink pythonUniEscapeError Error
|
||||
HiLink pythonUniRawEscape Special
|
||||
HiLink pythonUniRawEscapeError Error
|
||||
|
||||
HiLink pythonStrFormatting Special
|
||||
HiLink pythonStrFormat Special
|
||||
HiLink pythonStrTemplate Special
|
||||
|
||||
HiLink pythonDocTest Special
|
||||
HiLink pythonDocTest2 Special
|
||||
|
||||
HiLink pythonNumber Number
|
||||
HiLink pythonHexNumber Number
|
||||
HiLink pythonOctNumber Number
|
||||
HiLink pythonBinNumber Number
|
||||
HiLink pythonFloat Float
|
||||
HiLink pythonOctError Error
|
||||
HiLink pythonHexError Error
|
||||
HiLink pythonBinError Error
|
||||
|
||||
HiLink pythonBuiltinObj Structure
|
||||
HiLink pythonBuiltinFunc Function
|
||||
|
||||
HiLink pythonExClass Structure
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "python"
|
||||
103
syntax/tmux.vim
Normal file
103
syntax/tmux.vim
Normal file
@@ -0,0 +1,103 @@
|
||||
" Vim syntax file
|
||||
" Language: tmux(1) configuration file
|
||||
" Maintainer: Tiago Cunha <me@tiagocunha.org>
|
||||
" Last Change: $Date: 2010/07/02 02:46:39 $
|
||||
" License: This file is placed in the public domain.
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
setlocal iskeyword+=-
|
||||
syntax case match
|
||||
|
||||
syn keyword tmuxAction any current none
|
||||
syn keyword tmuxBoolean off on
|
||||
|
||||
syn keyword tmuxCmds detach[-client] ls list-sessions neww new-window
|
||||
syn keyword tmuxCmds bind[-key] unbind[-key] prev[ious-window] last[-window]
|
||||
syn keyword tmuxCmds lsk list-keys set[-option] renamew rename-window selectw
|
||||
syn keyword tmuxCmds select-window lsw list-windows attach[-session]
|
||||
syn keyword tmuxCmds send-prefix refresh[-client] killw kill-window lsc
|
||||
syn keyword tmuxCmds list-clients linkw link-window unlinkw unlink-window
|
||||
syn keyword tmuxCmds next[-window] send[-keys] swapw swap-window
|
||||
syn keyword tmuxCmds rename[-session] kill-session switchc switch-client
|
||||
syn keyword tmuxCmds has[-session] copy-mode pasteb paste-buffer
|
||||
syn keyword tmuxCmds new[-session] start[-server] kill-server setw
|
||||
syn keyword tmuxCmds set-window-option show[-options] showw show-window-options
|
||||
syn keyword tmuxCmds command-prompt setb set-buffer showb show-buffer lsb
|
||||
syn keyword tmuxCmds list-buffers deleteb delete-buffer lscm list-commands
|
||||
syn keyword tmuxCmds movew move-window respawnw respawn-window
|
||||
syn keyword tmuxCmds source[-file] info server-info clock-mode lock[-server]
|
||||
syn keyword tmuxCmds saveb save-buffer downp down-pane killp
|
||||
syn keyword tmuxCmds kill-pane resizep resize-pane selectp select-pane swapp
|
||||
syn keyword tmuxCmds swap-pane splitw split-window upp up-pane choose-session
|
||||
syn keyword tmuxCmds choose-window loadb load-buffer copyb copy-buffer suspendc
|
||||
syn keyword tmuxCmds suspend-client findw find-window breakp break-pane nextl
|
||||
syn keyword tmuxCmds next-layout rotatew rotate-window confirm[-before]
|
||||
syn keyword tmuxCmds clearhist clear-history selectl select-layout if[-shell]
|
||||
syn keyword tmuxCmds display[-message] setenv set-environment showenv
|
||||
syn keyword tmuxCmds show-environment choose-client displayp display-panes
|
||||
syn keyword tmuxCmds run[-shell] lockc lock-client locks lock-session lsp
|
||||
syn keyword tmuxCmds list-panes pipep pipe-pane showmsgs show-messages capturep
|
||||
syn keyword tmuxCmds capture-pane joinp join-pane choose-buffer
|
||||
|
||||
syn keyword tmuxOptsSet prefix status status-fg status-bg bell-action
|
||||
syn keyword tmuxOptsSet default-command history-limit status-left status-right
|
||||
syn keyword tmuxOptsSet status-interval set-titles display-time buffer-limit
|
||||
syn keyword tmuxOptsSet status-left-length status-right-length message-fg
|
||||
syn keyword tmuxOptsSet message-bg lock-after-time default-path repeat-time
|
||||
syn keyword tmuxOptsSet message-attr status-attr status-keys set-remain-on-exit
|
||||
syn keyword tmuxOptsSet status-utf8 default-terminal visual-activity
|
||||
syn keyword tmuxOptsSet visual-bell visual-content status-justify
|
||||
syn keyword tmuxOptsSet terminal-overrides status-left-attr status-left-bg
|
||||
syn keyword tmuxOptsSet status-left-fg status-right-attr status-right-bg
|
||||
syn keyword tmuxOptsSet status-right-fg update-environment base-index
|
||||
syn keyword tmuxOptsSet display-panes-colour display-panes-time default-shell
|
||||
syn keyword tmuxOptsSet set-titles-string lock-command lock-server
|
||||
syn keyword tmuxOptsSet mouse-select-pane message-limit quiet escape-time
|
||||
syn keyword tmuxOptsSet pane-active-border-bg pane-active-border-fg
|
||||
syn keyword tmuxOptsSet pane-border-bg pane-border-fg
|
||||
syn keyword tmuxOptsSet display-panes-active-colour alternate-screen
|
||||
syn keyword tmuxOptsSet detach-on-destroy
|
||||
|
||||
syn keyword tmuxOptsSetw monitor-activity aggressive-resize force-width
|
||||
syn keyword tmuxOptsSetw force-height remain-on-exit uft8 mode-fg mode-bg
|
||||
syn keyword tmuxOptsSetw mode-keys clock-mode-colour clock-mode-style
|
||||
syn keyword tmuxOptsSetw xterm-keys mode-attr window-status-attr
|
||||
syn keyword tmuxOptsSetw window-status-bg window-status-fg automatic-rename
|
||||
syn keyword tmuxOptsSetw main-pane-width main-pane-height monitor-content
|
||||
syn keyword tmuxOptsSetw window-status-current-attr window-status-current-bg
|
||||
syn keyword tmuxOptsSetw window-status-current-fg mode-mouse synchronize-panes
|
||||
syn keyword tmuxOptsSetw window-status-format window-status-current-format
|
||||
syn keyword tmuxOptsSetw word-separators
|
||||
|
||||
syn keyword tmuxTodo FIXME NOTE TODO XXX contained
|
||||
|
||||
syn match tmuxKey /\(C-\|M-\|\^\)\p/ display
|
||||
syn match tmuxNumber /\d\+/ display
|
||||
syn match tmuxOptions /\s-\a\+/ display
|
||||
syn match tmuxVariable /\w\+=/ display
|
||||
syn match tmuxVariableExpansion /\${\=\w\+}\=/ display
|
||||
|
||||
syn region tmuxComment start=/#/ end=/$/ contains=tmuxTodo display oneline
|
||||
syn region tmuxString start=/"/ end=/"/ display oneline
|
||||
syn region tmuxString start=/'/ end=/'/ display oneline
|
||||
|
||||
hi def link tmuxAction Boolean
|
||||
hi def link tmuxBoolean Boolean
|
||||
hi def link tmuxCmds Keyword
|
||||
hi def link tmuxComment Comment
|
||||
hi def link tmuxKey Special
|
||||
hi def link tmuxNumber Number
|
||||
hi def link tmuxOptions Identifier
|
||||
hi def link tmuxOptsSet Function
|
||||
hi def link tmuxOptsSetw Function
|
||||
hi def link tmuxString String
|
||||
hi def link tmuxTodo Todo
|
||||
hi def link tmuxVariable Constant
|
||||
hi def link tmuxVariableExpansion Constant
|
||||
|
||||
let b:current_syntax = "tmux"
|
||||
Reference in New Issue
Block a user