mirror of
https://github.com/neovim/neovim.git
synced 2024-12-29 14:41:06 -07:00
98 lines
3.7 KiB
VimL
98 lines
3.7 KiB
VimL
|
" Vim syntax file
|
||
|
" Language: BDF font definition
|
||
|
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||
|
" Latest Revision: 2006-04-19
|
||
|
|
||
|
if exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
let s:cpo_save = &cpo
|
||
|
set cpo&vim
|
||
|
|
||
|
syn region bdfFontDefinition transparent matchgroup=bdfKeyword
|
||
|
\ start='^STARTFONT\>' end='^ENDFONT\>'
|
||
|
\ contains=bdfComment,bdfFont,bdfSize,
|
||
|
\ bdfBoundingBox,bdfProperties,bdfChars,bdfChar
|
||
|
|
||
|
syn match bdfNumber contained display
|
||
|
\ '\<\%(\x\+\|[+-]\=\d\+\%(\.\d\+\)*\)'
|
||
|
|
||
|
syn keyword bdfTodo contained FIXME TODO XXX NOTE
|
||
|
|
||
|
syn region bdfComment contained start='^COMMENT\>' end='$'
|
||
|
\ contains=bdfTodo,@Spell
|
||
|
|
||
|
syn region bdfFont contained matchgroup=bdfKeyword
|
||
|
\ start='^FONT\>' end='$'
|
||
|
|
||
|
syn region bdfSize contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^SIZE\>' end='$' contains=bdfNumber
|
||
|
|
||
|
syn region bdfBoundingBox contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^FONTBOUNDINGBOX' end='$'
|
||
|
\ contains=bdfNumber
|
||
|
|
||
|
syn region bdfProperties contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^STARTPROPERTIES' end='^ENDPROPERTIES'
|
||
|
\ contains=bdfNumber,bdfString,bdfProperty,
|
||
|
\ bdfXProperty
|
||
|
|
||
|
syn keyword bdfProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
|
||
|
syn match bdfProperty contained '^\S\+'
|
||
|
|
||
|
syn keyword bdfXProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
|
||
|
\ FONTNAME_REGISTRY FOUNDRY FAMILY_NAME
|
||
|
\ WEIGHT_NAME SLANT SETWIDTH_NAME PIXEL_SIZE
|
||
|
\ POINT_SIZE RESOLUTION_X RESOLUTION_Y SPACING
|
||
|
\ CHARSET_REGISTRY CHARSET_ENCODING COPYRIGHT
|
||
|
\ ADD_STYLE_NAME WEIGHT RESOLUTION X_HEIGHT
|
||
|
\ QUAD_WIDTH FONT AVERAGE_WIDTH
|
||
|
|
||
|
syn region bdfString contained start=+"+ skip=+""+ end=+"+
|
||
|
|
||
|
syn region bdfChars contained display transparent
|
||
|
\ matchgroup=bdfKeyword start='^CHARS' end='$'
|
||
|
\ contains=bdfNumber
|
||
|
|
||
|
syn region bdfChar transparent matchgroup=bdfKeyword
|
||
|
\ start='^STARTCHAR' end='^ENDCHAR'
|
||
|
\ contains=bdfEncoding,bdfWidth,bdfAttributes,
|
||
|
\ bdfBitmap
|
||
|
|
||
|
syn region bdfEncoding contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^ENCODING' end='$' contains=bdfNumber
|
||
|
|
||
|
syn region bdfWidth contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^SWIDTH\|DWIDTH\|BBX' end='$'
|
||
|
\ contains=bdfNumber
|
||
|
|
||
|
syn region bdfAttributes contained transparent matchgroup=bdfKeyword
|
||
|
\ start='^ATTRIBUTES' end='$'
|
||
|
|
||
|
syn keyword bdfBitmap contained BITMAP
|
||
|
|
||
|
if exists("bdf_minlines")
|
||
|
let b:bdf_minlines = bdf_minlines
|
||
|
else
|
||
|
let b:bdf_minlines = 30
|
||
|
endif
|
||
|
exec "syn sync ccomment bdfChar minlines=" . b:bdf_minlines
|
||
|
|
||
|
|
||
|
hi def link bdfKeyword Keyword
|
||
|
hi def link bdfNumber Number
|
||
|
hi def link bdfTodo Todo
|
||
|
hi def link bdfComment Comment
|
||
|
hi def link bdfFont String
|
||
|
hi def link bdfProperty Identifier
|
||
|
hi def link bdfXProperty Identifier
|
||
|
hi def link bdfString String
|
||
|
hi def link bdfChars Keyword
|
||
|
hi def link bdfBitmap Keyword
|
||
|
|
||
|
let b:current_syntax = "bdf"
|
||
|
|
||
|
let &cpo = s:cpo_save
|
||
|
unlet s:cpo_save
|