mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 10:26:08 +01:00 
			
		
		
		
	feat(client/code-note): add support for batch files
This commit is contained in:
		
							
								
								
									
										51
									
								
								libraries/codemirror/batch.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								libraries/codemirror/batch.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,51 @@ | ||||
| // Source: https://github.com/deathau/cm-editor-syntax-highlight-obsidian/issues/27#issuecomment-1340586596 | ||||
| (() => { | ||||
|     var varsAndArgsRegex = /(%[0-9]|%~\S+|%\S+%)/; | ||||
|  | ||||
|     CodeMirror.defineSimpleMode("batch", { | ||||
|         start: [ | ||||
|           {	//comment | ||||
|             regex: /(rem|::)(?:\s.*|$)/i, | ||||
|             token: "comment", | ||||
|             sol: true | ||||
|           }, | ||||
|           {	//echo | ||||
|             regex: /(@echo|echo)/i, | ||||
|             token: "builtin", | ||||
|             sol: true, | ||||
|             next: "echo" | ||||
|           }, | ||||
|           {	//commands | ||||
|             regex: /(?:\s|^)(assoc|aux|break|call|cd|chcp|chdir|choice|cls|cmdextversion|color|com1|com2|com3|com4|com|con|copy|country|ctty|date|defined|del|dir|do|dpath|else|endlocal|erase|errorlevel|exist|exit|for|ftype|goto|if|in|loadfix|loadhigh|lpt|lpt1|lpt2|lpt3|lpt4|md|mkdir|move|not|nul|path|pause|popd|prn|prompt|pushd|rd|rename|ren|rmdir|setlocal|set|shift|start|time|title|type|verify|ver|vol)(?:\s|$)/i, | ||||
|             token: "builtin" | ||||
|           }, | ||||
|           {	//variables and arguments | ||||
|             regex: varsAndArgsRegex, | ||||
|             token: "variable-2" | ||||
|           }, | ||||
|           {	//label | ||||
|             regex: /\s*:.*/, | ||||
|             token: "string", | ||||
|             sol: true | ||||
|           } | ||||
|         ], | ||||
|         echo: [ | ||||
|           {	//highlight variables and arguments in echo command | ||||
|             regex: varsAndArgsRegex, | ||||
|             token: "variable-2" | ||||
|           }, | ||||
|           {	//go back to start state at end of line | ||||
|             regex: /.$/, | ||||
|             next: "start" | ||||
|           } | ||||
|         ] | ||||
|     }); | ||||
|  | ||||
|     CodeMirror.defineMIME("application/x-bat", "batch"); | ||||
|     CodeMirror.modeInfo.push({ | ||||
|         ext: [ "bat", "cmd" ], | ||||
|         mime: "application/x-bat", | ||||
|         mode: "batch", | ||||
|         name: "Batch file" | ||||
|     }); | ||||
| })(); | ||||
		Reference in New Issue
	
	Block a user