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

Unified Diff: lib/src/prism/components/prism-bison.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, 2 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « lib/src/prism/components/prism-batch.min.js ('k') | lib/src/prism/components/prism-bison.min.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lib/src/prism/components/prism-bison.js
diff --git a/lib/src/prism/components/prism-bison.js b/lib/src/prism/components/prism-bison.js
new file mode 100644
index 0000000000000000000000000000000000000000..9a65a537d191f8831b75e3828ece5180dcbd49d3
--- /dev/null
+++ b/lib/src/prism/components/prism-bison.js
@@ -0,0 +1,39 @@
+Prism.languages.bison = Prism.languages.extend('c', {});
+
+Prism.languages.insertBefore('bison', 'comment', {
+ 'bison': {
+ // This should match all the beginning of the file
+ // including the prologue(s), the bison declarations and
+ // the grammar rules.
+ pattern: /^[\s\S]*?%%[\s\S]*?%%/,
+ inside: {
+ 'c': {
+ // Allow for one level of nested braces
+ pattern: /%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/,
+ inside: {
+ 'delimiter': {
+ pattern: /^%?\{|%?\}$/,
+ alias: 'punctuation'
+ },
+ 'bison-variable': {
+ pattern: /[$@](?:<[^\s>]+>)?[\w$]+/,
+ alias: 'variable',
+ inside: {
+ 'punctuation': /<|>/
+ }
+ },
+ rest: Prism.languages.c
+ }
+ },
+ 'comment': Prism.languages.c.comment,
+ 'string': Prism.languages.c.string,
+ 'property': /\S+(?=:)/,
+ 'keyword': /%\w+/,
+ 'number': {
+ pattern: /(^|[^@])\b(?:0x[\da-f]+|\d+)/i,
+ lookbehind: true
+ },
+ 'punctuation': /%[%?]|[|:;\[\]<>]/
+ }
+ }
+});
« no previous file with comments | « lib/src/prism/components/prism-batch.min.js ('k') | lib/src/prism/components/prism-bison.min.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698