mirror of
https://github.com/neovim/neovim.git
synced 2024-12-23 20:55:18 -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>
110 lines
3.7 KiB
VimL
110 lines
3.7 KiB
VimL
" Vim syntax file
|
|
" Language: Dylan
|
|
" Authors: Justus Pendleton <justus@acm.org>
|
|
" Brent A. Fulgham <bfulgham@debian.org>
|
|
" Last Change: Fri Sep 29 13:45:55 PDT 2000
|
|
"
|
|
" This syntax file is based on the Haskell, Perl, Scheme, and C
|
|
" syntax files.
|
|
|
|
" Part 1: Syntax definition
|
|
" 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
|
|
|
|
syn case ignore
|
|
|
|
if version < 600
|
|
set lisp
|
|
else
|
|
setlocal lisp
|
|
endif
|
|
|
|
" Highlight special characters (those that have backslashes) differently
|
|
syn match dylanSpecial display contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)"
|
|
|
|
" Keywords
|
|
syn keyword dylanBlock afterwards begin block cleanup end
|
|
syn keyword dylanClassMods abstract concrete primary inherited virtual
|
|
syn keyword dylanException exception handler signal
|
|
syn keyword dylanParamDefs method class function library macro interface
|
|
syn keyword dylanSimpleDefs constant variable generic primary
|
|
syn keyword dylanOther above below from by in instance local slot subclass then to
|
|
syn keyword dylanConditional if when select case else elseif unless finally otherwise then
|
|
syn keyword dylanRepeat begin for until while from to
|
|
syn keyword dylanStatement define let
|
|
syn keyword dylanImport use import export exclude rename create
|
|
syn keyword dylanMiscMods open sealed domain singleton sideways inline functional
|
|
|
|
" Matching rules for special forms
|
|
syn match dylanOperator "\s[-!%&\*\+/=\?@\\^|~:]\+[-#!>%&:\*\+/=\?@\\^|~]*"
|
|
syn match dylanOperator "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=:[-!#$%&\*\+./=\?@\\^|~:]*"
|
|
" Numbers
|
|
syn match dylanNumber "\<[0-9]\+\>\|\<0[xX][0-9a-fA-F]\+\>\|\<0[oO][0-7]\+\>"
|
|
syn match dylanNumber "\<[0-9]\+\.[0-9]\+\([eE][-+]\=[0-9]\+\)\=\>"
|
|
" Booleans
|
|
syn match dylanBoolean "#t\|#f"
|
|
" Comments
|
|
syn match dylanComment "//.*"
|
|
syn region dylanComment start="/\*" end="\*/"
|
|
" Strings
|
|
syn region dylanString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=dySpecial
|
|
syn match dylanCharacter "'[^\\]'"
|
|
" Constants, classes, and variables
|
|
syn match dylanConstant "$\<[a-zA-Z0-9\-]\+\>"
|
|
syn match dylanClass "<\<[a-zA-Z0-9\-]\+\>>"
|
|
syn match dylanVariable "\*\<[a-zA-Z0-9\-]\+\>\*"
|
|
" Preconditions
|
|
syn region dylanPrecondit start="^\s*#\s*\(if\>\|else\>\|endif\>\)" skip="\\$" end="$"
|
|
|
|
" These appear at the top of files (usually). I like to highlight the whole line
|
|
" so that the definition stands out. They should probably really be keywords, but they
|
|
" don't generally appear in the middle of a line of code.
|
|
syn region dylanHeader start="^[Mm]odule:" end="^$"
|
|
|
|
" 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_dylan_syntax_inits")
|
|
if version < 508
|
|
let did_dylan_syntax_inits = 1
|
|
command -nargs=+ HiLink hi link <args>
|
|
else
|
|
command -nargs=+ HiLink hi def link <args>
|
|
endif
|
|
|
|
HiLink dylanBlock PreProc
|
|
HiLink dylanBoolean Boolean
|
|
HiLink dylanCharacter Character
|
|
HiLink dylanClass Structure
|
|
HiLink dylanClassMods StorageClass
|
|
HiLink dylanComment Comment
|
|
HiLink dylanConditional Conditional
|
|
HiLink dylanConstant Constant
|
|
HiLink dylanException Exception
|
|
HiLink dylanHeader Macro
|
|
HiLink dylanImport Include
|
|
HiLink dylanLabel Label
|
|
HiLink dylanMiscMods StorageClass
|
|
HiLink dylanNumber Number
|
|
HiLink dylanOther Keyword
|
|
HiLink dylanOperator Operator
|
|
HiLink dylanParamDefs Keyword
|
|
HiLink dylanPrecondit PreCondit
|
|
HiLink dylanRepeat Repeat
|
|
HiLink dylanSimpleDefs Keyword
|
|
HiLink dylanStatement Macro
|
|
HiLink dylanString String
|
|
HiLink dylanVariable Identifier
|
|
|
|
delcommand HiLink
|
|
endif
|
|
|
|
let b:current_syntax = "dylan"
|
|
|
|
" vim:ts=8
|