xref: /vim-8.2.3635/runtime/syntax/bdf.vim (revision 214641f7)
1071d4279SBram Moolenaar" Vim syntax file
242eeac35SBram Moolenaar" Language:             BDF font definition
3*214641f7SBram Moolenaar" Previous Maintainer:  Nikolai Weibull <[email protected]>
457657d85SBram Moolenaar" Latest Revision:      2006-04-19
5071d4279SBram Moolenaar
642eeac35SBram Moolenaarif exists("b:current_syntax")
7071d4279SBram Moolenaar  finish
8071d4279SBram Moolenaarendif
9071d4279SBram Moolenaar
1042eeac35SBram Moolenaarlet s:cpo_save = &cpo
1142eeac35SBram Moolenaarset cpo&vim
12071d4279SBram Moolenaar
1342eeac35SBram Moolenaarsyn region  bdfFontDefinition transparent matchgroup=bdfKeyword
1442eeac35SBram Moolenaar                              \ start='^STARTFONT\>' end='^ENDFONT\>'
1542eeac35SBram Moolenaar                              \ contains=bdfComment,bdfFont,bdfSize,
1642eeac35SBram Moolenaar                              \ bdfBoundingBox,bdfProperties,bdfChars,bdfChar
17071d4279SBram Moolenaar
1842eeac35SBram Moolenaarsyn match   bdfNumber         contained display
1942eeac35SBram Moolenaar                              \ '\<\%(\x\+\|[+-]\=\d\+\%(\.\d\+\)*\)'
20071d4279SBram Moolenaar
2142eeac35SBram Moolenaarsyn keyword bdfTodo           contained FIXME TODO XXX NOTE
22071d4279SBram Moolenaar
2342eeac35SBram Moolenaarsyn region  bdfComment        contained start='^COMMENT\>' end='$'
2442eeac35SBram Moolenaar                              \ contains=bdfTodo,@Spell
25071d4279SBram Moolenaar
2642eeac35SBram Moolenaarsyn region  bdfFont           contained matchgroup=bdfKeyword
2742eeac35SBram Moolenaar                              \ start='^FONT\>' end='$'
28071d4279SBram Moolenaar
2942eeac35SBram Moolenaarsyn region  bdfSize           contained transparent matchgroup=bdfKeyword
3042eeac35SBram Moolenaar                              \ start='^SIZE\>' end='$' contains=bdfNumber
31071d4279SBram Moolenaar
3242eeac35SBram Moolenaarsyn region  bdfBoundingBox    contained transparent matchgroup=bdfKeyword
3342eeac35SBram Moolenaar                              \ start='^FONTBOUNDINGBOX' end='$'
3442eeac35SBram Moolenaar                              \ contains=bdfNumber
35071d4279SBram Moolenaar
3642eeac35SBram Moolenaarsyn region  bdfProperties     contained transparent matchgroup=bdfKeyword
3742eeac35SBram Moolenaar                              \ start='^STARTPROPERTIES' end='^ENDPROPERTIES'
3842eeac35SBram Moolenaar                              \ contains=bdfNumber,bdfString,bdfProperty,
3942eeac35SBram Moolenaar                              \ bdfXProperty
40071d4279SBram Moolenaar
4142eeac35SBram Moolenaarsyn keyword bdfProperty       contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
4242eeac35SBram Moolenaarsyn match   bdfProperty       contained '^\S\+'
43071d4279SBram Moolenaar
4442eeac35SBram Moolenaarsyn keyword bdfXProperty      contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
4542eeac35SBram Moolenaar                              \ FONTNAME_REGISTRY FOUNDRY FAMILY_NAME
4642eeac35SBram Moolenaar                              \ WEIGHT_NAME SLANT SETWIDTH_NAME PIXEL_SIZE
4742eeac35SBram Moolenaar                              \ POINT_SIZE RESOLUTION_X RESOLUTION_Y SPACING
4842eeac35SBram Moolenaar                              \ CHARSET_REGISTRY CHARSET_ENCODING COPYRIGHT
4942eeac35SBram Moolenaar                              \ ADD_STYLE_NAME WEIGHT RESOLUTION X_HEIGHT
5042eeac35SBram Moolenaar                              \ QUAD_WIDTH FONT AVERAGE_WIDTH
51071d4279SBram Moolenaar
5242eeac35SBram Moolenaarsyn region  bdfString         contained start=+"+ skip=+""+ end=+"+
5342eeac35SBram Moolenaar
5442eeac35SBram Moolenaarsyn region  bdfChars          contained display transparent
5542eeac35SBram Moolenaar                              \ matchgroup=bdfKeyword start='^CHARS' end='$'
5642eeac35SBram Moolenaar                              \ contains=bdfNumber
5742eeac35SBram Moolenaar
5842eeac35SBram Moolenaarsyn region  bdfChar           transparent matchgroup=bdfKeyword
5942eeac35SBram Moolenaar                              \ start='^STARTCHAR' end='^ENDCHAR'
6042eeac35SBram Moolenaar                              \ contains=bdfEncoding,bdfWidth,bdfAttributes,
6142eeac35SBram Moolenaar                              \ bdfBitmap
6242eeac35SBram Moolenaar
6342eeac35SBram Moolenaarsyn region  bdfEncoding       contained transparent matchgroup=bdfKeyword
6442eeac35SBram Moolenaar                              \ start='^ENCODING' end='$' contains=bdfNumber
6542eeac35SBram Moolenaar
6642eeac35SBram Moolenaarsyn region  bdfWidth          contained transparent matchgroup=bdfKeyword
6742eeac35SBram Moolenaar                              \ start='^SWIDTH\|DWIDTH\|BBX' end='$'
6842eeac35SBram Moolenaar                              \ contains=bdfNumber
6942eeac35SBram Moolenaar
7042eeac35SBram Moolenaarsyn region  bdfAttributes     contained transparent matchgroup=bdfKeyword
7142eeac35SBram Moolenaar                              \ start='^ATTRIBUTES' end='$'
7242eeac35SBram Moolenaar
7342eeac35SBram Moolenaarsyn keyword bdfBitmap         contained BITMAP
74071d4279SBram Moolenaar
75071d4279SBram Moolenaarif exists("bdf_minlines")
76071d4279SBram Moolenaar  let b:bdf_minlines = bdf_minlines
77071d4279SBram Moolenaarelse
7842eeac35SBram Moolenaar  let b:bdf_minlines = 30
79071d4279SBram Moolenaarendif
8042eeac35SBram Moolenaarexec "syn sync ccomment bdfChar minlines=" . b:bdf_minlines
81071d4279SBram Moolenaar
82071d4279SBram Moolenaar
8342eeac35SBram Moolenaarhi def link bdfKeyword        Keyword
8442eeac35SBram Moolenaarhi def link bdfNumber         Number
8542eeac35SBram Moolenaarhi def link bdfTodo           Todo
8642eeac35SBram Moolenaarhi def link bdfComment        Comment
8742eeac35SBram Moolenaarhi def link bdfFont           String
8842eeac35SBram Moolenaarhi def link bdfProperty       Identifier
8942eeac35SBram Moolenaarhi def link bdfXProperty      Identifier
9042eeac35SBram Moolenaarhi def link bdfString         String
9142eeac35SBram Moolenaarhi def link bdfChars          Keyword
9242eeac35SBram Moolenaarhi def link bdfBitmap         Keyword
93071d4279SBram Moolenaar
94071d4279SBram Moolenaarlet b:current_syntax = "bdf"
95071d4279SBram Moolenaar
9642eeac35SBram Moolenaarlet &cpo = s:cpo_save
9742eeac35SBram Moolenaarunlet s:cpo_save
98