mirror of
https://github.com/Funkoala14/knowledgebase_law.git
synced 2025-06-08 23:18:17 +08:00
60 lines
1.5 KiB
JavaScript
60 lines
1.5 KiB
JavaScript
'use strict'
|
|
|
|
module.exports = nginx
|
|
nginx.displayName = 'nginx'
|
|
nginx.aliases = []
|
|
function nginx(Prism) {
|
|
;(function (Prism) {
|
|
var variable =
|
|
/\$(?:\w[a-z\d]*(?:_[^\x00-\x1F\s"'\\()$]*)?|\{[^}\s"'\\]+\})/i
|
|
Prism.languages.nginx = {
|
|
comment: {
|
|
pattern: /(^|[\s{};])#.*/,
|
|
lookbehind: true,
|
|
greedy: true
|
|
},
|
|
directive: {
|
|
pattern:
|
|
/(^|\s)\w(?:[^;{}"'\\\s]|\\.|"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'|\s+(?:#.*(?!.)|(?![#\s])))*?(?=\s*[;{])/,
|
|
lookbehind: true,
|
|
greedy: true,
|
|
inside: {
|
|
string: {
|
|
pattern:
|
|
/((?:^|[^\\])(?:\\\\)*)(?:"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*')/,
|
|
lookbehind: true,
|
|
greedy: true,
|
|
inside: {
|
|
escape: {
|
|
pattern: /\\["'\\nrt]/,
|
|
alias: 'entity'
|
|
},
|
|
variable: variable
|
|
}
|
|
},
|
|
comment: {
|
|
pattern: /(\s)#.*/,
|
|
lookbehind: true,
|
|
greedy: true
|
|
},
|
|
keyword: {
|
|
pattern: /^\S+/,
|
|
greedy: true
|
|
},
|
|
// other patterns
|
|
boolean: {
|
|
pattern: /(\s)(?:off|on)(?!\S)/,
|
|
lookbehind: true
|
|
},
|
|
number: {
|
|
pattern: /(\s)\d+[a-z]*(?!\S)/i,
|
|
lookbehind: true
|
|
},
|
|
variable: variable
|
|
}
|
|
},
|
|
punctuation: /[{};]/
|
|
}
|
|
})(Prism)
|
|
}
|