UNPKG

576 BJavaScriptView Raw
1(function (Prism) {
2
3 Prism.languages.erb = Prism.languages.extend('ruby', {});
4 Prism.languages.insertBefore('erb', 'comment', {
5 'delimiter': {
6 pattern: /^<%=?|%>$/,
7 alias: 'punctuation'
8 }
9 });
10
11 Prism.hooks.add('before-tokenize', function(env) {
12 var erbPattern = /<%=?(?:[^\r\n]|[\r\n](?!=begin)|[\r\n]=begin\s[\s\S]*?^=end)+?%>/gm;
13 Prism.languages['markup-templating'].buildPlaceholders(env, 'erb', erbPattern);
14 });
15
16 Prism.hooks.add('after-tokenize', function(env) {
17 Prism.languages['markup-templating'].tokenizePlaceholders(env, 'erb');
18 });
19
20}(Prism));