123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*
- Language: AutoHotkey
- Author: Seongwon Lee <[email protected]>
- Description: AutoHotkey language definition
- Category: scripting
- */
- function(hljs) {
- var BACKTICK_ESCAPE = {
- begin: /`[\s\S]/
- };
- return {
- case_insensitive: true,
- keywords: {
- keyword: 'Break Continue Else Gosub If Loop Return While',
- literal: 'A|0 true false NOT AND OR',
- built_in: 'ComSpec Clipboard ClipboardAll ErrorLevel',
- },
- contains: [
- {
- className: 'built_in',
- begin: 'A_[a-zA-Z0-9]+'
- },
- BACKTICK_ESCAPE,
- hljs.inherit(hljs.QUOTE_STRING_MODE, {contains: [BACKTICK_ESCAPE]}),
- hljs.COMMENT(';', '$', {relevance: 0}),
- {
- className: 'number',
- begin: hljs.NUMBER_RE,
- relevance: 0
- },
- {
- className: 'variable', // FIXME
- begin: '%', end: '%',
- illegal: '\\n',
- contains: [BACKTICK_ESCAPE]
- },
- {
- className: 'symbol',
- contains: [BACKTICK_ESCAPE],
- variants: [
- {begin: '^[^\\n";]+::(?!=)'},
- {begin: '^[^\\n";]+:(?!=)', relevance: 0} // zero relevance as it catches a lot of things
- // followed by a single ':' in many languages
- ]
- },
- {
- // consecutive commas, not for highlighting but just for relevance
- begin: ',\\s*,'
- }
- ]
- }
- }
|