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,91 @@
|
|
1
|
+
(function(Prism) {
|
2
|
+
|
3
|
+
// Ignore comments starting with { to privilege string interpolation highlighting
|
4
|
+
var comment = /#(?!\{).+/,
|
5
|
+
interpolation = {
|
6
|
+
pattern: /#\{[^}]+\}/,
|
7
|
+
alias: 'variable'
|
8
|
+
};
|
9
|
+
|
10
|
+
Prism.languages.coffeescript = Prism.languages.extend('javascript', {
|
11
|
+
'comment': comment,
|
12
|
+
'string': [
|
13
|
+
|
14
|
+
// Strings are multiline
|
15
|
+
{
|
16
|
+
pattern: /'(?:\\?[^\\])*?'/,
|
17
|
+
greedy: true,
|
18
|
+
},
|
19
|
+
|
20
|
+
{
|
21
|
+
// Strings are multiline
|
22
|
+
pattern: /"(?:\\?[^\\])*?"/,
|
23
|
+
greedy: true,
|
24
|
+
inside: {
|
25
|
+
'interpolation': interpolation
|
26
|
+
}
|
27
|
+
}
|
28
|
+
],
|
29
|
+
'keyword': /\b(and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
|
30
|
+
'class-member': {
|
31
|
+
pattern: /@(?!\d)\w+/,
|
32
|
+
alias: 'variable'
|
33
|
+
}
|
34
|
+
});
|
35
|
+
|
36
|
+
Prism.languages.insertBefore('coffeescript', 'comment', {
|
37
|
+
'multiline-comment': {
|
38
|
+
pattern: /###[\s\S]+?###/,
|
39
|
+
alias: 'comment'
|
40
|
+
},
|
41
|
+
|
42
|
+
// Block regexp can contain comments and interpolation
|
43
|
+
'block-regex': {
|
44
|
+
pattern: /\/{3}[\s\S]*?\/{3}/,
|
45
|
+
alias: 'regex',
|
46
|
+
inside: {
|
47
|
+
'comment': comment,
|
48
|
+
'interpolation': interpolation
|
49
|
+
}
|
50
|
+
}
|
51
|
+
});
|
52
|
+
|
53
|
+
Prism.languages.insertBefore('coffeescript', 'string', {
|
54
|
+
'inline-javascript': {
|
55
|
+
pattern: /`(?:\\?[\s\S])*?`/,
|
56
|
+
inside: {
|
57
|
+
'delimiter': {
|
58
|
+
pattern: /^`|`$/,
|
59
|
+
alias: 'punctuation'
|
60
|
+
},
|
61
|
+
rest: Prism.languages.javascript
|
62
|
+
}
|
63
|
+
},
|
64
|
+
|
65
|
+
// Block strings
|
66
|
+
'multiline-string': [
|
67
|
+
{
|
68
|
+
pattern: /'''[\s\S]*?'''/,
|
69
|
+
greedy: true,
|
70
|
+
alias: 'string'
|
71
|
+
},
|
72
|
+
{
|
73
|
+
pattern: /"""[\s\S]*?"""/,
|
74
|
+
greedy: true,
|
75
|
+
alias: 'string',
|
76
|
+
inside: {
|
77
|
+
interpolation: interpolation
|
78
|
+
}
|
79
|
+
}
|
80
|
+
]
|
81
|
+
|
82
|
+
});
|
83
|
+
|
84
|
+
Prism.languages.insertBefore('coffeescript', 'keyword', {
|
85
|
+
// Object property
|
86
|
+
'property': /(?!\d)\w+(?=\s*:(?!:))/
|
87
|
+
});
|
88
|
+
|
89
|
+
delete Prism.languages.coffeescript['template-string'];
|
90
|
+
|
91
|
+
}(Prism));
|
@@ -0,0 +1,12 @@
|
|
1
|
+
Prism.languages.cpp = Prism.languages.extend('c', {
|
2
|
+
'keyword': /\b(alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,
|
3
|
+
'boolean': /\b(true|false)\b/,
|
4
|
+
'operator': /[-+]{1,2}|!=?|<{1,2}=?|>{1,2}=?|\->|:{1,2}|={1,2}|\^|~|%|&{1,2}|\|?\||\?|\*|\/|\b(and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/
|
5
|
+
});
|
6
|
+
|
7
|
+
Prism.languages.insertBefore('cpp', 'keyword', {
|
8
|
+
'class-name': {
|
9
|
+
pattern: /(class\s+)[a-z0-9_]+/i,
|
10
|
+
lookbehind: true
|
11
|
+
}
|
12
|
+
});
|
@@ -0,0 +1,53 @@
|
|
1
|
+
(function(Prism) {
|
2
|
+
Prism.languages.crystal = Prism.languages.extend('ruby', {
|
3
|
+
keyword: [
|
4
|
+
/\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|self|sizeof|struct|super|then|type|typeof|union|unless|until|when|while|with|yield|__DIR__|__FILE__|__LINE__)\b/,
|
5
|
+
{
|
6
|
+
pattern: /(\.\s*)(?:is_a|responds_to)\?/,
|
7
|
+
lookbehind: true
|
8
|
+
}
|
9
|
+
],
|
10
|
+
|
11
|
+
number: /\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[0-9a-fA-F_]*[0-9a-fA-F]|(?:[0-9](?:[0-9_]*[0-9])?)(?:\.[0-9_]*[0-9])?(?:[eE][+-]?[0-9_]*[0-9])?)(?:_(?:[uif](?:8|16|32|64))?)?\b/,
|
12
|
+
});
|
13
|
+
|
14
|
+
var rest = Prism.util.clone(Prism.languages.crystal);
|
15
|
+
|
16
|
+
Prism.languages.insertBefore('crystal', 'string', {
|
17
|
+
attribute: {
|
18
|
+
pattern: /@\[.+?\]/,
|
19
|
+
alias: 'attr-name',
|
20
|
+
inside: {
|
21
|
+
delimiter: {
|
22
|
+
pattern: /^@\[|\]$/,
|
23
|
+
alias: 'tag'
|
24
|
+
},
|
25
|
+
rest: rest
|
26
|
+
}
|
27
|
+
},
|
28
|
+
|
29
|
+
expansion: [
|
30
|
+
{
|
31
|
+
pattern: /\{\{.+?\}\}/,
|
32
|
+
inside: {
|
33
|
+
delimiter: {
|
34
|
+
pattern: /^\{\{|\}\}$/,
|
35
|
+
alias: 'tag'
|
36
|
+
},
|
37
|
+
rest: rest
|
38
|
+
}
|
39
|
+
},
|
40
|
+
{
|
41
|
+
pattern: /\{%.+?%\}/,
|
42
|
+
inside: {
|
43
|
+
delimiter: {
|
44
|
+
pattern: /^\{%|%\}$/,
|
45
|
+
alias: 'tag'
|
46
|
+
},
|
47
|
+
rest: rest
|
48
|
+
}
|
49
|
+
}
|
50
|
+
]
|
51
|
+
});
|
52
|
+
|
53
|
+
}(Prism));
|
@@ -0,0 +1,32 @@
|
|
1
|
+
Prism.languages.csharp = Prism.languages.extend('clike', {
|
2
|
+
'keyword': /\b(abstract|as|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|do|double|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|goto|if|implicit|in|int|interface|internal|is|lock|long|namespace|new|null|object|operator|out|override|params|private|protected|public|readonly|ref|return|sbyte|sealed|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|virtual|void|volatile|while|add|alias|ascending|async|await|descending|dynamic|from|get|global|group|into|join|let|orderby|partial|remove|select|set|value|var|where|yield)\b/,
|
3
|
+
'string': [
|
4
|
+
/@("|')(\1\1|\\\1|\\?(?!\1)[\s\S])*\1/,
|
5
|
+
/("|')(\\?.)*?\1/
|
6
|
+
],
|
7
|
+
'number': /\b-?(0x[\da-f]+|\d*\.?\d+f?)\b/i
|
8
|
+
});
|
9
|
+
|
10
|
+
Prism.languages.insertBefore('csharp', 'keyword', {
|
11
|
+
'generic-method': {
|
12
|
+
pattern: /[a-z0-9_]+\s*<[^>\r\n]+?>\s*(?=\()/i,
|
13
|
+
alias: 'function',
|
14
|
+
inside: {
|
15
|
+
keyword: Prism.languages.csharp.keyword,
|
16
|
+
punctuation: /[<>(),.:]/
|
17
|
+
}
|
18
|
+
},
|
19
|
+
'preprocessor': {
|
20
|
+
pattern: /(^\s*)#.*/m,
|
21
|
+
lookbehind: true,
|
22
|
+
alias: 'property',
|
23
|
+
inside: {
|
24
|
+
// highlight preprocessor directives as keywords
|
25
|
+
'directive': {
|
26
|
+
pattern: /(\s*#)\b(define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,
|
27
|
+
lookbehind: true,
|
28
|
+
alias: 'keyword'
|
29
|
+
}
|
30
|
+
}
|
31
|
+
}
|
32
|
+
});
|
@@ -0,0 +1,15 @@
|
|
1
|
+
Prism.languages.css.selector = {
|
2
|
+
pattern: /[^\{\}\s][^\{\}]*(?=\s*\{)/,
|
3
|
+
inside: {
|
4
|
+
'pseudo-element': /:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,
|
5
|
+
'pseudo-class': /:[-\w]+(?:\(.*\))?/,
|
6
|
+
'class': /\.[-:\.\w]+/,
|
7
|
+
'id': /#[-:\.\w]+/
|
8
|
+
}
|
9
|
+
};
|
10
|
+
|
11
|
+
Prism.languages.insertBefore('css', 'function', {
|
12
|
+
'hexcode': /#[\da-f]{3,6}/i,
|
13
|
+
'entity': /\\[\da-f]{1,8}/i,
|
14
|
+
'number': /[\d%\.]+/
|
15
|
+
});
|
@@ -0,0 +1,48 @@
|
|
1
|
+
Prism.languages.css = {
|
2
|
+
'comment': /\/\*[\w\W]*?\*\//,
|
3
|
+
'atrule': {
|
4
|
+
pattern: /@[\w-]+?.*?(;|(?=\s*\{))/i,
|
5
|
+
inside: {
|
6
|
+
'rule': /@[\w-]+/
|
7
|
+
// See rest below
|
8
|
+
}
|
9
|
+
},
|
10
|
+
'url': /url\((?:(["'])(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,
|
11
|
+
'selector': /[^\{\}\s][^\{\};]*?(?=\s*\{)/,
|
12
|
+
'string': /("|')(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1/,
|
13
|
+
'property': /(\b|\B)[\w-]+(?=\s*:)/i,
|
14
|
+
'important': /\B!important\b/i,
|
15
|
+
'function': /[-a-z0-9]+(?=\()/i,
|
16
|
+
'punctuation': /[(){};:]/
|
17
|
+
};
|
18
|
+
|
19
|
+
Prism.languages.css['atrule'].inside.rest = Prism.util.clone(Prism.languages.css);
|
20
|
+
|
21
|
+
if (Prism.languages.markup) {
|
22
|
+
Prism.languages.insertBefore('markup', 'tag', {
|
23
|
+
'style': {
|
24
|
+
pattern: /(<style[\w\W]*?>)[\w\W]*?(?=<\/style>)/i,
|
25
|
+
lookbehind: true,
|
26
|
+
inside: Prism.languages.css,
|
27
|
+
alias: 'language-css'
|
28
|
+
}
|
29
|
+
});
|
30
|
+
|
31
|
+
Prism.languages.insertBefore('inside', 'attr-value', {
|
32
|
+
'style-attr': {
|
33
|
+
pattern: /\s*style=("|').*?\1/i,
|
34
|
+
inside: {
|
35
|
+
'attr-name': {
|
36
|
+
pattern: /^\s*style/i,
|
37
|
+
inside: Prism.languages.markup.tag.inside
|
38
|
+
},
|
39
|
+
'punctuation': /^\s*=\s*['"]|['"]\s*$/,
|
40
|
+
'attr-value': {
|
41
|
+
pattern: /.+/i,
|
42
|
+
inside: Prism.languages.css
|
43
|
+
}
|
44
|
+
},
|
45
|
+
alias: 'language-css'
|
46
|
+
}
|
47
|
+
}, Prism.languages.markup.tag);
|
48
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
Prism.languages.d = Prism.languages.extend('clike', {
|
2
|
+
'string': [
|
3
|
+
// r"", x""
|
4
|
+
/\b[rx]"(\\.|[^\\"])*"[cwd]?/,
|
5
|
+
// q"[]", q"()", q"<>", q"{}"
|
6
|
+
/\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/,
|
7
|
+
// q"IDENT
|
8
|
+
// ...
|
9
|
+
// IDENT"
|
10
|
+
/\bq"([_a-zA-Z][_a-zA-Z\d]*)(?:\r?\n|\r)[\s\S]*?(?:\r?\n|\r)\1"/,
|
11
|
+
// q"//", q"||", etc.
|
12
|
+
/\bq"(.)[\s\S]*?\1"/,
|
13
|
+
// Characters
|
14
|
+
/'(?:\\'|\\?[^']+)'/,
|
15
|
+
|
16
|
+
/(["`])(\\.|(?!\1)[^\\])*\1[cwd]?/
|
17
|
+
],
|
18
|
+
|
19
|
+
'number': [
|
20
|
+
// The lookbehind and the negative look-ahead try to prevent bad highlighting of the .. operator
|
21
|
+
// Hexadecimal numbers must be handled separately to avoid problems with exponent "e"
|
22
|
+
/\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]*/i,
|
23
|
+
{
|
24
|
+
pattern: /((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]*/i,
|
25
|
+
lookbehind: true
|
26
|
+
}
|
27
|
+
],
|
28
|
+
|
29
|
+
// In order: $, keywords and special tokens, globally defined symbols
|
30
|
+
'keyword': /\$|\b(?:abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__(?:(?:FILE|MODULE|LINE|FUNCTION|PRETTY_FUNCTION|DATE|EOF|TIME|TIMESTAMP|VENDOR|VERSION)__|gshared|traits|vector|parameters)|string|wstring|dstring|size_t|ptrdiff_t)\b/,
|
31
|
+
'operator': /\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/
|
32
|
+
});
|
33
|
+
|
34
|
+
|
35
|
+
Prism.languages.d.comment = [
|
36
|
+
// Shebang
|
37
|
+
/^\s*#!.+/,
|
38
|
+
// /+ +/
|
39
|
+
{
|
40
|
+
// Allow one level of nesting
|
41
|
+
pattern: /(^|[^\\])\/\+(?:\/\+[\w\W]*?\+\/|[\w\W])*?\+\//,
|
42
|
+
lookbehind: true
|
43
|
+
}
|
44
|
+
].concat(Prism.languages.d.comment);
|
45
|
+
|
46
|
+
Prism.languages.insertBefore('d', 'comment', {
|
47
|
+
'token-string': {
|
48
|
+
// Allow one level of nesting
|
49
|
+
pattern: /\bq\{(?:|\{[^}]*\}|[^}])*\}/,
|
50
|
+
alias: 'string'
|
51
|
+
}
|
52
|
+
});
|
53
|
+
|
54
|
+
Prism.languages.insertBefore('d', 'keyword', {
|
55
|
+
'property': /\B@\w*/
|
56
|
+
});
|
57
|
+
|
58
|
+
Prism.languages.insertBefore('d', 'function', {
|
59
|
+
'register': {
|
60
|
+
// Iasm registers
|
61
|
+
pattern: /\b(?:[ABCD][LHX]|E[ABCD]X|E?(?:BP|SP|DI|SI)|[ECSDGF]S|CR[0234]|DR[012367]|TR[3-7]|X?MM[0-7]|R[ABCD]X|[BS]PL|R[BS]P|[DS]IL|R[DS]I|R(?:[89]|1[0-5])[BWD]?|XMM(?:[89]|1[0-5])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,
|
62
|
+
alias: 'variable'
|
63
|
+
}
|
64
|
+
});
|
@@ -0,0 +1,18 @@
|
|
1
|
+
Prism.languages.dart = Prism.languages.extend('clike', {
|
2
|
+
'string': [
|
3
|
+
/r?("""|''')[\s\S]*?\1/,
|
4
|
+
/r?("|')(\\?.)*?\1/
|
5
|
+
],
|
6
|
+
'keyword': [
|
7
|
+
/\b(?:async|sync|yield)\*/,
|
8
|
+
/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|default|deferred|do|dynamic|else|enum|export|external|extends|factory|final|finally|for|get|if|implements|import|in|library|new|null|operator|part|rethrow|return|set|static|super|switch|this|throw|try|typedef|var|void|while|with|yield)\b/
|
9
|
+
],
|
10
|
+
'operator': /\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/
|
11
|
+
});
|
12
|
+
|
13
|
+
Prism.languages.insertBefore('dart','function',{
|
14
|
+
'metadata': {
|
15
|
+
pattern: /@\w+/,
|
16
|
+
alias: 'symbol'
|
17
|
+
}
|
18
|
+
});
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Prism.languages.diff = {
|
2
|
+
'coord': [
|
3
|
+
// Match all kinds of coord lines (prefixed by "+++", "---" or "***").
|
4
|
+
/^(?:\*{3}|-{3}|\+{3}).*$/m,
|
5
|
+
// Match "@@ ... @@" coord lines in unified diff.
|
6
|
+
/^@@.*@@$/m,
|
7
|
+
// Match coord lines in normal diff (starts with a number).
|
8
|
+
/^\d+.*$/m
|
9
|
+
],
|
10
|
+
|
11
|
+
// Match inserted and deleted lines. Support both +/- and >/< styles.
|
12
|
+
'deleted': /^[-<].*$/m,
|
13
|
+
'inserted': /^[+>].*$/m,
|
14
|
+
|
15
|
+
// Match "different" lines (prefixed with "!") in context diff.
|
16
|
+
'diff': {
|
17
|
+
'pattern': /^!(?!!).+$/m,
|
18
|
+
'alias': 'important'
|
19
|
+
}
|
20
|
+
};
|
@@ -0,0 +1,9 @@
|
|
1
|
+
Prism.languages.docker = {
|
2
|
+
'keyword': {
|
3
|
+
pattern: /(^\s*)(?:ONBUILD|FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|COPY|VOLUME|USER|WORKDIR|CMD|LABEL|ENTRYPOINT)(?=\s)/mi,
|
4
|
+
lookbehind: true
|
5
|
+
},
|
6
|
+
'string': /("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*?\1/,
|
7
|
+
'comment': /#.*/,
|
8
|
+
'punctuation': /---|\.\.\.|[:[\]{}\-,|>?]/
|
9
|
+
};
|
@@ -0,0 +1,24 @@
|
|
1
|
+
Prism.languages.eiffel = {
|
2
|
+
'string': [
|
3
|
+
// Aligned-verbatim-strings
|
4
|
+
/"([^[]*)\[[\s\S]+?\]\1"/,
|
5
|
+
// Non-aligned-verbatim-strings
|
6
|
+
/"([^{]*)\{[\s\S]+?\}\1"/,
|
7
|
+
// Single-line string
|
8
|
+
/"(?:%\s+%|%"|.)*?"/
|
9
|
+
],
|
10
|
+
// (comments including quoted strings not supported)
|
11
|
+
'comment': /--.*/,
|
12
|
+
// normal char | special char | char code
|
13
|
+
'char': /'(?:%'|.)+?'/,
|
14
|
+
'keyword': /\b(?:across|agent|alias|all|and|attached|as|assign|attribute|check|class|convert|create|Current|debug|deferred|detachable|do|else|elseif|end|ensure|expanded|export|external|feature|from|frozen|if|implies|inherit|inspect|invariant|like|local|loop|not|note|obsolete|old|once|or|Precursor|redefine|rename|require|rescue|Result|retry|select|separate|some|then|undefine|until|variant|Void|when|xor)\b/i,
|
15
|
+
'boolean': /\b(?:True|False)\b/i,
|
16
|
+
'number': [
|
17
|
+
// hexa | octal | bin
|
18
|
+
/\b0[xcb][\da-f](?:_*[\da-f])*\b/i,
|
19
|
+
// Decimal
|
20
|
+
/(?:\d(?:_*\d)*)?\.(?:(?:\d(?:_*\d)*)?[eE][+-]?)?\d(?:_*\d)*|\d(?:_*\d)*\.?/
|
21
|
+
],
|
22
|
+
'punctuation': /:=|<<|>>|\(\||\|\)|->|\.(?=\w)|[{}[\];(),:?]/,
|
23
|
+
'operator': /\\\\|\|\.\.\||\.\.|\/[~\/=]?|[><]=?|[-+*^=~]/
|
24
|
+
};
|
@@ -0,0 +1,90 @@
|
|
1
|
+
Prism.languages.elixir = {
|
2
|
+
// Negative look-ahead is needed for string interpolation
|
3
|
+
// Negative look-behind is needed to avoid highlighting markdown headers in
|
4
|
+
// multi-line doc strings
|
5
|
+
'comment': {
|
6
|
+
pattern: /(^|[^#])#(?![{#]).*/m,
|
7
|
+
lookbehind: true
|
8
|
+
},
|
9
|
+
// ~r"""foo""", ~r'''foo''', ~r/foo/, ~r|foo|, ~r"foo", ~r'foo', ~r(foo), ~r[foo], ~r{foo}, ~r<foo>
|
10
|
+
'regex': /~[rR](?:("""|'''|[\/|"'])(?:\\.|(?!\1)[^\\])+\1|\((?:\\\)|[^)])+\)|\[(?:\\\]|[^\]])+\]|\{(?:\\\}|[^}])+\}|<(?:\\>|[^>])+>)[uismxfr]*/,
|
11
|
+
'string': [
|
12
|
+
{
|
13
|
+
// ~s"""foo""", ~s'''foo''', ~s/foo/, ~s|foo|, ~s"foo", ~s'foo', ~s(foo), ~s[foo], ~s{foo}, ~s<foo>
|
14
|
+
pattern: /~[cCsSwW](?:("""|'''|[\/|"'])(?:\\.|(?!\1)[^\\])+\1|\((?:\\\)|[^)])+\)|\[(?:\\\]|[^\]])+\]|\{(?:\\\}|#\{[^}]+\}|[^}])+\}|<(?:\\>|[^>])+>)[csa]?/,
|
15
|
+
inside: {
|
16
|
+
// See interpolation below
|
17
|
+
}
|
18
|
+
},
|
19
|
+
{
|
20
|
+
pattern: /("""|''')[\s\S]*?\1/,
|
21
|
+
inside: {
|
22
|
+
// See interpolation below
|
23
|
+
}
|
24
|
+
},
|
25
|
+
{
|
26
|
+
// Multi-line strings are allowed
|
27
|
+
pattern: /("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,
|
28
|
+
inside: {
|
29
|
+
// See interpolation below
|
30
|
+
}
|
31
|
+
}
|
32
|
+
],
|
33
|
+
'atom': {
|
34
|
+
// Look-behind prevents bad highlighting of the :: operator
|
35
|
+
pattern: /(^|[^:]):\w+/,
|
36
|
+
lookbehind: true,
|
37
|
+
alias: 'symbol'
|
38
|
+
},
|
39
|
+
// Look-ahead prevents bad highlighting of the :: operator
|
40
|
+
'attr-name': /\w+:(?!:)/,
|
41
|
+
'capture': {
|
42
|
+
// Look-behind prevents bad highlighting of the && operator
|
43
|
+
pattern: /(^|[^&])&(?:[^&\s\d()][^\s()]*|(?=\())/,
|
44
|
+
lookbehind: true,
|
45
|
+
alias: 'function'
|
46
|
+
},
|
47
|
+
'argument': {
|
48
|
+
// Look-behind prevents bad highlighting of the && operator
|
49
|
+
pattern: /(^|[^&])&\d+/,
|
50
|
+
lookbehind: true,
|
51
|
+
alias: 'variable'
|
52
|
+
},
|
53
|
+
'attribute': {
|
54
|
+
pattern: /@[\S]+/,
|
55
|
+
alias: 'variable'
|
56
|
+
},
|
57
|
+
'number': /\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i,
|
58
|
+
'keyword': /\b(?:after|alias|and|case|catch|cond|def(?:callback|exception|impl|module|p|protocol|struct)?|do|else|end|fn|for|if|import|not|or|require|rescue|try|unless|use|when)\b/,
|
59
|
+
'boolean': /\b(?:true|false|nil)\b/,
|
60
|
+
'operator': [
|
61
|
+
/\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/,
|
62
|
+
{
|
63
|
+
// We don't want to match <<
|
64
|
+
pattern: /([^<])<(?!<)/,
|
65
|
+
lookbehind: true
|
66
|
+
},
|
67
|
+
{
|
68
|
+
// We don't want to match >>
|
69
|
+
pattern: /([^>])>(?!>)/,
|
70
|
+
lookbehind: true
|
71
|
+
}
|
72
|
+
],
|
73
|
+
'punctuation': /<<|>>|[.,%\[\]{}()]/
|
74
|
+
};
|
75
|
+
|
76
|
+
Prism.languages.elixir.string.forEach(function(o) {
|
77
|
+
o.inside = {
|
78
|
+
'interpolation': {
|
79
|
+
pattern: /#\{[^}]+\}/,
|
80
|
+
inside: {
|
81
|
+
'delimiter': {
|
82
|
+
pattern: /^#\{|\}$/,
|
83
|
+
alias: 'punctuation'
|
84
|
+
},
|
85
|
+
rest: Prism.util.clone(Prism.languages.elixir)
|
86
|
+
}
|
87
|
+
}
|
88
|
+
};
|
89
|
+
});
|
90
|
+
|