mirror of
				https://github.com/JKorf/CryptoExchange.Net
				synced 2025-10-29 17:37:26 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			86 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /*
 | |
| Language: TOML, also INI
 | |
| Description: TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics.
 | |
| Contributors: Guillaume Gomez <guillaume1.gomez@gmail.com>
 | |
| Category: common, config
 | |
| Website: https://github.com/toml-lang/toml
 | |
| */
 | |
| 
 | |
| export default function(hljs) {
 | |
|   var NUMBERS = {
 | |
|     className: 'number',
 | |
|     relevance: 0,
 | |
|     variants: [
 | |
|       { begin: /([\+\-]+)?[\d]+_[\d_]+/ },
 | |
|       { begin: hljs.NUMBER_RE }
 | |
|     ]
 | |
|   };
 | |
|   var COMMENTS = hljs.COMMENT();
 | |
|   COMMENTS.variants = [
 | |
|     {begin: /;/, end: /$/},
 | |
|     {begin: /#/, end: /$/},
 | |
|   ];
 | |
|   var VARIABLES = {
 | |
|     className: 'variable',
 | |
|     variants: [
 | |
|       { begin: /\$[\w\d"][\w\d_]*/ },
 | |
|       { begin: /\$\{(.*?)}/ }
 | |
|     ]
 | |
|   };
 | |
|   var LITERALS = {
 | |
|     className: 'literal',
 | |
|     begin: /\bon|off|true|false|yes|no\b/
 | |
|   };
 | |
|   var STRINGS = {
 | |
|     className: "string",
 | |
|     contains: [hljs.BACKSLASH_ESCAPE],
 | |
|     variants: [
 | |
|       { begin: "'''", end: "'''", relevance: 10 },
 | |
|       { begin: '"""', end: '"""', relevance: 10 },
 | |
|       { begin: '"', end: '"' },
 | |
|       { begin: "'", end: "'" }
 | |
|     ]
 | |
|   };
 | |
|   var ARRAY = {
 | |
|     begin: /\[/, end: /\]/,
 | |
|     contains: [
 | |
|       COMMENTS,
 | |
|       LITERALS,
 | |
|       VARIABLES,
 | |
|       STRINGS,
 | |
|       NUMBERS,
 | |
|       'self'
 | |
|     ],
 | |
|     relevance:0
 | |
|   };
 | |
| 
 | |
|   return {
 | |
|     name: 'TOML, also INI',
 | |
|     aliases: ['toml'],
 | |
|     case_insensitive: true,
 | |
|     illegal: /\S/,
 | |
|     contains: [
 | |
|       COMMENTS,
 | |
|       {
 | |
|         className: 'section',
 | |
|         begin: /\[+/, end: /\]+/
 | |
|       },
 | |
|       {
 | |
|         begin: /^[a-z0-9\[\]_\.-]+(?=\s*=\s*)/,
 | |
|         className: 'attr',
 | |
|         starts: {
 | |
|           end: /$/,
 | |
|           contains: [
 | |
|             COMMENTS,
 | |
|             ARRAY,
 | |
|             LITERALS,
 | |
|             VARIABLES,
 | |
|             STRINGS,
 | |
|             NUMBERS
 | |
|           ]
 | |
|         }
 | |
|       }
 | |
|     ]
 | |
|   };
 | |
| }
 |