mirror of
https://github.com/neovim/neovim.git
synced 2024-12-29 14:41:06 -07:00
a98a6996c2
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7 Excluding: Amiga icons (*.info, icons/) doc/hangulin.txt tutor/ spell/ lang/ (only used for menu translations) macros/maze/, macros/hanoi/, macros/life/, macros/urm/ These were used to test vi compatibility. termcap "Demonstration of a termcap file (for the Amiga and Archimedes)" Helped-by: Rich Wareham <rjw57@cam.ac.uk> Helped-by: John <john.schmidt.h@gmail.com> Helped-by: Yann <yann@yann-salaun.com> Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com> Helped-by: drasill <github@tof2k.com> Helped-by: Tae Sandoval Murgan <taecilla@gmail.com> Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
111 lines
3.6 KiB
VimL
111 lines
3.6 KiB
VimL
" Vim syntax file
|
|
" Language: Treetop
|
|
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
|
" Latest Revision: 2011-03-14
|
|
|
|
if exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
let s:cpo_save = &cpo
|
|
set cpo&vim
|
|
|
|
syn keyword treetopTodo
|
|
\ contained
|
|
\ TODO
|
|
\ FIXME
|
|
\ XXX
|
|
\ NOTE
|
|
|
|
syn match treetopComment
|
|
\ '#.*'
|
|
\ display
|
|
\ contains=treetopTodo
|
|
|
|
syn include @treetopRuby syntax/ruby.vim
|
|
unlet b:current_syntax
|
|
|
|
syn keyword treetopKeyword
|
|
\ require
|
|
\ end
|
|
syn region treetopKeyword
|
|
\ matchgroup=treetopKeyword
|
|
\ start='\<\%(grammar\|include\|module\)\>\ze\s'
|
|
\ end='$'
|
|
\ transparent
|
|
\ oneline
|
|
\ keepend
|
|
\ contains=@treetopRuby
|
|
syn keyword treetopKeyword
|
|
\ rule
|
|
\ nextgroup=treetopRuleName
|
|
\ skipwhite skipnl
|
|
|
|
syn match treetopGrammarName
|
|
\ '\u\w*'
|
|
\ contained
|
|
|
|
syn match treetopRubyModuleName
|
|
\ '\u\w*'
|
|
\ contained
|
|
|
|
syn match treetopRuleName
|
|
\ '\h\w*'
|
|
\ contained
|
|
|
|
syn region treetopString
|
|
\ matchgroup=treetopStringDelimiter
|
|
\ start=+"+
|
|
\ end=+"+
|
|
syn region treetopString
|
|
\ matchgroup=treetopStringDelimiter
|
|
\ start=+'+
|
|
\ end=+'+
|
|
|
|
syn region treetopCharacterClass
|
|
\ matchgroup=treetopCharacterClassDelimiter
|
|
\ start=+\[+
|
|
\ skip=+\\\]+
|
|
\ end=+\]+
|
|
|
|
syn region treetopRubyBlock
|
|
\ matchgroup=treetopRubyBlockDelimiter
|
|
\ start=+{+
|
|
\ end=+}+
|
|
\ contains=@treetopRuby
|
|
|
|
syn region treetopSemanticPredicate
|
|
\ matchgroup=treetopSemanticPredicateDelimiter
|
|
\ start=+[!&]{+
|
|
\ end=+}+
|
|
\ contains=@treetopRuby
|
|
|
|
syn region treetopSubclassDeclaration
|
|
\ matchgroup=treetopSubclassDeclarationDelimiter
|
|
\ start=+<+
|
|
\ end=+>+
|
|
\ contains=@treetopRuby
|
|
|
|
syn match treetopEllipsis
|
|
\ +''+
|
|
|
|
hi def link treetopTodo Todo
|
|
hi def link treetopComment Comment
|
|
hi def link treetopKeyword Keyword
|
|
hi def link treetopGrammarName Constant
|
|
hi def link treetopRubyModuleName Constant
|
|
hi def link treetopRuleName Identifier
|
|
hi def link treetopString String
|
|
hi def link treetopStringDelimiter treetopString
|
|
hi def link treetopCharacterClass treetopString
|
|
hi def link treetopCharacterClassDelimiter treetopCharacterClass
|
|
hi def link treetopRubyBlockDelimiter PreProc
|
|
hi def link treetopSemanticPredicateDelimiter PreProc
|
|
hi def link treetopSubclassDeclarationDelimiter PreProc
|
|
hi def link treetopEllipsis Special
|
|
|
|
let b:current_syntax = 'treetop'
|
|
|
|
let &cpo = s:cpo_save
|
|
unlet s:cpo_save
|