173 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			XML
		
	
	
			
		
		
	
	
			173 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			XML
		
	
	
<?xml version="1.0"?>
 | 
						|
 | 
						|
<!DOCTYPE MODE SYSTEM "xmode.dtd">
 | 
						|
 | 
						|
<!--
 | 
						|
	09-10-2003 - Mirco Bova
 | 
						|
	Added some new batch commands using win2K help as reference.
 | 
						|
 | 
						|
	04-12-2001 - Mirco Bova
 | 
						|
	this file is based on the original JEdit batch.xml mode.
 | 
						|
	The main upgrade consisting in adding the standard MS-DOS
 | 
						|
	commands as keywords and functions:
 | 
						|
	- keywords =		internal shell commands;
 | 
						|
	-	functions =		standard MS-DOS commands (.exe or .com in DOS or
 | 
						|
									windows\command directory).
 | 
						|
 | 
						|
	Minor enhancements by Alex Jacoby on 28-feb-2003
 | 
						|
-->
 | 
						|
 | 
						|
<!-- The keywords and functions here defined are those of MS-DOS 6.22,
 | 
						|
		 plus a few as of Windows XP.
 | 
						|
 -->
 | 
						|
 | 
						|
<MODE>
 | 
						|
	<PROPS>
 | 
						|
		<PROPERTY NAME="lineComment" VALUE="rem" />
 | 
						|
		<PROPERTY NAME="indentOpenBrackets" VALUE="(" />
 | 
						|
		<PROPERTY NAME="indentCloseBrackets" VALUE=")" />
 | 
						|
	</PROPS>
 | 
						|
	<RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">
 | 
						|
		<!-- 'echo off' statements -->
 | 
						|
		<SEQ TYPE="KEYWORD3">@</SEQ>
 | 
						|
 | 
						|
		<SEQ TYPE="OPERATOR">+</SEQ>
 | 
						|
		<SEQ TYPE="OPERATOR">|</SEQ>
 | 
						|
		<SEQ TYPE="OPERATOR">&</SEQ>
 | 
						|
		<SEQ TYPE="OPERATOR">!</SEQ>
 | 
						|
		<SEQ TYPE="OPERATOR">></SEQ>
 | 
						|
		<SEQ TYPE="OPERATOR"><</SEQ>
 | 
						|
 | 
						|
		<!-- labels - eg ":test" or "goto :test" -->
 | 
						|
		<MARK_FOLLOWING AT_WORD_START="TRUE" TYPE="LABEL">:</MARK_FOLLOWING>
 | 
						|
 | 
						|
		<!-- comments -->
 | 
						|
		<EOL_SPAN_REGEXP AT_WHITESPACE_END="TRUE" HASH_CHAR="REM" TYPE="COMMENT1">REM\s</EOL_SPAN_REGEXP>
 | 
						|
 | 
						|
		<!-- literals -->
 | 
						|
		<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
 | 
						|
			<BEGIN>"</BEGIN>
 | 
						|
			<END>"</END>
 | 
						|
		</SPAN>
 | 
						|
 | 
						|
		<!-- variables -->
 | 
						|
		<SEQ TYPE="KEYWORD2">%0</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%1</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%2</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%3</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%4</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%5</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%6</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%7</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%8</SEQ>
 | 
						|
		<SEQ TYPE="KEYWORD2">%9</SEQ>
 | 
						|
		<!-- for-loop variable (one char after %%) -->
 | 
						|
		<SEQ_REGEXP TYPE="KEYWORD2"
 | 
						|
					HASH_CHAR="%%"
 | 
						|
					AT_WORD_START="TRUE"
 | 
						|
					>%%[\p{Alpha}]</SEQ_REGEXP>
 | 
						|
		<SPAN TYPE="KEYWORD2" NO_LINE_BREAK="TRUE">
 | 
						|
			<BEGIN>%</BEGIN>
 | 
						|
			<END>%</END>
 | 
						|
		</SPAN>
 | 
						|
 | 
						|
		<KEYWORDS>
 | 
						|
			<!-- KEYWORD1 are internal MS-DOS shell commands -->
 | 
						|
			<KEYWORD1>cd</KEYWORD1>
 | 
						|
			<KEYWORD1>chdir</KEYWORD1>
 | 
						|
			<KEYWORD1>md</KEYWORD1>
 | 
						|
			<KEYWORD1>mkdir</KEYWORD1>
 | 
						|
 | 
						|
			<KEYWORD1>cls</KEYWORD1>
 | 
						|
 | 
						|
			<KEYWORD1>for</KEYWORD1>
 | 
						|
			<KEYWORD1>if</KEYWORD1>
 | 
						|
 | 
						|
			<KEYWORD1>echo</KEYWORD1>
 | 
						|
			<KEYWORD1>echo.</KEYWORD1>
 | 
						|
 | 
						|
			<KEYWORD1>move</KEYWORD1>
 | 
						|
			<KEYWORD1>copy</KEYWORD1>
 | 
						|
			<KEYWORD1>move</KEYWORD1>
 | 
						|
			<KEYWORD1>ren</KEYWORD1>
 | 
						|
			<KEYWORD1>del</KEYWORD1>
 | 
						|
			<KEYWORD1>set</KEYWORD1>
 | 
						|
 | 
						|
			<!-- new KEYWORDS from Win2K help -->
 | 
						|
			<KEYWORD1>call</KEYWORD1>
 | 
						|
			<KEYWORD1>exit</KEYWORD1>
 | 
						|
			<KEYWORD1>setlocal</KEYWORD1>
 | 
						|
			<KEYWORD1>shift</KEYWORD1>
 | 
						|
			<KEYWORD1>endlocal</KEYWORD1>
 | 
						|
			<KEYWORD1>pause</KEYWORD1>
 | 
						|
 | 
						|
			<!-- KEYWORD2 are commands options -->
 | 
						|
 | 
						|
			<KEYWORD2>defined</KEYWORD2>
 | 
						|
			<KEYWORD2>exist</KEYWORD2>
 | 
						|
			<KEYWORD2>errorlevel</KEYWORD2>
 | 
						|
 | 
						|
			<!-- new KEYWORD options from Win2K help -->
 | 
						|
			<KEYWORD2>else</KEYWORD2>
 | 
						|
 | 
						|
			<KEYWORD2>in</KEYWORD2>
 | 
						|
			<KEYWORD2>do</KEYWORD2>
 | 
						|
 | 
						|
			<KEYWORD2>NUL</KEYWORD2>
 | 
						|
			<KEYWORD2>AUX</KEYWORD2>
 | 
						|
			<KEYWORD2>PRN</KEYWORD2>
 | 
						|
 | 
						|
			<KEYWORD1>not</KEYWORD1>
 | 
						|
 | 
						|
			<!-- goto is a special case we want to distinguish it -->
 | 
						|
			<KEYWORD3>goto</KEYWORD3>
 | 
						|
 | 
						|
			<!-- FUNCTION are standard MS-DOS commands -->
 | 
						|
			<!-- (those you find as stand-alone .exe or .com) in win95 %windows_root%\command folder -->
 | 
						|
			<FUNCTION>APPEND</FUNCTION>
 | 
						|
			<FUNCTION>ATTRIB</FUNCTION>
 | 
						|
			<FUNCTION>CHKDSK</FUNCTION>
 | 
						|
			<FUNCTION>CHOICE</FUNCTION>
 | 
						|
			<FUNCTION>DEBUG</FUNCTION>
 | 
						|
			<FUNCTION>DEFRAG</FUNCTION>
 | 
						|
			<FUNCTION>DELTREE</FUNCTION>
 | 
						|
			<FUNCTION>DISKCOMP</FUNCTION>
 | 
						|
			<FUNCTION>DISKCOPY</FUNCTION>
 | 
						|
			<FUNCTION>DOSKEY</FUNCTION>
 | 
						|
			<FUNCTION>DRVSPACE</FUNCTION>
 | 
						|
			<FUNCTION>EMM386</FUNCTION>
 | 
						|
			<FUNCTION>EXPAND</FUNCTION>
 | 
						|
			<FUNCTION>FASTOPEN</FUNCTION>
 | 
						|
			<FUNCTION>FC</FUNCTION>
 | 
						|
			<FUNCTION>FDISK</FUNCTION>
 | 
						|
			<FUNCTION>FIND</FUNCTION>
 | 
						|
			<FUNCTION>FORMAT</FUNCTION>
 | 
						|
			<FUNCTION>GRAPHICS</FUNCTION>
 | 
						|
			<FUNCTION>KEYB</FUNCTION>
 | 
						|
			<FUNCTION>LABEL</FUNCTION>
 | 
						|
			<FUNCTION>LOADFIX</FUNCTION>
 | 
						|
			<FUNCTION>MEM</FUNCTION>
 | 
						|
			<FUNCTION>MODE</FUNCTION>
 | 
						|
			<FUNCTION>MORE</FUNCTION>
 | 
						|
			<FUNCTION>MOVE</FUNCTION>
 | 
						|
			<FUNCTION>MSCDEX</FUNCTION>
 | 
						|
			<FUNCTION>NLSFUNC</FUNCTION>
 | 
						|
			<FUNCTION>POWER</FUNCTION>
 | 
						|
			<FUNCTION>PRINT</FUNCTION>
 | 
						|
			<FUNCTION>RD</FUNCTION>
 | 
						|
			<FUNCTION>REPLACE</FUNCTION>
 | 
						|
			<FUNCTION>RESTORE</FUNCTION>
 | 
						|
			<FUNCTION>SETVER</FUNCTION>
 | 
						|
			<FUNCTION>SHARE</FUNCTION>
 | 
						|
			<FUNCTION>SORT</FUNCTION>
 | 
						|
			<FUNCTION>SUBST</FUNCTION>
 | 
						|
			<FUNCTION>SYS</FUNCTION>
 | 
						|
			<FUNCTION>TREE</FUNCTION>
 | 
						|
			<FUNCTION>UNDELETE</FUNCTION>
 | 
						|
			<FUNCTION>UNFORMAT</FUNCTION>
 | 
						|
			<FUNCTION>VSAFE</FUNCTION>
 | 
						|
			<FUNCTION>XCOPY</FUNCTION>
 | 
						|
		</KEYWORDS>
 | 
						|
	</RULES>
 | 
						|
</MODE>
 |