main
Last change
on this file was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 15 months ago |
Initial commit
|
-
Property mode
set to
100644
|
File size:
1.0 KB
|
Line | |
---|
1 | 'use strict'
|
---|
2 | var refractorRuby = require('./ruby.js')
|
---|
3 | var refractorMarkupTemplating = require('./markup-templating.js')
|
---|
4 | module.exports = erb
|
---|
5 | erb.displayName = 'erb'
|
---|
6 | erb.aliases = []
|
---|
7 | function erb(Prism) {
|
---|
8 | Prism.register(refractorRuby)
|
---|
9 | Prism.register(refractorMarkupTemplating)
|
---|
10 | ;(function (Prism) {
|
---|
11 | Prism.languages.erb = {
|
---|
12 | delimiter: {
|
---|
13 | pattern: /^(\s*)<%=?|%>(?=\s*$)/,
|
---|
14 | lookbehind: true,
|
---|
15 | alias: 'punctuation'
|
---|
16 | },
|
---|
17 | ruby: {
|
---|
18 | pattern: /\s*\S[\s\S]*/,
|
---|
19 | alias: 'language-ruby',
|
---|
20 | inside: Prism.languages.ruby
|
---|
21 | }
|
---|
22 | }
|
---|
23 | Prism.hooks.add('before-tokenize', function (env) {
|
---|
24 | var erbPattern =
|
---|
25 | /<%=?(?:[^\r\n]|[\r\n](?!=begin)|[\r\n]=begin\s(?:[^\r\n]|[\r\n](?!=end))*[\r\n]=end)+?%>/g
|
---|
26 | Prism.languages['markup-templating'].buildPlaceholders(
|
---|
27 | env,
|
---|
28 | 'erb',
|
---|
29 | erbPattern
|
---|
30 | )
|
---|
31 | })
|
---|
32 | Prism.hooks.add('after-tokenize', function (env) {
|
---|
33 | Prism.languages['markup-templating'].tokenizePlaceholders(env, 'erb')
|
---|
34 | })
|
---|
35 | })(Prism)
|
---|
36 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.