diff options
| author | ruki <waruqi@gmail.com> | 2018-11-08 00:38:48 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2018-11-07 21:53:09 +0800 |
| commit | 26105034da4fcce7ac883c899d781f016559310d (patch) | |
| tree | c459a5dc4e3aa0972d9919033ece511ce76dd129 /node_modules/prismjs/components/prism-nix.js | |
| parent | 2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff) | |
| download | xmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip | |
switch to vuepress
Diffstat (limited to 'node_modules/prismjs/components/prism-nix.js')
| -rw-r--r-- | node_modules/prismjs/components/prism-nix.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/node_modules/prismjs/components/prism-nix.js b/node_modules/prismjs/components/prism-nix.js new file mode 100644 index 00000000..84ade924 --- /dev/null +++ b/node_modules/prismjs/components/prism-nix.js @@ -0,0 +1,40 @@ +Prism.languages.nix = { + 'comment': /\/\*[\s\S]*?\*\/|#.*/, + 'string': { + pattern: /"(?:[^"\\]|\\[\s\S])*"|''(?:(?!'')[\s\S]|''(?:'|\\|\$\{))*''/, + greedy: true, + inside: { + 'interpolation': { + // The lookbehind ensures the ${} is not preceded by \ or '' + pattern: /(^|(?:^|(?!'').)[^\\])\$\{(?:[^}]|\{[^}]*\})*}/, + lookbehind: true, + inside: { + 'antiquotation': { + pattern: /^\$(?=\{)/, + alias: 'variable' + } + // See rest below + } + } + } + }, + 'url': [ + /\b(?:[a-z]{3,7}:\/\/)[\w\-+%~\/.:#=?&]+/, + { + pattern: /([^\/])(?:[\w\-+%~.:#=?&]*(?!\/\/)[\w\-+%~\/.:#=?&])?(?!\/\/)\/[\w\-+%~\/.:#=?&]*/, + lookbehind: true + } + ], + 'antiquotation': { + pattern: /\$(?=\{)/, + alias: 'variable' + }, + 'number': /\b\d+\b/, + 'keyword': /\b(?:assert|builtins|else|if|in|inherit|let|null|or|then|with)\b/, + 'function': /\b(?:abort|add|all|any|attrNames|attrValues|baseNameOf|compareVersions|concatLists|currentSystem|deepSeq|derivation|dirOf|div|elem(?:At)?|fetch(?:url|Tarball)|filter(?:Source)?|fromJSON|genList|getAttr|getEnv|hasAttr|hashString|head|import|intersectAttrs|is(?:Attrs|Bool|Function|Int|List|Null|String)|length|lessThan|listToAttrs|map|mul|parseDrvName|pathExists|read(?:Dir|File)|removeAttrs|replaceStrings|seq|sort|stringLength|sub(?:string)?|tail|throw|to(?:File|JSON|Path|String|XML)|trace|typeOf)\b|\bfoldl'\B/, + 'boolean': /\b(?:true|false)\b/, + 'operator': /[=!<>]=?|\+\+?|\|\||&&|\/\/|->?|[?@]/, + 'punctuation': /[{}()[\].,:;]/ +}; + +Prism.languages.nix.string.inside.interpolation.inside.rest = Prism.languages.nix;
\ No newline at end of file |
