UNPKG

1.3 kBJavaScriptView Raw
1Prism.languages.css = {
2 'comment': /\/\*[\s\S]*?\*\//,
3 'atrule': {
4 pattern: /@[\w-]+?.*?(?:;|(?=\s*\{))/i,
5 inside: {
6 'rule': /@[\w-]+/
7 // See rest below
8 }
9 },
10 'url': /url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,
11 'selector': /[^{}\s][^{};]*?(?=\s*\{)/,
12 'string': {
13 pattern: /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
14 greedy: true
15 },
16 'property': /[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,
17 'important': /\B!important\b/i,
18 'function': /[-a-z0-9]+(?=\()/i,
19 'punctuation': /[(){};:]/
20};
21
22Prism.languages.css['atrule'].inside.rest = Prism.languages.css;
23
24if (Prism.languages.markup) {
25 Prism.languages.insertBefore('markup', 'tag', {
26 'style': {
27 pattern: /(<style[\s\S]*?>)[\s\S]*?(?=<\/style>)/i,
28 lookbehind: true,
29 inside: Prism.languages.css,
30 alias: 'language-css',
31 greedy: true
32 }
33 });
34
35 Prism.languages.insertBefore('inside', 'attr-value', {
36 'style-attr': {
37 pattern: /\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,
38 inside: {
39 'attr-name': {
40 pattern: /^\s*style/i,
41 inside: Prism.languages.markup.tag.inside
42 },
43 'punctuation': /^\s*=\s*['"]|['"]\s*$/,
44 'attr-value': {
45 pattern: /.+/i,
46 inside: Prism.languages.css
47 }
48 },
49 alias: 'language-css'
50 }
51 }, Prism.languages.markup.tag);
52}
\No newline at end of file