[Mapserver-users] vim syntax file

Andreas Hirner andreas_hirner at hotmail.com
Wed May 26 05:36:12 EDT 2004


This is a multi-part message in MIME format.

------=_NextPart_000_115b_5804_7070
Content-Type: text/plain; format=flowed

Hello List,

I have written a syntax file for vi/vim. It was my first go at vim syntax 
files and only represents a first draft. I am sure there is still plenty of 
room for improvements. The keywords are based on the TextPad Symbol 
Map_40.syn file contributed by Christopher Thorne, which can be found on the 
Mapserver utility page.

To register this file in vim copy map.vim (also listed at the bottom of the 
mail) to the vim syntax directory (on Suse: /usr/share/vim/current/syntax) 
and add two lines to filetype.vim (on Suse Linux: /usr/share/vim/current) 
according to the example shown below:


" Manpage
au BufNewFile,BufRead *.man         setf man
############ADD#############
" Map
au BufNewFile,BufRead *.map         setf map
############ADD#############
" Maple V
au BufNewFile,BufRead *.mv,*.mpl,*.mws      setf maple

I hope the file is somehow usefull to anybody out there. If there are any 
questions or suggestions, please feel free to contact me.

Cheer
Andreas

-----------------------------------------

Dr. Andreas Hirner

German Remote Sensing Data Center (DFD)
German Aerospace Center (DLR)

P.O.Box 11 16       Tel: +49-8153-28-3389
D-82234 Wessling    Fax: +49-8153-28-1445
Germany

E-mail: andreas.hirner at dlr.de

-----------------------------------------


##########################
map.vim
##########################
" Vim syntax file
" Language:		map (umn mapserver config file)
" Maintainer:   Andreas Hirner <andreas.hirner at dlr.de>
" Last Change:  $Date: 2004/05/25 19:19:37 $
" Filenames:    *.map
" URL:			ftp://xxx@xxx.xx/map.vim
" Note:			The definitions below are taken from TextPad syntax definitions 
(*.syn) by Chris Thorne (thorne at dmsolutions.ca) as of May 2004, for version 
4.0 Mapserver

" 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

" Always ignore case
syn case ignore

" General keywords first order
syn keyword mapDefine 		CLASS END JOIN LABEL LAYER LEGEND MAP METADATA 
OUTPUTFORMAT
syn keyword mapDefine 		PROJECTION QUERYMAP REFERENCE SCALEBAR STYLE SYMBOL 
WEB

" General keywords second order
syn keyword mapIdentifier	ALPHACOLOR ANGLE ANTIALIAS
syn keyword mapIdentifier	BACKGROUNDCOLOR BACKGROUNDSHADOWCOLOR 
BACKGROUNDSHADOWSIZE BUFFER
syn keyword mapIdentifier	CHARACTER CLASSITEM COLOR CONNECTION 
CONNECTIONTYPE
syn keyword mapIdentifier	DATA DATAPATTERN DEBUG DRIVER DUMP
syn keyword mapIdentifier	EMPTY ERROR EXPRESSION EXTENSION EXTENT
syn keyword mapIdentifier	FEATURE FILLED FILTER FILTERITEM FONT FONTSET 
FOOTER FORCE FORMATOPTION FROM
syn keyword mapIdentifier	GAP GRATICULE GRID GROUP HEADER
syn keyword mapIdentifier	IMAGE IMAGECOLOR IMAGEMODE IMAGEPATH IMAGEQUALITY 
IMAGETYPE IMAGEURL INDEX INTERLACE INTERVALS
syn keyword mapIdentifier	KEYIMAGE KEYSIZE KEYSPACING
syn keyword mapIdentifier	LABELANGLEITEM LABELCACHE LABELFORMAT LABELITEM 
LABELMAXSCALE LABELMINSCALE LABELREQUIRES LABELSIZEITEM LATLON LINECAP 
LINEJOIN LINEJOINMAXSIZE LOG
syn keyword mapIdentifier	MARKER MARKERSIZE MAXARCS MAXBOXSIZE MAXFEATURES 
MAXINTERVAL MAXSCALE MAXSIZE MAXSUBDIVIDE MAXTEMPLATE MIMETYPE
syn keyword mapIdentifier	MINARCS MINBOXSIZE MINDISTANCE MINFEATURESIZE 
MININTERVAL MINSCALE MINSIZE MINSUBDIVIDE MINTEMPLATE
syn keyword mapIdentifier	NAME
syn keyword mapIdentifier	OFFSET OFFSITE OUTLINECOLOR OVERLAYBACKGROUNDCOLOR 
OVERLAYCOLOR OVERLAYMAXSIZE OVERLAYMINSIZE OVERLAYOUTLINECOLOR OVERLAYSIZE 
OVERLAYSYMBOL
syn keyword mapIdentifier	PARTIALS POINTS POSITION POSTLABELCACHE PROCESSING
syn keyword mapIdentifier	REQUIRES RESOLUTION
syn keyword mapIdentifier	SCALE SHADOWCOLOR SHADOWSIZE SHAPEPATH SIZE 
SIZEUNITS STATUS STYLEITEM SYMBOLSCALE SYMBOLSET
syn keyword mapIdentifier	TABLE TEMPLATE TEMPLATEPATTERN TEXT TILEINDEX 
TILEITEM TITLE TO TOLERANCE TOLERANCEUNITS TRANSFORM TRANSPARENCY 
TRANSPAREN[T] TYPE
syn keyword mapIdentifier	UNITS WMS_ABSTRACT WMS_ACCESSCONSTRAINTS 
WMS_ONLINERESOURCE WMS_SRS WMS_TITLE WRAP

" General keywords third order
syn keyword mapKeyword		ANNOTATION AUTO BEVEL BITMAP BUTT
syn keyword mapKeyword		CARTOLINE CC CIRCLE CL CR CSV DD DEFAULT
syn keyword mapKeyword		ELLIPSE EMBED FALSE FEET GIANT HILITE INCHES
syn keyword mapKeyword		KILOMETERS LARGE LC LINE LL LR
syn keyword mapKeyword		MEDIUM METERS MILES MITER MULTIPLE MYGIS NORMAL
syn keyword mapKeyword		OFF OGR ON ONE-TO-MANY ONE-TO-ONE ORACLESPATIAL
syn keyword mapKeyword		PIXELS PIXMAP POINT POLYGON POSTGIS QUERY RASTER 
ROUND
syn keyword mapKeyword		SDE SELECTED SIMPLE SINGLE SMALL SQUARE
syn keyword mapKeyword		TINY TRIANGLE TRUE TRUETYPE UC UL UR VECTOR WFS WMS

" keywords for other purposes
syn keyword mapTypedef		SELECTION

" Comment
syn match mapComment		"#.*"

" Strings (single- and double-quote)
syn region mapString		 start=+"+  skip=+\\\\\|\\"+  end=+"+
syn region mapString		 start=+'+  skip=+\\\\\|\\'+  end=+'+

" Numbers and hexidecimal values
syn match mapNumber			"-\=\<[0-9]*\>"
syn match mapNumber			"\<0x[abcdefABCDEF0-9]*\>"

" Operators
syn match mapOperator		"EQ"
syn match mapOperator		"[><|\=&!$/\\()\[\]]"


" 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_map_syn_inits")
  if version < 508
    let did_map_syn_inits = 1
    command -nargs=+ HiLink hi link <args>
  else
    command -nargs=+ HiLink hi def link <args>
  endif

  HiLink mapComment		Comment
  HiLink mapKeyword		Keyword
  HiLink mapIdentifier	Identifier
  HiLink mapDefine		Define
  HiLink mapTypedef		Typedef
  HiLink mapNumber		Number
  HiLink mapString		String
  HiLink mapOperator	Operator

  delcommand HiLink
endif

let b:current_syntax = "map"

" vim: ts=8

_________________________________________________________________
Tired of spam? Get advanced junk mail protection with MSN 8. 
http://join.msn.com/?page=features/junkmail

------=_NextPart_000_115b_5804_7070
Content-Type: application/octet-stream; name="map.vim"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="map.vim"

IiBWaW0gc3ludGF4IGZpbGUKIiBMYW5ndWFnZToJCW1hcCAodW1uIG1hcHNl
cnZlciBjb25maWcgZmlsZSkgCiIgTWFpbnRhaW5lcjogICBBbmRyZWFzIEhp
cm5lciA8YW5kcmVhcy5oaXJuZXJAZGxyLmRlPgoiIExhc3QgQ2hhbmdlOiAg
JERhdGU6IDIwMDQvMDUvMjUgMTk6MTk6MzcgJAoiIEZpbGVuYW1lczogICAg
Ki5tYXAKIiBVUkw6CQkJZnRwOi8veHh4QHh4eC54eC9tYXAudmltCiIgTm90
ZToJCQlUaGUgZGVmaW5pdGlvbnMgYmVsb3cgYXJlIHRha2VuIGZyb20gVGV4
dFBhZCBzeW50YXggZGVmaW5pdGlvbnMgKCouc3luKSBieSBDaHJpcyBUaG9y
bmUgKHRob3JuZUBkbXNvbHV0aW9ucy5jYSkgYXMgb2YgTWF5IDIwMDQsIGZv
ciB2ZXJzaW9uIDQuMCBNYXBzZXJ2ZXIKCiIgRm9yIHZlcnNpb24gNS54OiBD
bGVhciBhbGwgc3ludGF4IGl0ZW1zCiIgRm9yIHZlcnNpb24gNi54OiBRdWl0
IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKaWYgdmVy
c2lvbiA8IDYwMAogIHN5bnRheCBjbGVhcgplbHNlaWYgZXhpc3RzKCJiOmN1
cnJlbnRfc3ludGF4IikKICBmaW5pc2gKZW5kaWYKCiIgQWx3YXlzIGlnbm9y
ZSBjYXNlCnN5biBjYXNlIGlnbm9yZQoKIiBHZW5lcmFsIGtleXdvcmRzIGZp
cnN0IG9yZGVyCnN5biBrZXl3b3JkIG1hcERlZmluZSAJCUNMQVNTIEVORCBK
T0lOIExBQkVMIExBWUVSIExFR0VORCBNQVAgTUVUQURBVEEgT1VUUFVURk9S
TUFUCnN5biBrZXl3b3JkIG1hcERlZmluZSAJCVBST0pFQ1RJT04gUVVFUllN
QVAgUkVGRVJFTkNFIFNDQUxFQkFSIFNUWUxFIFNZTUJPTCBXRUIKCiIgR2Vu
ZXJhbCBrZXl3b3JkcyBzZWNvbmQgb3JkZXIKc3luIGtleXdvcmQgbWFwSWRl
bnRpZmllcglBTFBIQUNPTE9SIEFOR0xFIEFOVElBTElBUwpzeW4ga2V5d29y
ZCBtYXBJZGVudGlmaWVyCUJBQ0tHUk9VTkRDT0xPUiBCQUNLR1JPVU5EU0hB
RE9XQ09MT1IgQkFDS0dST1VORFNIQURPV1NJWkUgQlVGRkVSCnN5biBrZXl3
b3JkIG1hcElkZW50aWZpZXIJQ0hBUkFDVEVSIENMQVNTSVRFTSBDT0xPUiBD
T05ORUNUSU9OIENPTk5FQ1RJT05UWVBFCnN5biBrZXl3b3JkIG1hcElkZW50
aWZpZXIJREFUQSBEQVRBUEFUVEVSTiBERUJVRyBEUklWRVIgRFVNUApzeW4g
a2V5d29yZCBtYXBJZGVudGlmaWVyCUVNUFRZIEVSUk9SIEVYUFJFU1NJT04g
RVhURU5TSU9OIEVYVEVOVApzeW4ga2V5d29yZCBtYXBJZGVudGlmaWVyCUZF
QVRVUkUgRklMTEVEIEZJTFRFUiBGSUxURVJJVEVNIEZPTlQgRk9OVFNFVCBG
T09URVIgRk9SQ0UgRk9STUFUT1BUSU9OIEZST00Kc3luIGtleXdvcmQgbWFw
SWRlbnRpZmllcglHQVAgR1JBVElDVUxFIEdSSUQgR1JPVVAgSEVBREVSCnN5
biBrZXl3b3JkIG1hcElkZW50aWZpZXIJSU1BR0UgSU1BR0VDT0xPUiBJTUFH
RU1PREUgSU1BR0VQQVRIIElNQUdFUVVBTElUWSBJTUFHRVRZUEUgSU1BR0VV
UkwgSU5ERVggSU5URVJMQUNFIElOVEVSVkFMUwpzeW4ga2V5d29yZCBtYXBJ
ZGVudGlmaWVyCUtFWUlNQUdFIEtFWVNJWkUgS0VZU1BBQ0lORwpzeW4ga2V5
d29yZCBtYXBJZGVudGlmaWVyCUxBQkVMQU5HTEVJVEVNIExBQkVMQ0FDSEUg
TEFCRUxGT1JNQVQgTEFCRUxJVEVNIExBQkVMTUFYU0NBTEUgTEFCRUxNSU5T
Q0FMRSBMQUJFTFJFUVVJUkVTIExBQkVMU0laRUlURU0gTEFUTE9OIExJTkVD
QVAgTElORUpPSU4gTElORUpPSU5NQVhTSVpFIExPRwpzeW4ga2V5d29yZCBt
YXBJZGVudGlmaWVyCU1BUktFUiBNQVJLRVJTSVpFIE1BWEFSQ1MgTUFYQk9Y
U0laRSBNQVhGRUFUVVJFUyBNQVhJTlRFUlZBTCBNQVhTQ0FMRSBNQVhTSVpF
IE1BWFNVQkRJVklERSBNQVhURU1QTEFURSBNSU1FVFlQRQpzeW4ga2V5d29y
ZCBtYXBJZGVudGlmaWVyCU1JTkFSQ1MgTUlOQk9YU0laRSBNSU5ESVNUQU5D
RSBNSU5GRUFUVVJFU0laRSBNSU5JTlRFUlZBTCBNSU5TQ0FMRSBNSU5TSVpF
IE1JTlNVQkRJVklERSBNSU5URU1QTEFURQpzeW4ga2V5d29yZCBtYXBJZGVu
dGlmaWVyCU5BTUUKc3luIGtleXdvcmQgbWFwSWRlbnRpZmllcglPRkZTRVQg
T0ZGU0lURSBPVVRMSU5FQ09MT1IgT1ZFUkxBWUJBQ0tHUk9VTkRDT0xPUiBP
VkVSTEFZQ09MT1IgT1ZFUkxBWU1BWFNJWkUgT1ZFUkxBWU1JTlNJWkUgT1ZF
UkxBWU9VVExJTkVDT0xPUiBPVkVSTEFZU0laRSBPVkVSTEFZU1lNQk9MCnN5
biBrZXl3b3JkIG1hcElkZW50aWZpZXIJUEFSVElBTFMgUE9JTlRTIFBPU0lU
SU9OIFBPU1RMQUJFTENBQ0hFIFBST0NFU1NJTkcKc3luIGtleXdvcmQgbWFw
SWRlbnRpZmllcglSRVFVSVJFUyBSRVNPTFVUSU9OCnN5biBrZXl3b3JkIG1h
cElkZW50aWZpZXIJU0NBTEUgU0hBRE9XQ09MT1IgU0hBRE9XU0laRSBTSEFQ
RVBBVEggU0laRSBTSVpFVU5JVFMgU1RBVFVTIFNUWUxFSVRFTSBTWU1CT0xT
Q0FMRSBTWU1CT0xTRVQKc3luIGtleXdvcmQgbWFwSWRlbnRpZmllcglUQUJM
RSBURU1QTEFURSBURU1QTEFURVBBVFRFUk4gVEVYVCBUSUxFSU5ERVggVElM
RUlURU0gVElUTEUgVE8gVE9MRVJBTkNFIFRPTEVSQU5DRVVOSVRTIFRSQU5T
Rk9STSBUUkFOU1BBUkVOQ1kgVFJBTlNQQVJFTltUXSBUWVBFCnN5biBrZXl3
b3JkIG1hcElkZW50aWZpZXIJVU5JVFMgV01TX0FCU1RSQUNUIFdNU19BQ0NF
U1NDT05TVFJBSU5UUyBXTVNfT05MSU5FUkVTT1VSQ0UgV01TX1NSUyBXTVNf
VElUTEUgV1JBUAoKIiBHZW5lcmFsIGtleXdvcmRzIHRoaXJkIG9yZGVyCnN5
biBrZXl3b3JkIG1hcEtleXdvcmQJCUFOTk9UQVRJT04gQVVUTyBCRVZFTCBC
SVRNQVAgQlVUVCAKc3luIGtleXdvcmQgbWFwS2V5d29yZAkJQ0FSVE9MSU5F
IENDIENJUkNMRSBDTCBDUiBDU1YgREQgREVGQVVMVApzeW4ga2V5d29yZCBt
YXBLZXl3b3JkCQlFTExJUFNFIEVNQkVEIEZBTFNFIEZFRVQgR0lBTlQgSElM
SVRFIElOQ0hFUwpzeW4ga2V5d29yZCBtYXBLZXl3b3JkCQlLSUxPTUVURVJT
IExBUkdFIExDIExJTkUgTEwgTFIKc3luIGtleXdvcmQgbWFwS2V5d29yZAkJ
TUVESVVNIE1FVEVSUyBNSUxFUyBNSVRFUiBNVUxUSVBMRSBNWUdJUyBOT1JN
QUwKc3luIGtleXdvcmQgbWFwS2V5d29yZAkJT0ZGIE9HUiBPTiBPTkUtVE8t
TUFOWSBPTkUtVE8tT05FIE9SQUNMRVNQQVRJQUwKc3luIGtleXdvcmQgbWFw
S2V5d29yZAkJUElYRUxTIFBJWE1BUCBQT0lOVCBQT0xZR09OIFBPU1RHSVMg
UVVFUlkgUkFTVEVSIFJPVU5ECnN5biBrZXl3b3JkIG1hcEtleXdvcmQJCVNE
RSBTRUxFQ1RFRCBTSU1QTEUgU0lOR0xFIFNNQUxMIFNRVUFSRQpzeW4ga2V5
d29yZCBtYXBLZXl3b3JkCQlUSU5ZIFRSSUFOR0xFIFRSVUUgVFJVRVRZUEUg
VUMgVUwgVVIgVkVDVE9SIFdGUyBXTVMKCiIga2V5d29yZHMgZm9yIG90aGVy
IHB1cnBvc2VzCnN5biBrZXl3b3JkIG1hcFR5cGVkZWYJCVNFTEVDVElPTgoK
IiBDb21tZW50CnN5biBtYXRjaCBtYXBDb21tZW50CQkiIy4qIgoKIiBTdHJp
bmdzIChzaW5nbGUtIGFuZCBkb3VibGUtcXVvdGUpCnN5biByZWdpb24gbWFw
U3RyaW5nCQkgc3RhcnQ9KyIrICBza2lwPStcXFxcXHxcXCIrICBlbmQ9KyIr
CnN5biByZWdpb24gbWFwU3RyaW5nCQkgc3RhcnQ9KycrICBza2lwPStcXFxc
XHxcXCcrICBlbmQ9KycrCgoiIE51bWJlcnMgYW5kIGhleGlkZWNpbWFsIHZh
bHVlcwpzeW4gbWF0Y2ggbWFwTnVtYmVyCQkJIi1cPVw8WzAtOV0qXD4iCnN5
biBtYXRjaCBtYXBOdW1iZXIJCQkiXDwweFthYmNkZWZBQkNERUYwLTldKlw+
IgoKIiBPcGVyYXRvcnMKc3luIG1hdGNoIG1hcE9wZXJhdG9yCQkiRVEiCnN5
biBtYXRjaCBtYXBPcGVyYXRvcgkJIls+PHxcPSYhJC9cXCgpXFtcXV0iCgoK
IiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgoiIEZvciB2ZXJz
aW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVh
ZHkKIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4g
aXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAppZiB2ZXJzaW9u
ID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWFwX3N5bl9pbml0cyIpCiAgaWYg
dmVyc2lvbiA8IDUwOAogICAgbGV0IGRpZF9tYXBfc3luX2luaXRzID0gMQog
ICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KICBl
bHNlCiAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8
YXJncz4KICBlbmRpZgoKICBIaUxpbmsgbWFwQ29tbWVudAkJQ29tbWVudAog
IEhpTGluayBtYXBLZXl3b3JkCQlLZXl3b3JkCiAgSGlMaW5rIG1hcElkZW50
aWZpZXIJSWRlbnRpZmllcgogIEhpTGluayBtYXBEZWZpbmUJCURlZmluZQog
IEhpTGluayBtYXBUeXBlZGVmCQlUeXBlZGVmCiAgSGlMaW5rIG1hcE51bWJl
cgkJTnVtYmVyCiAgSGlMaW5rIG1hcFN0cmluZwkJU3RyaW5nCiAgSGlMaW5r
IG1hcE9wZXJhdG9yCU9wZXJhdG9yCgogIGRlbGNvbW1hbmQgSGlMaW5rCmVu
ZGlmCgpsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJtYXAiCgoiIHZpbTogdHM9
OAo=


------=_NextPart_000_115b_5804_7070--



More information about the mapserver-users mailing list