Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Side by Side Diff: lib/src/prism/components/prism-pure.js

Issue 1418513006: update elements and fix some bugs (Closed) Base URL: git@github.com:dart-lang/polymer_elements.git@master
Patch Set: code review updates Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 (function (Prism) {
2 Prism.languages.pure = {
3 'inline-lang': {
4 pattern: /%<[\s\S]+?%>/,
5 inside: {
6 'lang': {
7 pattern: /(^%< *)-\*-.+?-\*-/,
8 lookbehind: true,
9 alias: 'comment'
10 },
11 'delimiter': {
12 pattern: /^%<.*|%>$/,
13 alias: 'punctuation'
14 }
15 }
16 },
17 'comment': [
18 {
19 pattern: /(^|[^\\])\/\*[\w\W]*?\*\//,
20 lookbehind: true
21 },
22 {
23 pattern: /(^|[^\\:])\/\/.*/,
24 lookbehind: true
25 },
26 /#!.+/
27 ],
28 'string': /"(?:\\.|[^"\\\r\n])*"/,
29 'number': {
30 // The look-behind prevents wrong highlighting of the .. operator
31 pattern: /((?:\.\.)?)(?:\b(?:inf|nan)\b|\b0x[\da-f]+|(?: \b(?:0b)?\d+(?:\.\d)?|\B\.\d)\d*(?:e[+-]?\d+)?L?)/i,
32 lookbehind: true
33 },
34 'keyword': /\b(?:ans|break|bt|case|catch|cd|clear|const|def|del| dump|else|end|exit|extern|false|force|help|if|infix[lr]?|interface|let|ls|mem|na mespace|nonfix|NULL|of|otherwise|outfix|override|postfix|prefix|private|public|p wd|quit|run|save|show|stats|then|throw|trace|true|type|underride|using|when|with )\b/,
35 'function': /\b(?:abs|add_(?:(?:fundef|interface|macdef|typedef) (?:_at)?|addr|constdef|vardef)|all|any|applp?|arity|bigintp?|blob(?:_crc|_size|p )?|boolp?|byte_(?:matrix|pointer)|byte_c?string(?:_pointer)?|calloc|cat|catmap|c eil|char[ps]?|check_ptrtag|chr|clear_sentry|clearsym|closurep?|cmatrixp?|cols?|c olcat(?:map)?|colmap|colrev|colvector(?:p|seq)?|complex(?:_float_(?:matrix|point er)|_matrix(?:_view)?|_pointer|p)?|conj|cookedp?|cst|cstring(?:_(?:dup|list|vect or))?|curry3?|cyclen?|del_(?:constdef|fundef|interface|macdef|typedef|vardef)|de lete|diag(?:mat)?|dim|dmatrixp?|do|double(?:_matrix(?:_view)?|_pointer|p)?|dowit h3?|drop|dropwhile|eval(?:cmd)?|exactp|filter|fix|fixity|flip|float(?:_matrix|_p ointer)|floor|fold[lr]1?|frac|free|funp?|functionp?|gcd|get(?:_(?:byte|constdef| double|float|fundef|int(?:64)?|interface(?:_typedef)?|long|macdef|pointer|ptrtag |short|sentry|string|typedef|vardef))?|globsym|hash|head|id|im|imatrixp?|index|i nexactp|infp|init|insert|int(?:_matrix(?:_view)?|_pointer|p)?|int64_(?:matrix|po inter)|integerp?|iteraten?|iterwhile|join|keys?|lambdap?|last(?:err(?:pos)?)?|lc d|list[2p]?|listmap|make_ptrtag|malloc|map|matcat|matrixp?|max|member|min|nanp|n args|nmatrixp?|null|numberp?|ord|pack(?:ed)?|pointer(?:_cast|_tag|_type|p)?|pow| pred|ptrtag|put(?:_(?:byte|double|float|int(?:64)?|long|pointer|short|string))?| rationalp?|re|realp?|realloc|recordp?|redim|reduce(?:_with)?|refp?|repeatn?|reve rse|rlistp?|round|rows?|rowcat(?:map)?|rowmap|rowrev|rowvector(?:p|seq)?|same|sc an[lr]1?|sentry|sgn|short_(?:matrix|pointer)|slice|smatrixp?|sort|split|str|strc at|stream|stride|string(?:_(?:dup|list|vector)|p)?|subdiag(?:mat)?|submat|subseq 2?|substr|succ|supdiag(?:mat)?|symbolp?|tail|take|takewhile|thunkp?|transpose|tr unc|tuplep?|typep|ubyte|uint(?:64)?|ulong|uncurry3?|unref|unzip3?|update|ushort| vals?|varp?|vector(?:p|seq)?|void|zip3?|zipwith3?)\b/,
36 'special': {
37 pattern: /\b__[a-z]+__\b/i,
38 alias: 'builtin'
39 },
40 // Any combination of operator chars can be an operator
41 'operator': /(?=\b_|[^_])[!"#$%&'*+,\-.\/:<=>?@\\^_`|~\u00a1-\u0 0bf\u00d7-\u00f7\u20d0-\u2bff]+|\b(?:and|div|mod|not|or)\b/,
42 // FIXME: How can we prevent | and , to be highlighted as operat or when they are used alone?
43 'punctuation': /[(){}\[\];,|]/
44 };
45
46 var inlineLanguages = [
47 'c',
48 { lang: 'c++', alias: 'cpp' },
49 'fortran',
50 'ats',
51 'dsp'
52 ];
53 var inlineLanguageRe = '%< *-\\*- *{lang}\\d* *-\\*-[\\s\\S]+?%>';
54
55 inlineLanguages.forEach(function (lang) {
56 var alias = lang;
57 if (typeof lang !== 'string') {
58 alias = lang.alias;
59 lang = lang.lang;
60 }
61 if (Prism.languages[alias]) {
62 var o = {};
63 o['inline-lang-' + alias] = {
64 pattern: RegExp(inlineLanguageRe.replace('{lang} ', lang.replace(/([.+*?\/\\(){}\[\]])/g,'\\$1')), 'i'),
65 inside: Prism.util.clone(Prism.languages.pure['i nline-lang'].inside)
66 };
67 o['inline-lang-' + alias].inside.rest = Prism.util.clone (Prism.languages[alias]);
68 Prism.languages.insertBefore('pure', 'inline-lang', o);
69 }
70 });
71
72 // C is the default inline language
73 if (Prism.languages.c) {
74 Prism.languages.pure['inline-lang'].inside.rest = Prism.util.clo ne(Prism.languages.c);
75 }
76
77 }(Prism));
OLDNEW
« no previous file with comments | « lib/src/prism/components/prism-prolog.min.js ('k') | lib/src/prism/components/prism-pure.min.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698