diff runtime/syntax/bdf.vim @ 0:76efa0be13f1

Initial revision
author atsuki
date Sat, 10 Nov 2007 15:07:22 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/runtime/syntax/bdf.vim	Sat Nov 10 15:07:22 2007 +0900
@@ -0,0 +1,97 @@
+" 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