Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
plm.vim135 linesDownload Raw Back to syntax
1" Vim syntax file2" Language:	PL/M3" Maintainer:	Philippe Coulonges <cphil@cphil.net>4" Last change:	2003 May 115 6" quit when a syntax file was already loaded7if exists("b:current_syntax")8  finish9endif10 11" PL/M is a case insensitive language12syn case ignore13 14syn keyword plmTodo contained	TODO FIXME XXX15 16" String17syn region  plmString		start=+'+  end=+'+18 19syn match   plmOperator		"[@=\+\-\*\/\<\>]"20 21syn match   plmIdentifier	"\<[a-zA-Z_][a-zA-Z0-9_]*\>"22 23syn match   plmDelimiter	"[();,]"24 25syn region  plmPreProc		start="^\s*\$\s*" skip="\\$" end="$"26 27" FIXME : No Number support for floats, as I'm working on an embedded28" project that doesn't use any.29syn match   plmNumber		"-\=\<\d\+\>"30syn match   plmNumber		"\<[0-9a-fA-F]*[hH]*\>"31 32" If you don't like tabs33"syn match plmShowTab "\t"34"syn match plmShowTabc "\t"35 36"when wanted, highlight trailing white space37if exists("c_space_errors")38  syn match	plmSpaceError	"\s*$"39  syn match	plmSpaceError	" \+\t"me=e-140endif41 42"43  " Use the same control variable as C language for I believe44  " users will want the same behavior45if exists("c_comment_strings")46  " FIXME : don't work fine with c_comment_strings set,47  "	    which I don't care as I don't use48 49  " A comment can contain plmString, plmCharacter and plmNumber.50  " But a "*/" inside a plmString in a plmComment DOES end the comment!  So we51  " need to use a special type of plmString: plmCommentString, which also ends on52  " "*/", and sees a "*" at the start of the line as comment again.53  syntax match	plmCommentSkip	contained "^\s*\*\($\|\s\+\)"54  syntax region plmCommentString	contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=plmSpecial,plmCommentSkip55  syntax region plmComment2String	contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=plmSpecial56  syntax region plmComment	start="/\*" end="\*/" contains=plmTodo,plmCommentString,plmCharacter,plmNumber,plmFloat,plmSpaceError57  syntax match  plmComment	"//.*" contains=plmTodo,plmComment2String,plmCharacter,plmNumber,plmSpaceError58else59  syn region	plmComment	start="/\*" end="\*/" contains=plmTodo,plmSpaceError60  syn match	plmComment	"//.*" contains=plmTodo,plmSpaceError61endif62 63syntax match	plmCommentError	"\*/"64 65syn keyword plmReserved	ADDRESS AND AT BASED BY BYTE CALL CASE66syn keyword plmReserved DATA DECLARE DISABLE DO DWORD67syn keyword plmReserved	ELSE ENABLE END EOF EXTERNAL68syn keyword plmReserved GO GOTO HALT IF INITIAL INTEGER INTERRUPT69syn keyword plmReserved LABEL LITERALLY MINUS MOD NOT OR70syn keyword plmReserved PLUS POINTER PROCEDURE PUBLIC71syn keyword plmReserved REAL REENTRANT RETURN SELECTOR STRUCTURE72syn keyword plmReserved THEN TO WHILE WORD XOR73syn keyword plm386Reserved CHARINT HWORD LONGINT OFFSET QWORD SHORTINT74 75syn keyword plmBuiltIn ABS ADJUSTRPL BLOCKINPUT BLOCKINWORD BLOCKOUTPUT76syn keyword plmBuiltIn BLOCKOUTWORD BUILPTR CARRY CAUSEINTERRUPT CMPB77syn keyword plmBuiltIn CMPW DEC DOUBLE FINDB FINDRB FINDRW FINDW FIX78syn keyword plmBuiltIn FLAGS FLOAT GETREALERROR HIGH IABS INITREALMATHUNIT79syn keyword plmBuiltIn INPUT INT INWORD LAST LOCKSET LENGTH LOW MOVB MOVE80syn keyword plmBuiltIn MOVRB MOVRW MOVW NIL OUTPUT OUTWORD RESTOREREALSTATUS81syn keyword plmBuiltIn ROL ROR SAL SAVEREALSTATUS SCL SCR SELECTOROF SETB82syn keyword plmBuiltIn SETREALMODE SETW SHL SHR SIGN SIGNED SIZE SKIPB83syn keyword plmBuiltIn SKIPRB SKIPRW SKIPW STACKBASE STACKPTR TIME SIZE84syn keyword plmBuiltIn UNSIGN XLAT ZERO85syn keyword plm386BuiltIn INTERRUPT SETINTERRUPT86syn keyword plm286BuiltIn CLEARTASKSWITCHEDFLAG GETACCESSRIGHTS87syn keyword plm286BuiltIn GETSEGMENTLIMIT LOCALTABLE MACHINESTATUS88syn keyword plm286BuiltIn OFFSETOF PARITY RESTOREGLOBALTABLE89syn keyword plm286BuiltIn RESTOREINTERRUPTTABLE SAVEGLOBALTABLE90syn keyword plm286BuiltIn SAVEINTERRUPTTABLE SEGMENTREADABLE91syn keyword plm286BuiltIn SEGMENTWRITABLE TASKREGISTER WAITFORINTERRUPT92syn keyword plm386BuiltIn CONTROLREGISTER DEBUGREGISTER FINDHW93syn keyword plm386BuiltIn FINDRHW INHWORD MOVBIT MOVRBIT MOVHW MOVRHW94syn keyword plm386BuiltIn OUTHWORD SCANBIT SCANRBIT SETHW SHLD SHRD95syn keyword plm386BuiltIn SKIPHW SKIPRHW TESTREGISTER96syn keyword plm386w16BuiltIn BLOCKINDWORD BLOCKOUTDWORD CMPD FINDD97syn keyword plm386w16BuiltIn FINDRD INDWORD MOVD MOVRD OUTDWORD98syn keyword plm386w16BuiltIn SETD SKIPD SKIPRD99 100syn sync lines=50101 102" Define the default highlighting.103" Only when an item doesn't have highlighting yet104 105" The default methods for highlighting.  Can be overridden later106"  hi def link plmLabel			Label107"  hi def link plmConditional		Conditional108"  hi def link plmRepeat			Repeat109hi def link plmTodo			Todo110hi def link plmNumber			Number111hi def link plmOperator			Operator112hi def link plmDelimiter			Operator113"hi def link plmShowTab			Error114"hi def link plmShowTabc			Error115hi def link plmIdentifier			Identifier116hi def link plmBuiltIn			Statement117hi def link plm286BuiltIn			Statement118hi def link plm386BuiltIn			Statement119hi def link plm386w16BuiltIn		Statement120hi def link plmReserved			Statement121hi def link plm386Reserved			Statement122hi def link plmPreProc			PreProc123hi def link plmCommentError		plmError124hi def link plmCommentString		plmString125hi def link plmComment2String		plmString126hi def link plmCommentSkip			plmComment127hi def link plmString			String128hi def link plmComment			Comment129 130 131let b:current_syntax = "plm"132 133" vim: ts=8 sw=2134 135 
codekingpro/portable-devtools · Team Ai