12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- /*
- Language: Batch file (DOS)
- Author: Alexander Makarov <sam@rmcreative.ru>
- Contributors: Anton Kochkov <anton.kochkov@gmail.com>
- Website: https://en.wikipedia.org/wiki/Batch_file
- */
- /** @type LanguageFn */
- function dos(hljs) {
- const COMMENT = hljs.COMMENT(
- /^\s*@?rem\b/, /$/,
- {
- relevance: 10
- }
- );
- const LABEL = {
- className: 'symbol',
- begin: '^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)',
- relevance: 0
- };
- return {
- name: 'Batch file (DOS)',
- aliases: [
- 'bat',
- 'cmd'
- ],
- case_insensitive: true,
- illegal: /\/\*/,
- keywords: {
- keyword:
- 'if else goto for in do call exit not exist errorlevel defined ' +
- 'equ neq lss leq gtr geq',
- built_in:
- 'prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux ' +
- 'shift cd dir echo setlocal endlocal set pause copy ' +
- 'append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color ' +
- 'comp compact convert date dir diskcomp diskcopy doskey erase fs ' +
- 'find findstr format ftype graftabl help keyb label md mkdir mode more move path ' +
- 'pause print popd pushd promt rd recover rem rename replace restore rmdir shift ' +
- 'sort start subst time title tree type ver verify vol ' +
- // winutils
- 'ping net ipconfig taskkill xcopy ren del'
- },
- contains: [
- {
- className: 'variable',
- begin: /%%[^ ]|%[^ ]+?%|![^ ]+?!/
- },
- {
- className: 'function',
- begin: LABEL.begin,
- end: 'goto:eof',
- contains: [
- hljs.inherit(hljs.TITLE_MODE, {
- begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'
- }),
- COMMENT
- ]
- },
- {
- className: 'number',
- begin: '\\b\\d+',
- relevance: 0
- },
- COMMENT
- ]
- };
- }
- module.exports = dos;
|