1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- " Vim syntax file
- " Language: Modsim III, by compuware corporation (www.compuware.com)
- " Maintainer: Philipp Jocham <flip@sbox.tu-graz.ac.at>
- " Extension: *.mod
- " Last Change: 2001 May 10
- "
- " 2001 March 24:
- " - Modsim III is a registered trademark from compuware corporation
- " - made compatible with Vim 6.0
- "
- " 1999 Apr 22 : Changed modsim3Literal from region to match
- "
- " very basic things only (based on the modula2 and c files).
- " quit when a syntax file was already loaded
- if exists("b:current_syntax")
- finish
- endif
- " syn case match " case sensitiv match is default
- " A bunch of keywords
- syn keyword modsim3Keyword ACTID ALL AND AS ASK
- syn keyword modsim3Keyword BY CALL CASE CLASS CONST DIV
- syn keyword modsim3Keyword DOWNTO DURATION ELSE ELSIF EXIT FALSE FIXED FOR
- syn keyword modsim3Keyword FOREACH FORWARD IF IN INHERITED INOUT
- syn keyword modsim3Keyword INTERRUPT LOOP
- syn keyword modsim3Keyword MOD MONITOR NEWVALUE
- syn keyword modsim3Keyword NONMODSIM NOT OBJECT OF ON OR ORIGINAL OTHERWISE OUT
- syn keyword modsim3Keyword OVERRIDE PRIVATE PROTO REPEAT
- syn keyword modsim3Keyword RETURN REVERSED SELF STRERR TELL
- syn keyword modsim3Keyword TERMINATE THISMETHOD TO TRUE TYPE UNTIL VALUE VAR
- syn keyword modsim3Keyword WAIT WAITFOR WHEN WHILE WITH
- " Builtin functions and procedures
- syn keyword modsim3Builtin ABS ACTIVATE ADDMONITOR CAP CHARTOSTR CHR CLONE
- syn keyword modsim3Builtin DEACTIVATE DEC DISPOSE FLOAT GETMONITOR HIGH INC
- syn keyword modsim3Builtin INPUT INSERT INTTOSTR ISANCESTOR LOW LOWER MAX MAXOF
- syn keyword modsim3Builtin MIN MINOF NEW OBJTYPEID OBJTYPENAME OBJVARID ODD
- syn keyword modsim3Builtin ONERROR ONEXIT ORD OUTPUT POSITION PRINT REALTOSTR
- syn keyword modsim3Builtin REPLACE REMOVEMONITOR ROUND SCHAR SIZEOF SPRINT
- syn keyword modsim3Builtin STRLEN STRTOCHAR STRTOINT STRTOREAL SUBSTR TRUNC
- syn keyword modsim3Builtin UPDATEVALUE UPPER VAL
- syn keyword modsim3BuiltinNoParen HALT TRACE
- " Special keywords
- syn keyword modsim3Block PROCEDURE METHOD MODULE MAIN DEFINITION IMPLEMENTATION
- syn keyword modsim3Block BEGIN END
- syn keyword modsim3Include IMPORT FROM
- syn keyword modsim3Type ANYARRAY ANYOBJ ANYREC ARRAY BOOLEAN CHAR INTEGER
- syn keyword modsim3Type LMONITORED LRMONITORED NILARRAY NILOBJ NILREC REAL
- syn keyword modsim3Type RECORD RMONITOR RMONITORED STRING
- " catch errros cause by wrong parenthesis
- " slight problem with "( *)" or "(* )". Hints?
- syn region modsim3Paren transparent start='(' end=')' contains=ALLBUT,modsim3ParenError
- syn match modsim3ParenError ")"
- " Comments
- syn region modsim3Comment1 start="{" end="}" contains=modsim3Comment1,modsim3Comment2
- syn region modsim3Comment2 start="(\*" end="\*)" contains=modsim3Comment1,modsim3Comment2
- " highlighting is wrong for constructs like "{ (* } *)",
- " which are allowed in Modsim III, but
- " I think something like that shouldn't be used anyway.
- " Strings
- syn region modsim3String start=+"+ end=+"+
- " Literals
- "syn region modsim3Literal start=+'+ end=+'+
- syn match modsim3Literal "'[^']'\|''''"
- " Define the default highlighting.
- " Only when an item doesn't have highlighting yet
- " The default methods for highlighting. Can be overridden later
- hi def link modsim3Keyword Statement
- hi def link modsim3Block Statement
- hi def link modsim3Comment1 Comment
- hi def link modsim3Comment2 Comment
- hi def link modsim3String String
- hi def link modsim3Literal Character
- hi def link modsim3Include Statement
- hi def link modsim3Type Type
- hi def link modsim3ParenError Error
- hi def link modsim3Builtin Function
- hi def link modsim3BuiltinNoParen Function
- let b:current_syntax = "modsim3"
- " vim: ts=8 sw=2
|