prism-rails 1.5.0 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/prism-abap.js +48 -0
- data/vendor/assets/javascripts/prism-actionscript.js +17 -0
- data/vendor/assets/javascripts/prism-apacheconf.js +47 -0
- data/vendor/assets/javascripts/prism-apl.js +29 -0
- data/vendor/assets/javascripts/prism-applescript.js +20 -0
- data/vendor/assets/javascripts/prism-asciidoc.js +271 -0
- data/vendor/assets/javascripts/prism-aspnet.js +36 -0
- data/vendor/assets/javascripts/prism-autohotkey.js +27 -0
- data/vendor/assets/javascripts/prism-autoit.js +33 -0
- data/vendor/assets/javascripts/prism-bash.js +80 -0
- data/vendor/assets/javascripts/prism-basic.js +14 -0
- data/vendor/assets/javascripts/prism-batch.js +99 -0
- data/vendor/assets/javascripts/prism-bison.js +39 -0
- data/vendor/assets/javascripts/prism-brainfuck.js +20 -0
- data/vendor/assets/javascripts/prism-bro.js +50 -0
- data/vendor/assets/javascripts/prism-c.js +33 -0
- data/vendor/assets/javascripts/prism-clike.js +29 -0
- data/vendor/assets/javascripts/prism-coffeescript.js +91 -0
- data/vendor/assets/javascripts/prism-cpp.js +12 -0
- data/vendor/assets/javascripts/prism-crystal.js +53 -0
- data/vendor/assets/javascripts/prism-csharp.js +32 -0
- data/vendor/assets/javascripts/prism-css-extras.js +15 -0
- data/vendor/assets/javascripts/prism-css.js +48 -0
- data/vendor/assets/javascripts/prism-d.js +64 -0
- data/vendor/assets/javascripts/prism-dart.js +18 -0
- data/vendor/assets/javascripts/prism-diff.js +20 -0
- data/vendor/assets/javascripts/prism-docker.js +9 -0
- data/vendor/assets/javascripts/prism-eiffel.js +24 -0
- data/vendor/assets/javascripts/prism-elixir.js +90 -0
- data/vendor/assets/javascripts/prism-erlang.js +41 -0
- data/vendor/assets/javascripts/prism-fortran.js +37 -0
- data/vendor/assets/javascripts/prism-fsharp.js +33 -0
- data/vendor/assets/javascripts/prism-gherkin.js +78 -0
- data/vendor/assets/javascripts/prism-git.js +68 -0
- data/vendor/assets/javascripts/prism-glsl.js +16 -0
- data/vendor/assets/javascripts/prism-go.js +9 -0
- data/vendor/assets/javascripts/prism-groovy.js +65 -0
- data/vendor/assets/javascripts/prism-haml.js +154 -0
- data/vendor/assets/javascripts/prism-handlebars.js +83 -0
- data/vendor/assets/javascripts/prism-haskell.js +35 -0
- data/vendor/assets/javascripts/prism-haxe.js +43 -0
- data/vendor/assets/javascripts/prism-http.js +50 -0
- data/vendor/assets/javascripts/prism-icon.js +17 -0
- data/vendor/assets/javascripts/prism-inform7.js +58 -0
- data/vendor/assets/javascripts/prism-ini.js +11 -0
- data/vendor/assets/javascripts/prism-j.js +22 -0
- data/vendor/assets/javascripts/prism-jade.js +198 -0
- data/vendor/assets/javascripts/prism-java.js +16 -0
- data/vendor/assets/javascripts/prism-javascript.js +47 -0
- data/vendor/assets/javascripts/prism-json.js +11 -0
- data/vendor/assets/javascripts/prism-jsx.js +27 -0
- data/vendor/assets/javascripts/prism-julia.js +12 -0
- data/vendor/assets/javascripts/prism-keyman.js +14 -0
- data/vendor/assets/javascripts/prism-kotlin.js +62 -0
- data/vendor/assets/javascripts/prism-latex.js +61 -0
- data/vendor/assets/javascripts/prism-less.js +60 -0
- data/vendor/assets/javascripts/prism-lolcode.js +54 -0
- data/vendor/assets/javascripts/prism-lua.js +20 -0
- data/vendor/assets/javascripts/prism-makefile.js +31 -0
- data/vendor/assets/javascripts/prism-markdown.js +120 -0
- data/vendor/assets/javascripts/prism-markup.js +46 -0
- data/vendor/assets/javascripts/prism-matlab.js +14 -0
- data/vendor/assets/javascripts/prism-mel.js +39 -0
- data/vendor/assets/javascripts/prism-mizar.js +12 -0
- data/vendor/assets/javascripts/prism-monkey.js +25 -0
- data/vendor/assets/javascripts/prism-nasm.js +24 -0
- data/vendor/assets/javascripts/prism-nginx.js +11 -0
- data/vendor/assets/javascripts/prism-nim.js +30 -0
- data/vendor/assets/javascripts/prism-nix.js +39 -0
- data/vendor/assets/javascripts/prism-normalize-whitespace.js +3 -1
- data/vendor/assets/javascripts/prism-nsis.js +19 -0
- data/vendor/assets/javascripts/prism-objectivec.js +5 -0
- data/vendor/assets/javascripts/prism-ocaml.js +21 -0
- data/vendor/assets/javascripts/prism-oz.js +21 -0
- data/vendor/assets/javascripts/prism-parigp.js +27 -0
- data/vendor/assets/javascripts/prism-parser.js +66 -0
- data/vendor/assets/javascripts/prism-pascal.js +50 -0
- data/vendor/assets/javascripts/prism-perl.js +140 -0
- data/vendor/assets/javascripts/prism-php-extras.js +11 -0
- data/vendor/assets/javascripts/prism-php.js +110 -0
- data/vendor/assets/javascripts/prism-powershell.js +52 -0
- data/vendor/assets/javascripts/prism-processing.js +18 -0
- data/vendor/assets/javascripts/prism-prolog.js +17 -0
- data/vendor/assets/javascripts/prism-protobuf.js +8 -0
- data/vendor/assets/javascripts/prism-puppet.js +131 -0
- data/vendor/assets/javascripts/prism-pure.js +77 -0
- data/vendor/assets/javascripts/prism-python.js +27 -0
- data/vendor/assets/javascripts/prism-q.js +44 -0
- data/vendor/assets/javascripts/prism-qore.js +17 -0
- data/vendor/assets/javascripts/prism-r.js +19 -0
- data/vendor/assets/javascripts/prism-rest.js +205 -0
- data/vendor/assets/javascripts/prism-rip.js +28 -0
- data/vendor/assets/javascripts/prism-roboconf.js +27 -0
- data/vendor/assets/javascripts/prism-ruby.js +110 -0
- data/vendor/assets/javascripts/prism-rust.js +53 -0
- data/vendor/assets/javascripts/prism-sas.js +31 -0
- data/vendor/assets/javascripts/prism-sass.js +73 -0
- data/vendor/assets/javascripts/prism-scala.js +18 -0
- data/vendor/assets/javascripts/prism-scheme.js +26 -0
- data/vendor/assets/javascripts/prism-scss.js +60 -0
- data/vendor/assets/javascripts/prism-smalltalk.js +31 -0
- data/vendor/assets/javascripts/prism-smarty.js +127 -0
- data/vendor/assets/javascripts/prism-sql.js +17 -0
- data/vendor/assets/javascripts/prism-stylus.js +102 -0
- data/vendor/assets/javascripts/prism-swift.js +25 -0
- data/vendor/assets/javascripts/prism-tcl.js +43 -0
- data/vendor/assets/javascripts/prism-textile.js +254 -0
- data/vendor/assets/javascripts/prism-twig.js +46 -0
- data/vendor/assets/javascripts/prism-typescript.js +3 -0
- data/vendor/assets/javascripts/prism-verilog.js +17 -0
- data/vendor/assets/javascripts/prism-vhdl.js +23 -0
- data/vendor/assets/javascripts/prism-vim.js +10 -0
- data/vendor/assets/javascripts/prism-wiki.js +81 -0
- data/vendor/assets/javascripts/prism-yaml.js +44 -0
- data/vendor/assets/javascripts/prism.js +37 -308
- data/vendor/assets/stylesheets/prism-vs.css +139 -0
- metadata +120 -163
- data/vendor/assets/javascripts/prism-abap.min.js +0 -1
- data/vendor/assets/javascripts/prism-actionscript.min.js +0 -1
- data/vendor/assets/javascripts/prism-apacheconf.min.js +0 -1
- data/vendor/assets/javascripts/prism-apl.min.js +0 -1
- data/vendor/assets/javascripts/prism-applescript.min.js +0 -1
- data/vendor/assets/javascripts/prism-asciidoc.min.js +0 -1
- data/vendor/assets/javascripts/prism-aspnet.min.js +0 -1
- data/vendor/assets/javascripts/prism-autohotkey.min.js +0 -1
- data/vendor/assets/javascripts/prism-autoit.min.js +0 -1
- data/vendor/assets/javascripts/prism-bash.min.js +0 -1
- data/vendor/assets/javascripts/prism-basic.min.js +0 -1
- data/vendor/assets/javascripts/prism-batch.min.js +0 -1
- data/vendor/assets/javascripts/prism-bison.min.js +0 -1
- data/vendor/assets/javascripts/prism-brainfuck.min.js +0 -1
- data/vendor/assets/javascripts/prism-bro.min.js +0 -1
- data/vendor/assets/javascripts/prism-c.min.js +0 -1
- data/vendor/assets/javascripts/prism-clike.min.js +0 -1
- data/vendor/assets/javascripts/prism-coffeescript.min.js +0 -1
- data/vendor/assets/javascripts/prism-core.min.js +0 -1
- data/vendor/assets/javascripts/prism-cpp.min.js +0 -1
- data/vendor/assets/javascripts/prism-crystal.min.js +0 -1
- data/vendor/assets/javascripts/prism-csharp.min.js +0 -1
- data/vendor/assets/javascripts/prism-css-extras.min.js +0 -1
- data/vendor/assets/javascripts/prism-css.min.js +0 -1
- data/vendor/assets/javascripts/prism-d.min.js +0 -1
- data/vendor/assets/javascripts/prism-dart.min.js +0 -1
- data/vendor/assets/javascripts/prism-diff.min.js +0 -1
- data/vendor/assets/javascripts/prism-docker.min.js +0 -1
- data/vendor/assets/javascripts/prism-eiffel.min.js +0 -1
- data/vendor/assets/javascripts/prism-elixir.min.js +0 -1
- data/vendor/assets/javascripts/prism-erlang.min.js +0 -1
- data/vendor/assets/javascripts/prism-fortran.min.js +0 -1
- data/vendor/assets/javascripts/prism-fsharp.min.js +0 -1
- data/vendor/assets/javascripts/prism-gherkin.min.js +0 -1
- data/vendor/assets/javascripts/prism-git.min.js +0 -1
- data/vendor/assets/javascripts/prism-glsl.min.js +0 -1
- data/vendor/assets/javascripts/prism-go.min.js +0 -1
- data/vendor/assets/javascripts/prism-groovy.min.js +0 -1
- data/vendor/assets/javascripts/prism-haml.min.js +0 -1
- data/vendor/assets/javascripts/prism-handlebars.min.js +0 -1
- data/vendor/assets/javascripts/prism-haskell.min.js +0 -1
- data/vendor/assets/javascripts/prism-haxe.min.js +0 -1
- data/vendor/assets/javascripts/prism-http.min.js +0 -1
- data/vendor/assets/javascripts/prism-icon.min.js +0 -1
- data/vendor/assets/javascripts/prism-inform7.min.js +0 -1
- data/vendor/assets/javascripts/prism-ini.min.js +0 -1
- data/vendor/assets/javascripts/prism-j.min.js +0 -1
- data/vendor/assets/javascripts/prism-jade.min.js +0 -1
- data/vendor/assets/javascripts/prism-java.min.js +0 -1
- data/vendor/assets/javascripts/prism-javascript.min.js +0 -1
- data/vendor/assets/javascripts/prism-json.min.js +0 -1
- data/vendor/assets/javascripts/prism-jsx.min.js +0 -1
- data/vendor/assets/javascripts/prism-julia.min.js +0 -1
- data/vendor/assets/javascripts/prism-keyman.min.js +0 -1
- data/vendor/assets/javascripts/prism-kotlin.min.js +0 -1
- data/vendor/assets/javascripts/prism-latex.min.js +0 -1
- data/vendor/assets/javascripts/prism-less.min.js +0 -1
- data/vendor/assets/javascripts/prism-lolcode.min.js +0 -1
- data/vendor/assets/javascripts/prism-lua.min.js +0 -1
- data/vendor/assets/javascripts/prism-makefile.min.js +0 -1
- data/vendor/assets/javascripts/prism-markdown.min.js +0 -1
- data/vendor/assets/javascripts/prism-markup.min.js +0 -1
- data/vendor/assets/javascripts/prism-matlab.min.js +0 -1
- data/vendor/assets/javascripts/prism-mel.min.js +0 -1
- data/vendor/assets/javascripts/prism-mizar.min.js +0 -1
- data/vendor/assets/javascripts/prism-monkey.min.js +0 -1
- data/vendor/assets/javascripts/prism-nasm.min.js +0 -1
- data/vendor/assets/javascripts/prism-nginx.min.js +0 -1
- data/vendor/assets/javascripts/prism-nim.min.js +0 -1
- data/vendor/assets/javascripts/prism-nix.min.js +0 -1
- data/vendor/assets/javascripts/prism-nsis.min.js +0 -1
- data/vendor/assets/javascripts/prism-objectivec.min.js +0 -1
- data/vendor/assets/javascripts/prism-ocaml.min.js +0 -1
- data/vendor/assets/javascripts/prism-oz.min.js +0 -1
- data/vendor/assets/javascripts/prism-parigp.min.js +0 -1
- data/vendor/assets/javascripts/prism-parser.min.js +0 -1
- data/vendor/assets/javascripts/prism-pascal.min.js +0 -1
- data/vendor/assets/javascripts/prism-perl.min.js +0 -1
- data/vendor/assets/javascripts/prism-php-extras.min.js +0 -1
- data/vendor/assets/javascripts/prism-php.min.js +0 -1
- data/vendor/assets/javascripts/prism-powershell.min.js +0 -1
- data/vendor/assets/javascripts/prism-processing.min.js +0 -1
- data/vendor/assets/javascripts/prism-prolog.min.js +0 -1
- data/vendor/assets/javascripts/prism-protobuf.min.js +0 -1
- data/vendor/assets/javascripts/prism-puppet.min.js +0 -1
- data/vendor/assets/javascripts/prism-pure.min.js +0 -1
- data/vendor/assets/javascripts/prism-python.min.js +0 -1
- data/vendor/assets/javascripts/prism-q.min.js +0 -1
- data/vendor/assets/javascripts/prism-qore.min.js +0 -1
- data/vendor/assets/javascripts/prism-r.min.js +0 -1
- data/vendor/assets/javascripts/prism-rest.min.js +0 -1
- data/vendor/assets/javascripts/prism-rip.min.js +0 -1
- data/vendor/assets/javascripts/prism-roboconf.min.js +0 -1
- data/vendor/assets/javascripts/prism-ruby.min.js +0 -1
- data/vendor/assets/javascripts/prism-rust.min.js +0 -1
- data/vendor/assets/javascripts/prism-sas.min.js +0 -1
- data/vendor/assets/javascripts/prism-sass.min.js +0 -1
- data/vendor/assets/javascripts/prism-scala.min.js +0 -1
- data/vendor/assets/javascripts/prism-scheme.min.js +0 -1
- data/vendor/assets/javascripts/prism-scss.min.js +0 -1
- data/vendor/assets/javascripts/prism-smalltalk.min.js +0 -1
- data/vendor/assets/javascripts/prism-smarty.min.js +0 -1
- data/vendor/assets/javascripts/prism-sql.min.js +0 -1
- data/vendor/assets/javascripts/prism-stylus.min.js +0 -1
- data/vendor/assets/javascripts/prism-swift.min.js +0 -1
- data/vendor/assets/javascripts/prism-tcl.min.js +0 -1
- data/vendor/assets/javascripts/prism-textile.min.js +0 -1
- data/vendor/assets/javascripts/prism-twig.min.js +0 -1
- data/vendor/assets/javascripts/prism-typescript.min.js +0 -1
- data/vendor/assets/javascripts/prism-verilog.min.js +0 -1
- data/vendor/assets/javascripts/prism-vhdl.min.js +0 -1
- data/vendor/assets/javascripts/prism-vim.min.js +0 -1
- data/vendor/assets/javascripts/prism-wiki.min.js +0 -1
- data/vendor/assets/javascripts/prism-yaml.min.js +0 -1
@@ -0,0 +1,17 @@
|
|
1
|
+
Prism.languages.sql= {
|
2
|
+
'comment': {
|
3
|
+
pattern: /(^|[^\\])(?:\/\*[\w\W]*?\*\/|(?:--|\/\/|#).*)/,
|
4
|
+
lookbehind: true
|
5
|
+
},
|
6
|
+
'string' : {
|
7
|
+
pattern: /(^|[^@\\])("|')(?:\\?[\s\S])*?\2/,
|
8
|
+
lookbehind: true
|
9
|
+
},
|
10
|
+
'variable': /@[\w.$]+|@("|'|`)(?:\\?[\s\S])+?\1/,
|
11
|
+
'function': /\b(?:COUNT|SUM|AVG|MIN|MAX|FIRST|LAST|UCASE|LCASE|MID|LEN|ROUND|NOW|FORMAT)(?=\s*\()/i, // Should we highlight user defined functions too?
|
12
|
+
'keyword': /\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR VARYING|CHARACTER (?:SET|VARYING)|CHARSET|CHECK|CHECKPOINT|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMN|COLUMNS|COMMENT|COMMIT|COMMITTED|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS|CONTAINSTABLE|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|DATA(?:BASES?)?|DATE(?:TIME)?|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITER(?:S)?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE(?: PRECISION)?|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE KEY|ELSE|ENABLE|ENCLOSED BY|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPE(?:D BY)?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTO|INVOKER|ISOLATION LEVEL|JOIN|KEYS?|KILL|LANGUAGE SQL|LAST|LEFT|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MODIFIES SQL DATA|MODIFY|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL(?: CHAR VARYING| CHARACTER(?: VARYING)?| VARCHAR)?|NATURAL|NCHAR(?: VARCHAR)?|NEXT|NO(?: SQL|CHECK|CYCLE)?|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READ(?:S SQL DATA|TEXT)?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEATABLE|REPLICATION|REQUIRE|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE MODE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|START(?:ING BY)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED BY|TEXT(?:SIZE)?|THEN|TIMESTAMP|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNPIVOT|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?)\b/i,
|
13
|
+
'boolean': /\b(?:TRUE|FALSE|NULL)\b/i,
|
14
|
+
'number': /\b-?(?:0x)?\d*\.?[\da-f]+\b/,
|
15
|
+
'operator': /[-+*\/=%^~]|&&?|\|?\||!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,
|
16
|
+
'punctuation': /[;[\]()`,.]/
|
17
|
+
};
|
@@ -0,0 +1,102 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
var inside = {
|
3
|
+
'url': /url\((["']?).*?\1\)/i,
|
4
|
+
'string': /("|')(?:[^\\\r\n]|\\(?:\r\n|[\s\S]))*?\1/,
|
5
|
+
'interpolation': null, // See below
|
6
|
+
'func': null, // See below
|
7
|
+
'important': /\B!(?:important|optional)\b/i,
|
8
|
+
'keyword': {
|
9
|
+
pattern: /(^|\s+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/,
|
10
|
+
lookbehind: true
|
11
|
+
},
|
12
|
+
'hexcode': /#[\da-f]{3,6}/i,
|
13
|
+
'number': /\b\d+(?:\.\d+)?%?/,
|
14
|
+
'boolean': /\b(?:true|false)\b/,
|
15
|
+
'operator': [
|
16
|
+
// We want non-word chars around "-" because it is
|
17
|
+
// accepted in property names.
|
18
|
+
/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.+|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/
|
19
|
+
],
|
20
|
+
'punctuation': /[{}()\[\];:,]/
|
21
|
+
};
|
22
|
+
|
23
|
+
inside['interpolation'] = {
|
24
|
+
pattern: /\{[^\r\n}:]+\}/,
|
25
|
+
alias: 'variable',
|
26
|
+
inside: Prism.util.clone(inside)
|
27
|
+
};
|
28
|
+
inside['func'] = {
|
29
|
+
pattern: /[\w-]+\([^)]*\).*/,
|
30
|
+
inside: {
|
31
|
+
'function': /^[^(]+/,
|
32
|
+
rest: Prism.util.clone(inside)
|
33
|
+
}
|
34
|
+
};
|
35
|
+
|
36
|
+
Prism.languages.stylus = {
|
37
|
+
'comment': {
|
38
|
+
pattern: /(^|[^\\])(\/\*[\w\W]*?\*\/|\/\/.*)/,
|
39
|
+
lookbehind: true
|
40
|
+
},
|
41
|
+
'atrule-declaration': {
|
42
|
+
pattern: /(^\s*)@.+/m,
|
43
|
+
lookbehind: true,
|
44
|
+
inside: {
|
45
|
+
'atrule': /^@[\w-]+/,
|
46
|
+
rest: inside
|
47
|
+
}
|
48
|
+
},
|
49
|
+
'variable-declaration': {
|
50
|
+
pattern: /(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:(?:\{[^}]*\}|.+)|$)/m,
|
51
|
+
lookbehind: true,
|
52
|
+
inside: {
|
53
|
+
'variable': /^\S+/,
|
54
|
+
rest: inside
|
55
|
+
}
|
56
|
+
},
|
57
|
+
|
58
|
+
'statement': {
|
59
|
+
pattern: /(^[ \t]*)(?:if|else|for|return|unless)[ \t]+.+/m,
|
60
|
+
lookbehind: true,
|
61
|
+
inside: {
|
62
|
+
keyword: /^\S+/,
|
63
|
+
rest: inside
|
64
|
+
}
|
65
|
+
},
|
66
|
+
|
67
|
+
// A property/value pair cannot end with a comma or a brace
|
68
|
+
// It cannot have indented content unless it ended with a semicolon
|
69
|
+
'property-declaration': {
|
70
|
+
pattern: /((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(\r?\n|\r)(?:\{|\2[ \t]+)))/m,
|
71
|
+
lookbehind: true,
|
72
|
+
inside: {
|
73
|
+
'property': {
|
74
|
+
pattern: /^[^\s:]+/,
|
75
|
+
inside: {
|
76
|
+
'interpolation': inside.interpolation
|
77
|
+
}
|
78
|
+
},
|
79
|
+
rest: inside
|
80
|
+
}
|
81
|
+
},
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
// A selector can contain parentheses only as part of a pseudo-element
|
86
|
+
// It can span multiple lines.
|
87
|
+
// It must end with a comma or an accolade or have indented content.
|
88
|
+
'selector': {
|
89
|
+
pattern: /(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m,
|
90
|
+
lookbehind: true,
|
91
|
+
inside: {
|
92
|
+
'interpolation': inside.interpolation,
|
93
|
+
'punctuation': /[{},]/
|
94
|
+
}
|
95
|
+
},
|
96
|
+
|
97
|
+
'func': inside.func,
|
98
|
+
'string': inside.string,
|
99
|
+
'interpolation': inside.interpolation,
|
100
|
+
'punctuation': /[{}()\[\];:.]/
|
101
|
+
};
|
102
|
+
}(Prism));
|
@@ -0,0 +1,25 @@
|
|
1
|
+
// issues: nested multiline comments
|
2
|
+
Prism.languages.swift = Prism.languages.extend('clike', {
|
3
|
+
'string': {
|
4
|
+
pattern: /("|')(\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
|
5
|
+
greedy: true,
|
6
|
+
inside: {
|
7
|
+
'interpolation': {
|
8
|
+
pattern: /\\\((?:[^()]|\([^)]+\))+\)/,
|
9
|
+
inside: {
|
10
|
+
delimiter: {
|
11
|
+
pattern: /^\\\(|\)$/,
|
12
|
+
alias: 'variable'
|
13
|
+
}
|
14
|
+
// See rest below
|
15
|
+
}
|
16
|
+
}
|
17
|
+
}
|
18
|
+
},
|
19
|
+
'keyword': /\b(as|associativity|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonmutating|operator|optional|override|postfix|precedence|prefix|private|Protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/,
|
20
|
+
'number': /\b([\d_]+(\.[\de_]+)?|0x[a-f0-9_]+(\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,
|
21
|
+
'constant': /\b(nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,
|
22
|
+
'atrule': /@\b(IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/,
|
23
|
+
'builtin': /\b([A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/
|
24
|
+
});
|
25
|
+
Prism.languages.swift['string'].inside['interpolation'].inside.rest = Prism.util.clone(Prism.languages.swift);
|
@@ -0,0 +1,43 @@
|
|
1
|
+
Prism.languages.tcl = {
|
2
|
+
'comment': {
|
3
|
+
pattern: /(^|[^\\])#.*/,
|
4
|
+
lookbehind: true
|
5
|
+
},
|
6
|
+
'string': /"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"/,
|
7
|
+
'variable': [
|
8
|
+
{
|
9
|
+
pattern: /(\$)(?:::)?(?:[a-zA-Z0-9]+::)*[a-zA-Z0-9_]+/,
|
10
|
+
lookbehind: true
|
11
|
+
},
|
12
|
+
{
|
13
|
+
pattern: /(\$){[^}]+}/,
|
14
|
+
lookbehind: true
|
15
|
+
},
|
16
|
+
{
|
17
|
+
pattern: /(^\s*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*[a-zA-Z0-9_]+/m,
|
18
|
+
lookbehind: true
|
19
|
+
}
|
20
|
+
],
|
21
|
+
'function': {
|
22
|
+
pattern: /(^\s*proc[ \t]+)[^\s]+/m,
|
23
|
+
lookbehind: true
|
24
|
+
},
|
25
|
+
'builtin': [
|
26
|
+
{
|
27
|
+
pattern: /(^\s*)(?:proc|return|class|error|eval|exit|for|foreach|if|switch|while|break|continue)\b/m,
|
28
|
+
lookbehind: true
|
29
|
+
},
|
30
|
+
/\b(elseif|else)\b/
|
31
|
+
],
|
32
|
+
'scope': {
|
33
|
+
pattern: /(^\s*)(global|upvar|variable)\b/m,
|
34
|
+
lookbehind: true,
|
35
|
+
alias: 'constant'
|
36
|
+
},
|
37
|
+
'keyword': {
|
38
|
+
pattern: /(^\s*|\[)(after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|Safe_Base|scan|seek|set|socket|source|split|string|subst|Tcl|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|wordBreak(?:After|Before)|test|vars)|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m,
|
39
|
+
lookbehind: true
|
40
|
+
},
|
41
|
+
'operator': /!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|ne|in|ni)\b/,
|
42
|
+
'punctuation': /[{}()\[\]]/
|
43
|
+
};
|
@@ -0,0 +1,254 @@
|
|
1
|
+
(function(Prism) {
|
2
|
+
// We don't allow for pipes inside parentheses
|
3
|
+
// to not break table pattern |(. foo |). bar |
|
4
|
+
var modifierRegex = '(?:\\([^|)]+\\)|\\[[^\\]]+\\]|\\{[^}]+\\})+';
|
5
|
+
var modifierTokens = {
|
6
|
+
'css': {
|
7
|
+
pattern: /\{[^}]+\}/,
|
8
|
+
inside: {
|
9
|
+
rest: Prism.languages.css
|
10
|
+
}
|
11
|
+
},
|
12
|
+
'class-id': {
|
13
|
+
pattern: /(\()[^)]+(?=\))/,
|
14
|
+
lookbehind: true,
|
15
|
+
alias: 'attr-value'
|
16
|
+
},
|
17
|
+
'lang': {
|
18
|
+
pattern: /(\[)[^\]]+(?=\])/,
|
19
|
+
lookbehind: true,
|
20
|
+
alias: 'attr-value'
|
21
|
+
},
|
22
|
+
// Anything else is punctuation (the first pattern is for row/col spans inside tables)
|
23
|
+
'punctuation': /[\\\/]\d+|\S/
|
24
|
+
};
|
25
|
+
|
26
|
+
|
27
|
+
Prism.languages.textile = Prism.languages.extend('markup', {
|
28
|
+
'phrase': {
|
29
|
+
pattern: /(^|\r|\n)\S[\s\S]*?(?=$|\r?\n\r?\n|\r\r)/,
|
30
|
+
lookbehind: true,
|
31
|
+
inside: {
|
32
|
+
|
33
|
+
// h1. Header 1
|
34
|
+
'block-tag': {
|
35
|
+
pattern: RegExp('^[a-z]\\w*(?:' + modifierRegex + '|[<>=()])*\\.'),
|
36
|
+
inside: {
|
37
|
+
'modifier': {
|
38
|
+
pattern: RegExp('(^[a-z]\\w*)(?:' + modifierRegex + '|[<>=()])+(?=\\.)'),
|
39
|
+
lookbehind: true,
|
40
|
+
inside: Prism.util.clone(modifierTokens)
|
41
|
+
},
|
42
|
+
'tag': /^[a-z]\w*/,
|
43
|
+
'punctuation': /\.$/
|
44
|
+
}
|
45
|
+
},
|
46
|
+
|
47
|
+
// # List item
|
48
|
+
// * List item
|
49
|
+
'list': {
|
50
|
+
pattern: RegExp('^[*#]+(?:' + modifierRegex + ')?\\s+.+', 'm'),
|
51
|
+
inside: {
|
52
|
+
'modifier': {
|
53
|
+
pattern: RegExp('(^[*#]+)' + modifierRegex),
|
54
|
+
lookbehind: true,
|
55
|
+
inside: Prism.util.clone(modifierTokens)
|
56
|
+
},
|
57
|
+
'punctuation': /^[*#]+/
|
58
|
+
}
|
59
|
+
},
|
60
|
+
|
61
|
+
// | cell | cell | cell |
|
62
|
+
'table': {
|
63
|
+
// Modifiers can be applied to the row: {color:red}.|1|2|3|
|
64
|
+
// or the cell: |{color:red}.1|2|3|
|
65
|
+
pattern: RegExp('^(?:(?:' + modifierRegex + '|[<>=()^~])+\\.\\s*)?(?:\\|(?:(?:' + modifierRegex + '|[<>=()^~_]|[\\\\/]\\d+)+\\.)?[^|]*)+\\|', 'm'),
|
66
|
+
inside: {
|
67
|
+
'modifier': {
|
68
|
+
// Modifiers for rows after the first one are
|
69
|
+
// preceded by a pipe and a line feed
|
70
|
+
pattern: RegExp('(^|\\|(?:\\r?\\n|\\r)?)(?:' + modifierRegex + '|[<>=()^~_]|[\\\\/]\\d+)+(?=\\.)'),
|
71
|
+
lookbehind: true,
|
72
|
+
inside: Prism.util.clone(modifierTokens)
|
73
|
+
},
|
74
|
+
'punctuation': /\||^\./
|
75
|
+
}
|
76
|
+
},
|
77
|
+
|
78
|
+
'inline': {
|
79
|
+
pattern: RegExp('(\\*\\*|__|\\?\\?|[*_%@+\\-^~])(?:' + modifierRegex + ')?.+?\\1'),
|
80
|
+
inside: {
|
81
|
+
// Note: superscripts and subscripts are not handled specifically
|
82
|
+
|
83
|
+
// *bold*, **bold**
|
84
|
+
'bold': {
|
85
|
+
pattern: RegExp('((^\\*\\*?)(?:' + modifierRegex + ')?).+?(?=\\2)'),
|
86
|
+
lookbehind: true
|
87
|
+
},
|
88
|
+
|
89
|
+
// _italic_, __italic__
|
90
|
+
'italic': {
|
91
|
+
pattern: RegExp('((^__?)(?:' + modifierRegex + ')?).+?(?=\\2)'),
|
92
|
+
lookbehind: true
|
93
|
+
},
|
94
|
+
|
95
|
+
// ??cite??
|
96
|
+
'cite': {
|
97
|
+
pattern: RegExp('(^\\?\\?(?:' + modifierRegex + ')?).+?(?=\\?\\?)'),
|
98
|
+
lookbehind: true,
|
99
|
+
alias: 'string'
|
100
|
+
},
|
101
|
+
|
102
|
+
// @code@
|
103
|
+
'code': {
|
104
|
+
pattern: RegExp('(^@(?:' + modifierRegex + ')?).+?(?=@)'),
|
105
|
+
lookbehind: true,
|
106
|
+
alias: 'keyword'
|
107
|
+
},
|
108
|
+
|
109
|
+
// +inserted+
|
110
|
+
'inserted': {
|
111
|
+
pattern: RegExp('(^\\+(?:' + modifierRegex + ')?).+?(?=\\+)'),
|
112
|
+
lookbehind: true
|
113
|
+
},
|
114
|
+
|
115
|
+
// -deleted-
|
116
|
+
'deleted': {
|
117
|
+
pattern: RegExp('(^-(?:' + modifierRegex + ')?).+?(?=-)'),
|
118
|
+
lookbehind: true
|
119
|
+
},
|
120
|
+
|
121
|
+
// %span%
|
122
|
+
'span': {
|
123
|
+
pattern: RegExp('(^%(?:' + modifierRegex + ')?).+?(?=%)'),
|
124
|
+
lookbehind: true
|
125
|
+
},
|
126
|
+
|
127
|
+
'modifier': {
|
128
|
+
pattern: RegExp('(^\\*\\*|__|\\?\\?|[*_%@+\\-^~])' + modifierRegex),
|
129
|
+
lookbehind: true,
|
130
|
+
inside: Prism.util.clone(modifierTokens)
|
131
|
+
},
|
132
|
+
'punctuation': /[*_%?@+\-^~]+/
|
133
|
+
}
|
134
|
+
},
|
135
|
+
|
136
|
+
// [alias]http://example.com
|
137
|
+
'link-ref': {
|
138
|
+
pattern: /^\[[^\]]+\]\S+$/m,
|
139
|
+
inside: {
|
140
|
+
'string': {
|
141
|
+
pattern: /(\[)[^\]]+(?=\])/,
|
142
|
+
lookbehind: true
|
143
|
+
},
|
144
|
+
'url': {
|
145
|
+
pattern: /(\])\S+$/,
|
146
|
+
lookbehind: true
|
147
|
+
},
|
148
|
+
'punctuation': /[\[\]]/
|
149
|
+
}
|
150
|
+
},
|
151
|
+
|
152
|
+
// "text":http://example.com
|
153
|
+
// "text":link-ref
|
154
|
+
'link': {
|
155
|
+
pattern: RegExp('"(?:' + modifierRegex + ')?[^"]+":.+?(?=[^\\w/]?(?:\\s|$))'),
|
156
|
+
inside: {
|
157
|
+
'text': {
|
158
|
+
pattern: RegExp('(^"(?:' + modifierRegex + ')?)[^"]+(?=")'),
|
159
|
+
lookbehind: true
|
160
|
+
},
|
161
|
+
'modifier': {
|
162
|
+
pattern: RegExp('(^")' + modifierRegex),
|
163
|
+
lookbehind: true,
|
164
|
+
inside: Prism.util.clone(modifierTokens)
|
165
|
+
},
|
166
|
+
'url': {
|
167
|
+
pattern: /(:).+/,
|
168
|
+
lookbehind: true
|
169
|
+
},
|
170
|
+
'punctuation': /[":]/
|
171
|
+
}
|
172
|
+
},
|
173
|
+
|
174
|
+
// !image.jpg!
|
175
|
+
// !image.jpg(Title)!:http://example.com
|
176
|
+
'image': {
|
177
|
+
pattern: RegExp('!(?:' + modifierRegex + '|[<>=()])*[^!\\s()]+(?:\\([^)]+\\))?!(?::.+?(?=[^\\w/]?(?:\\s|$)))?'),
|
178
|
+
inside: {
|
179
|
+
'source': {
|
180
|
+
pattern: RegExp('(^!(?:' + modifierRegex + '|[<>=()])*)[^!\\s()]+(?:\\([^)]+\\))?(?=!)'),
|
181
|
+
lookbehind: true,
|
182
|
+
alias: 'url'
|
183
|
+
},
|
184
|
+
'modifier': {
|
185
|
+
pattern: RegExp('(^!)(?:' + modifierRegex + '|[<>=()])+'),
|
186
|
+
lookbehind: true,
|
187
|
+
inside: Prism.util.clone(modifierTokens)
|
188
|
+
},
|
189
|
+
'url': {
|
190
|
+
pattern: /(:).+/,
|
191
|
+
lookbehind: true
|
192
|
+
},
|
193
|
+
'punctuation': /[!:]/
|
194
|
+
}
|
195
|
+
},
|
196
|
+
|
197
|
+
// Footnote[1]
|
198
|
+
'footnote': {
|
199
|
+
pattern: /\b\[\d+\]/,
|
200
|
+
alias: 'comment',
|
201
|
+
inside: {
|
202
|
+
'punctuation': /\[|\]/
|
203
|
+
}
|
204
|
+
},
|
205
|
+
|
206
|
+
// CSS(Cascading Style Sheet)
|
207
|
+
'acronym': {
|
208
|
+
pattern: /\b[A-Z\d]+\([^)]+\)/,
|
209
|
+
inside: {
|
210
|
+
'comment': {
|
211
|
+
pattern: /(\()[^)]+(?=\))/,
|
212
|
+
lookbehind: true
|
213
|
+
},
|
214
|
+
'punctuation': /[()]/
|
215
|
+
}
|
216
|
+
},
|
217
|
+
|
218
|
+
// Prism(C)
|
219
|
+
'mark': {
|
220
|
+
pattern: /\b\((TM|R|C)\)/,
|
221
|
+
alias: 'comment',
|
222
|
+
inside: {
|
223
|
+
'punctuation':/[()]/
|
224
|
+
}
|
225
|
+
}
|
226
|
+
}
|
227
|
+
}
|
228
|
+
});
|
229
|
+
|
230
|
+
var nestedPatterns = {
|
231
|
+
'inline': Prism.util.clone(Prism.languages.textile['phrase'].inside['inline']),
|
232
|
+
'link': Prism.util.clone(Prism.languages.textile['phrase'].inside['link']),
|
233
|
+
'image': Prism.util.clone(Prism.languages.textile['phrase'].inside['image']),
|
234
|
+
'footnote': Prism.util.clone(Prism.languages.textile['phrase'].inside['footnote']),
|
235
|
+
'acronym': Prism.util.clone(Prism.languages.textile['phrase'].inside['acronym']),
|
236
|
+
'mark': Prism.util.clone(Prism.languages.textile['phrase'].inside['mark'])
|
237
|
+
};
|
238
|
+
|
239
|
+
// Allow some nesting
|
240
|
+
Prism.languages.textile['phrase'].inside['inline'].inside['bold'].inside = nestedPatterns;
|
241
|
+
Prism.languages.textile['phrase'].inside['inline'].inside['italic'].inside = nestedPatterns;
|
242
|
+
Prism.languages.textile['phrase'].inside['inline'].inside['inserted'].inside = nestedPatterns;
|
243
|
+
Prism.languages.textile['phrase'].inside['inline'].inside['deleted'].inside = nestedPatterns;
|
244
|
+
Prism.languages.textile['phrase'].inside['inline'].inside['span'].inside = nestedPatterns;
|
245
|
+
|
246
|
+
// Allow some styles inside table cells
|
247
|
+
Prism.languages.textile['phrase'].inside['table'].inside['inline'] = nestedPatterns['inline'];
|
248
|
+
Prism.languages.textile['phrase'].inside['table'].inside['link'] = nestedPatterns['link'];
|
249
|
+
Prism.languages.textile['phrase'].inside['table'].inside['image'] = nestedPatterns['image'];
|
250
|
+
Prism.languages.textile['phrase'].inside['table'].inside['footnote'] = nestedPatterns['footnote'];
|
251
|
+
Prism.languages.textile['phrase'].inside['table'].inside['acronym'] = nestedPatterns['acronym'];
|
252
|
+
Prism.languages.textile['phrase'].inside['table'].inside['mark'] = nestedPatterns['mark'];
|
253
|
+
|
254
|
+
}(Prism));
|
@@ -0,0 +1,46 @@
|
|
1
|
+
Prism.languages.twig = {
|
2
|
+
'comment': /\{#[\s\S]*?#\}/,
|
3
|
+
'tag': {
|
4
|
+
pattern: /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}/,
|
5
|
+
inside: {
|
6
|
+
'ld': {
|
7
|
+
pattern: /^(?:\{\{\-?|\{%\-?\s*\w+)/,
|
8
|
+
inside: {
|
9
|
+
'punctuation': /^(?:\{\{|\{%)\-?/,
|
10
|
+
'keyword': /\w+/
|
11
|
+
}
|
12
|
+
},
|
13
|
+
'rd': {
|
14
|
+
pattern: /\-?(?:%\}|\}\})$/,
|
15
|
+
inside: {
|
16
|
+
'punctuation': /.*/
|
17
|
+
}
|
18
|
+
},
|
19
|
+
'string': {
|
20
|
+
pattern: /("|')(?:\\?.)*?\1/,
|
21
|
+
inside: {
|
22
|
+
'punctuation': /^['"]|['"]$/
|
23
|
+
}
|
24
|
+
},
|
25
|
+
'keyword': /\b(?:even|if|odd)\b/,
|
26
|
+
'boolean': /\b(?:true|false|null)\b/,
|
27
|
+
'number': /\b-?(?:0x[\dA-Fa-f]+|\d*\.?\d+([Ee][-+]?\d+)?)\b/,
|
28
|
+
'operator': [
|
29
|
+
{
|
30
|
+
pattern: /(\s)(?:and|b\-and|b\-xor|b\-or|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/,
|
31
|
+
lookbehind: true
|
32
|
+
},
|
33
|
+
/[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/
|
34
|
+
],
|
35
|
+
'property': /\b[a-zA-Z_][a-zA-Z0-9_]*\b/,
|
36
|
+
'punctuation': /[()\[\]{}:.,]/
|
37
|
+
}
|
38
|
+
},
|
39
|
+
|
40
|
+
// The rest can be parsed as HTML
|
41
|
+
'other': {
|
42
|
+
// We want non-blank matches
|
43
|
+
pattern: /\S(?:[\s\S]*\S)?/,
|
44
|
+
inside: Prism.languages.markup
|
45
|
+
}
|
46
|
+
};
|