view runtime/syntax/omnimark.vim @ 33096:828bcb1a37e7 v9.0.1833

patch 9.0.1833: [security] runtime file fixes Commit: https://github.com/vim/vim/commit/816fbcc262687b81fc46f82f7bbeb1453addfe0c Author: Christian Brabandt <cb@256bit.org> Date: Thu Aug 31 23:52:30 2023 +0200 patch 9.0.1833: [security] runtime file fixes Problem: runtime files may execute code in current dir Solution: only execute, if not run from current directory The perl, zig and ruby filetype plugins and the zip and gzip autoload plugins may try to load malicious executable files from the current working directory. This is especially a problem on windows, where the current directory is implicitly in your $PATH and windows may even run a file with the extension `.bat` because of $PATHEXT. So make sure that we are not trying to execute a file from the current directory. If this would be the case, error out (for the zip and gzip) plugins or silently do not run those commands (for the ftplugins). This assumes, that only the current working directory is bad. For all other directories, it is assumed that those directories were intentionally set to the $PATH by the user. Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Fri, 01 Sep 2023 00:00:02 +0200
parents 46763b01cd9a
children
line wrap: on
line source

" Vim syntax file
" Language:	Omnimark
" Maintainer:	Paul Terray <mailto:terray@4dconcept.fr>
" Last Change:	11 Oct 2000

" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

setlocal iskeyword=@,48-57,_,128-167,224-235,-

syn keyword omnimarkKeywords	ACTIVATE AGAIN
syn keyword omnimarkKeywords	CATCH CLEAR CLOSE COPY COPY-CLEAR CROSS-TRANSLATE
syn keyword omnimarkKeywords	DEACTIVATE DECLARE DECREMENT DEFINE DISCARD DIVIDE DO DOCUMENT-END DOCUMENT-START DONE DTD-START
syn keyword omnimarkKeywords	ELEMENT ELSE ESCAPE EXIT
syn keyword omnimarkKeywords	FAIL FIND FIND-END FIND-START FORMAT
syn keyword omnimarkKeywords	GROUP
syn keyword omnimarkKeywords	HALT HALT-EVERYTHING
syn keyword omnimarkKeywords	IGNORE IMPLIED INCLUDE INCLUDE-END INCLUDE-START INCREMENT INPUT
syn keyword omnimarkKeywords	JOIN
syn keyword omnimarkKeywords	LINE-END LINE-START LOG LOOKAHEAD
syn keyword omnimarkKeywords	MACRO
syn keyword omnimarkKeywords	MACRO-END MARKED-SECTION MARKUP-COMMENT MARKUP-ERROR MARKUP-PARSER MASK MATCH MINUS MODULO
syn keyword omnimarkKeywords	NEW NEWLINE NEXT
syn keyword omnimarkKeywords	OPEN OUTPUT OUTPUT-TO OVER
syn keyword omnimarkKeywords	PROCESS PROCESS-END PROCESS-START PROCESSING-INSTRUCTION PROLOG-END PROLOG-IN-ERROR PUT
syn keyword omnimarkKeywords	REMOVE REOPEN REPEAT RESET RETHROW RETURN
syn keyword omnimarkKeywords	WHEN WHITE-SPACE
syn keyword omnimarkKeywords	SAVE SAVE-CLEAR SCAN SELECT SET SGML SGML-COMMENT SGML-DECLARATION-END SGML-DTD SGML-DTDS SGML-ERROR SGML-IN SGML-OUT SGML-PARSE SGML-PARSER SHIFT SUBMIT SUCCEED SUPPRESS
syn keyword omnimarkKeywords	SYSTEM-CALL
syn keyword omnimarkKeywords	TEST-SYSTEM THROW TO TRANSLATE
syn keyword omnimarkKeywords	UC UL UNLESS UP-TRANSLATE
syn keyword omnimarkKeywords	XML-PARSE

syn keyword omnimarkCommands	ACTIVE AFTER ANCESTOR AND ANOTHER ARG AS ATTACHED ATTRIBUTE ATTRIBUTES
syn keyword omnimarkCommands	BASE BEFORE BINARY BINARY-INPUT BINARY-MODE BINARY-OUTPUT BREAK-WIDTH BUFFER BY
syn keyword omnimarkCommands	CASE CHILDREN CLOSED COMPILED-DATE COMPLEMENT CONREF CONTENT CONTEXT-TRANSLATE COUNTER CREATED CREATING CREATOR CURRENT
syn keyword omnimarkCommands	DATA-ATTRIBUTE DATA-ATTRIBUTES DATA-CONTENT DATA-LETTERS DATE DECLARED-CONREF DECLARED-CURRENT DECLARED-DEFAULTED DECLARED-FIXED DECLARED-IMPLIED DECLARED-REQUIRED
syn keyword omnimarkCommands	DEFAULT-ENTITY DEFAULTED DEFAULTING DELIMITER DIFFERENCE DIRECTORY DOCTYPE DOCUMENT DOCUMENT-ELEMENT DOMAIN-FREE DOWN-TRANSLATE DTD DTD-END DTDS
syn keyword omnimarkCommands	ELEMENTS ELSEWHERE EMPTY ENTITIES ENTITY EPILOG-START EQUAL EXCEPT EXISTS EXTERNAL EXTERNAL-DATA-ENTITY EXTERNAL-ENTITY EXTERNAL-FUNCTION EXTERNAL-OUTPUT-FUNCTION
syn keyword omnimarkCommands	EXTERNAL-TEXT-ENTITY
syn keyword omnimarkCommands	FALSE FILE FUNCTION FUNCTION-LIBRARY
syn keyword omnimarkCommands	GENERAL GLOBAL GREATER-EQUAL GREATER-THAN GROUPS
syn keyword omnimarkCommands	HAS HASNT HERALDED-NAMES
syn keyword omnimarkCommands	ID ID-CHECKING IDREF IDREFS IN IN-LIBRARY INCLUSION INITIAL INITIAL-SIZE INSERTION-BREAK INSTANCE INTERNAL INVALID-DATA IS ISNT ITEM
syn keyword omnimarkCommands	KEY KEYED
syn keyword omnimarkCommands	LAST LASTMOST LC LENGTH LESS-EQUAL LESS-THAN LETTERS LIBRARY LITERAL LOCAL
syn keyword omnimarkCommands	MATCHES MIXED MODIFIABLE
syn keyword omnimarkCommands	NAME NAME-LETTERS NAMECASE NAMED NAMES NDATA-ENTITY NEGATE NESTED-REFERENTS NMTOKEN NMTOKENS NO NO-DEFAULT-IO NON-CDATA NON-IMPLIED NON-SDATA NOT NOTATION NUMBER-OF NUMBERS
syn keyword omnimarkCommands	NUTOKEN NUTOKENS
syn keyword omnimarkCommands	OCCURRENCE OF OPAQUE OPTIONAL OR
syn keyword omnimarkCommands	PARAMETER PARENT PAST PATTERN PLUS PREPARENT PREVIOUS PROPER PUBLIC
syn keyword omnimarkCommands	READ-ONLY READABLE REFERENT REFERENTS REFERENTS-ALLOWED REFERENTS-DISPLAYED REFERENTS-NOT-ALLOWED REMAINDER REPEATED REPLACEMENT-BREAK REVERSED
syn keyword omnimarkCommands	SILENT-REFERENT SIZE SKIP SOURCE SPECIFIED STATUS STREAM SUBDOC-ENTITY SUBDOCUMENT SUBDOCUMENTS SUBELEMENT SWITCH SYMBOL SYSTEM
syn keyword omnimarkCommands	TEXT-MODE THIS TIMES TOKEN TRUE
syn keyword omnimarkCommands	UNANCHORED UNATTACHED UNION USEMAP USING
syn keyword omnimarkCommands	VALUE VALUED VARIABLE
syn keyword omnimarkCommands	WITH WRITABLE
syn keyword omnimarkCommands	XML XML-DTD XML-DTDS
syn keyword omnimarkCommands	YES
syn keyword omnimarkCommands	#ADDITIONAL-INFO #APPINFO #CAPACITY #CHARSET #CLASS #COMMAND-LINE-NAMES #CONSOLE #CURRENT-INPUT #CURRENT-OUTPUT #DATA #DOCTYPE #DOCUMENT #DTD #EMPTY #ERROR #ERROR-CODE
syn keyword omnimarkCommands	#FILE-NAME #FIRST #GROUP #IMPLIED #ITEM #LANGUAGE-VERSION #LAST #LIBPATH #LIBRARY #LIBVALUE #LINE-NUMBER #MAIN-INPUT #MAIN-OUTPUT #MARKUP-ERROR-COUNT #MARKUP-ERROR-TOTAL
syn keyword omnimarkCommands	#MARKUP-PARSER #MARKUP-WARNING-COUNT #MARKUP-WARNING-TOTAL #MESSAGE #NONE #OUTPUT #PLATFORM-INFO #PROCESS-INPUT #PROCESS-OUTPUT #RECOVERY-INFO #SGML #SGML-ERROR-COUNT
syn keyword omnimarkCommands	#SGML-ERROR-TOTAL #SGML-WARNING-COUNT #SGML-WARNING-TOTAL #SUPPRESS #SYNTAX #!

syn keyword omnimarkPatterns	ANY ANY-TEXT
syn keyword omnimarkPatterns	BLANK
syn keyword omnimarkPatterns	CDATA CDATA-ENTITY CONTENT-END CONTENT-START
syn keyword omnimarkPatterns	DIGIT
syn keyword omnimarkPatterns	LETTER
syn keyword omnimarkPatterns	NUMBER
syn keyword omnimarkPatterns	PCDATA
syn keyword omnimarkPatterns	RCDATA
syn keyword omnimarkPatterns	SDATA SDATA-ENTITY SPACE
syn keyword omnimarkPatterns	TEXT
syn keyword omnimarkPatterns	VALUE-END VALUE-START
syn keyword omnimarkPatterns	WORD-END WORD-START

syn region  omnimarkComment	start=";" end="$"

" strings
syn region  omnimarkString		matchgroup=Normal start=+'+  end=+'+ skip=+%'+ contains=omnimarkEscape
syn region  omnimarkString		matchgroup=Normal start=+"+  end=+"+ skip=+%"+ contains=omnimarkEscape
syn match  omnimarkEscape contained +%.+
syn match  omnimarkEscape contained +%[0-9][0-9]#+

"syn sync maxlines=100
syn sync minlines=2000

" Define the default highlighting.
" Only when an item doesn't have highlighting yet

hi def link omnimarkCommands		Statement
hi def link omnimarkKeywords		Identifier
hi def link omnimarkString		String
hi def link omnimarkPatterns		Macro
"  hi def link omnimarkNumber			Number
hi def link omnimarkComment		Comment
hi def link omnimarkEscape		Special


let b:current_syntax = "omnimark"

" vim: ts=8