UNPKG

refractor

Version:

Lightweight, robust, elegant virtual syntax highlighting using Prism

38 lines (36 loc) 977 B
// @ts-nocheck /** * @import {Refractor} from '../lib/core.js' */ import refractorLua from './lua.js' import refractorMarkupTemplating from './markup-templating.js' etlua.displayName = 'etlua' etlua.aliases = [] /** @param {Refractor} Prism */ export default function etlua(Prism) { Prism.register(refractorLua) Prism.register(refractorMarkupTemplating) ;(function (Prism) { Prism.languages.etlua = { delimiter: { pattern: /^<%[-=]?|-?%>$/, alias: 'punctuation' }, 'language-lua': { pattern: /[\s\S]+/, inside: Prism.languages.lua } } Prism.hooks.add('before-tokenize', function (env) { var pattern = /<%[\s\S]+?%>/g Prism.languages['markup-templating'].buildPlaceholders( env, 'etlua', pattern ) }) Prism.hooks.add('after-tokenize', function (env) { Prism.languages['markup-templating'].tokenizePlaceholders(env, 'etlua') }) })(Prism) }