@speed-highlight/core 1.1.6 → 1.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -14
- package/doc/common.js.html +87 -0
- package/doc/css/jsdoc-template.css +1 -0
- package/doc/css/tomorrow.min.css +2 -0
- package/doc/detect%0ALanguage%20detectormodule_.html +309 -0
- package/doc/detect.js.html +113 -0
- package/doc/global.html +1826 -0
- package/doc/index%0ABase%20scriptmodule_.html +1179 -0
- package/doc/index.html +402 -0
- package/doc/index.js.html +209 -0
- package/doc/js/jsdoc-template.js +2 -0
- package/doc/js/jsdoc-template.js.map +1 -0
- package/doc/js/prettify.min.js +47 -0
- package/doc/term%0ATerminal%20adaptormodule_.html +596 -0
- package/doc/term.js.html +108 -0
- package/examples/{helper/data.js → data.js} +28 -16
- package/examples/deno.js +53 -7
- package/examples/index.html +103 -37
- package/examples/languages/test.c +1 -1
- package/examples/languages/test.go +4 -4
- package/examples/languages/test.html +1 -1
- package/examples/languages/test.java +3 -3
- package/examples/node.js +1 -1
- package/examples/worker.html +1 -0
- package/jsdoc.json +16 -0
- package/package.json +42 -38
- package/src/color.js +11 -0
- package/src/detect.js +21 -5
- package/src/index.js +55 -40
- package/src/languages/c.js +1 -1
- package/src/languages/go.js +1 -1
- package/src/languages/java.js +1 -1
- package/src/languages/js.js +1 -1
- package/src/languages/py.js +1 -1
- package/src/languages/rs.js +1 -1
- package/src/terminal.js +42 -0
- package/src/themes/atom-dark.css +1 -1
- package/src/themes/atom-dark.js +18 -0
- package/src/themes/default.css +4 -9
- package/src/themes/default.js +16 -24
- package/typedef.js +34 -0
- package/assets/screenshot.png +0 -0
- package/dist/common.js +0 -1
- package/dist/detect.js +0 -1
- package/dist/index.js +0 -3
- package/dist/languages/asm.js +0 -1
- package/dist/languages/bash.js +0 -1
- package/dist/languages/bf.js +0 -1
- package/dist/languages/c.js +0 -1
- package/dist/languages/css.js +0 -1
- package/dist/languages/csv.js +0 -1
- package/dist/languages/diff.js +0 -1
- package/dist/languages/docker.js +0 -1
- package/dist/languages/git.js +0 -1
- package/dist/languages/go.js +0 -1
- package/dist/languages/html.js +0 -1
- package/dist/languages/http.js +0 -1
- package/dist/languages/ini.js +0 -1
- package/dist/languages/java.js +0 -1
- package/dist/languages/js.js +0 -1
- package/dist/languages/js_template_literals.js +0 -1
- package/dist/languages/jsdoc.js +0 -1
- package/dist/languages/json.js +0 -1
- package/dist/languages/leanpub-md.js +0 -2
- package/dist/languages/log.js +0 -1
- package/dist/languages/lua.js +0 -1
- package/dist/languages/make.js +0 -1
- package/dist/languages/md.js +0 -2
- package/dist/languages/pl.js +0 -1
- package/dist/languages/plain.js +0 -1
- package/dist/languages/py.js +0 -1
- package/dist/languages/regex.js +0 -1
- package/dist/languages/rs.js +0 -1
- package/dist/languages/sql.js +0 -1
- package/dist/languages/todo.js +0 -1
- package/dist/languages/toml.js +0 -1
- package/dist/languages/ts.js +0 -1
- package/dist/languages/uri.js +0 -1
- package/dist/languages/xml.js +0 -1
- package/dist/languages/yaml.js +0 -1
- package/dist/node/common.js +0 -1
- package/dist/node/detect.js +0 -1
- package/dist/node/index.js +0 -3
- package/dist/node/languages/asm.js +0 -1
- package/dist/node/languages/bash.js +0 -1
- package/dist/node/languages/bf.js +0 -1
- package/dist/node/languages/c.js +0 -1
- package/dist/node/languages/css.js +0 -1
- package/dist/node/languages/csv.js +0 -1
- package/dist/node/languages/diff.js +0 -1
- package/dist/node/languages/docker.js +0 -1
- package/dist/node/languages/git.js +0 -1
- package/dist/node/languages/go.js +0 -1
- package/dist/node/languages/html.js +0 -1
- package/dist/node/languages/http.js +0 -1
- package/dist/node/languages/ini.js +0 -1
- package/dist/node/languages/java.js +0 -1
- package/dist/node/languages/js.js +0 -1
- package/dist/node/languages/js_template_literals.js +0 -1
- package/dist/node/languages/jsdoc.js +0 -1
- package/dist/node/languages/json.js +0 -1
- package/dist/node/languages/leanpub-md.js +0 -2
- package/dist/node/languages/log.js +0 -1
- package/dist/node/languages/lua.js +0 -1
- package/dist/node/languages/make.js +0 -1
- package/dist/node/languages/md.js +0 -2
- package/dist/node/languages/pl.js +0 -1
- package/dist/node/languages/plain.js +0 -1
- package/dist/node/languages/py.js +0 -1
- package/dist/node/languages/regex.js +0 -1
- package/dist/node/languages/rs.js +0 -1
- package/dist/node/languages/sql.js +0 -1
- package/dist/node/languages/todo.js +0 -1
- package/dist/node/languages/toml.js +0 -1
- package/dist/node/languages/ts.js +0 -1
- package/dist/node/languages/uri.js +0 -1
- package/dist/node/languages/xml.js +0 -1
- package/dist/node/languages/yaml.js +0 -1
- package/dist/node/term.js +0 -1
- package/dist/node/themes/default.js +0 -1
- package/dist/term.js +0 -1
- package/dist/themes/atom-dark.css +0 -1
- package/dist/themes/dark.css +0 -1
- package/dist/themes/default.css +0 -1
- package/dist/themes/default.js +0 -1
- package/dist/themes/github-dark.css +0 -1
- package/dist/themes/github-dim.css +0 -1
- package/dist/themes/github-light.css +0 -1
- package/dist/themes/visual-studio-dark.css +0 -1
- package/examples/dist.html +0 -27
- package/examples/helper/elm.js +0 -58
- package/examples/style.css +0 -28
- package/src/term.js +0 -19
package/src/index.js
CHANGED
|
@@ -1,28 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @module index
|
|
3
|
+
* (Base script)
|
|
3
4
|
*/
|
|
4
5
|
|
|
6
|
+
import '../typedef.js'
|
|
7
|
+
|
|
5
8
|
import expandData from './common.js';
|
|
6
9
|
|
|
7
10
|
const langs = {},
|
|
8
11
|
sanitize = (str = '') =>
|
|
9
12
|
str.replaceAll('&', '&').replaceAll?.('<', '<').replaceAll?.('>', '>'),
|
|
10
13
|
/**
|
|
11
|
-
*
|
|
12
|
-
* @
|
|
13
|
-
*
|
|
14
|
-
* @
|
|
14
|
+
* @function
|
|
15
|
+
* @ignore
|
|
16
|
+
* Create a HTML element with the right token styling
|
|
17
|
+
* @param {String} str The content (need to be sanitized)
|
|
18
|
+
* @param {ShjToken} [token] The type of token
|
|
19
|
+
* @returns A HMTL string
|
|
15
20
|
*/
|
|
16
21
|
toSpan = (str, token) => token ? `<span class="shj-syn-${token}">${str}</span>` : str;
|
|
17
22
|
|
|
18
23
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* @param {String
|
|
22
|
-
* @param {
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* * the
|
|
24
|
+
* @function tokenize
|
|
25
|
+
* Find the tokens in the given code and call the callback
|
|
26
|
+
* @param {String} src The code
|
|
27
|
+
* @param {ShjLanguage|Array} lang The language of the code
|
|
28
|
+
* @param {function(String, ShjToken=):void} token The callback function
|
|
29
|
+
* this function will be given
|
|
30
|
+
* * the text of the token
|
|
31
|
+
* * the type of the token
|
|
26
32
|
*/
|
|
27
33
|
export async function tokenize(src, lang, token) {
|
|
28
34
|
try {
|
|
@@ -79,51 +85,60 @@ export async function tokenize(src, lang, token) {
|
|
|
79
85
|
}
|
|
80
86
|
|
|
81
87
|
/**
|
|
88
|
+
* @function highlightText
|
|
82
89
|
* @async
|
|
83
|
-
*
|
|
90
|
+
* Highlight a string passed as argument and return it
|
|
84
91
|
* @example
|
|
85
92
|
* elm.innerHTML = await highlightText(code, 'js');
|
|
86
|
-
* @param {String} src
|
|
87
|
-
* @param {
|
|
88
|
-
* @param {Boolean} [multiline=true]
|
|
89
|
-
* @
|
|
93
|
+
* @param {String} src The code
|
|
94
|
+
* @param {ShjLanguage} lang The language of the code
|
|
95
|
+
* @param {Boolean} [multiline=true] If it is multiline, it will add a wrapper for the line numbering and header
|
|
96
|
+
* @param {ShjOptions} [opt={}] Customization options
|
|
97
|
+
* @returns {Promise<String>} The highlighted string
|
|
90
98
|
*/
|
|
91
|
-
export async function highlightText(src, lang, multiline = true) {
|
|
92
|
-
let
|
|
93
|
-
|
|
94
|
-
await tokenize(src, lang, (str, type) => res += toSpan(sanitize(str), type))
|
|
99
|
+
export async function highlightText(src, lang, multiline = true, opt = {}) {
|
|
100
|
+
let tmp = ''
|
|
101
|
+
await tokenize(src, lang, (str, type) => tmp += toSpan(sanitize(str), type))
|
|
95
102
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
103
|
+
return multiline
|
|
104
|
+
? `<div><div class="shj-numbers">${'<div></div>'.repeat(!opt.hideLineNumbers && src.split('\n').length)}</div><div>${tmp}</div></div>`
|
|
105
|
+
: tmp;
|
|
99
106
|
}
|
|
100
107
|
|
|
101
108
|
/**
|
|
109
|
+
* @function highlightElement
|
|
102
110
|
* @async
|
|
103
|
-
*
|
|
104
|
-
* @param {
|
|
105
|
-
* @param {
|
|
106
|
-
* @param {
|
|
111
|
+
* Highlight a DOM element by getting the new innerHTML with highlightText
|
|
112
|
+
* @param {Element} elm The DOM element
|
|
113
|
+
* @param {ShjLanguage} [lang] The language of the code (seaching by default on `elm` for a 'shj-lang-' class)
|
|
114
|
+
* @param {ShjDisplayMode} [mode] The display mode (guessed by default)
|
|
115
|
+
* @param {ShjOptions} [opt={}] Customization options
|
|
107
116
|
*/
|
|
108
|
-
export async function highlightElement(elm, lang = elm.className.match(/shj-lang-([\w-]+)/)?.[1], mode) {
|
|
117
|
+
export async function highlightElement(elm, lang = elm.className.match(/shj-lang-([\w-]+)/)?.[1], mode, opt) {
|
|
109
118
|
let txt = elm.textContent;
|
|
110
119
|
mode ??= `${elm.tagName == 'CODE' ? 'in' : (txt.split('\n').length < 2 ? 'one' : 'multi')}line`;
|
|
111
120
|
elm.dataset.lang = lang;
|
|
112
121
|
elm.className = `${[...elm.classList].filter(className => !className.startsWith('shj-') || className.startsWith('shj-mode-')).join(' ')} shj-lang-${lang} shj-${mode}`;
|
|
113
|
-
elm.innerHTML = await highlightText(txt, lang, mode == 'multiline');
|
|
122
|
+
elm.innerHTML = await highlightText(txt, lang, mode == 'multiline', opt);
|
|
114
123
|
}
|
|
115
124
|
|
|
116
125
|
/**
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
* <div class='shj-lang-[code-language]'>[code]</div>
|
|
122
|
-
* or
|
|
123
|
-
* <code class='shj-lang-[code-language]'>[inline code]</code>
|
|
124
|
-
* ```
|
|
126
|
+
* @function highlightAll
|
|
127
|
+
* @async
|
|
128
|
+
* Call highlightElement on element with a css class starting with `shj-lang-`
|
|
129
|
+
* @param {ShjOptions} [opt={}] Customization options
|
|
125
130
|
*/
|
|
126
|
-
export let highlightAll = async () =>
|
|
131
|
+
export let highlightAll = async (opt) =>
|
|
127
132
|
document
|
|
128
133
|
.querySelectorAll('[class*="shj-lang-"]')
|
|
129
|
-
.forEach(elm => highlightElement(elm))
|
|
134
|
+
.forEach(elm => highlightElement(elm, undefined, undefined, opt))
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* @function loadLanguage
|
|
138
|
+
* Load a language and add it to the langs object
|
|
139
|
+
* @param {String} languageName The name of the language
|
|
140
|
+
* @param {ShjLanguage} language The language
|
|
141
|
+
*/
|
|
142
|
+
export let loadLanguage = (languageName, language) => {
|
|
143
|
+
langs[languageName] = language;
|
|
144
|
+
}
|
package/src/languages/c.js
CHANGED
package/src/languages/go.js
CHANGED
package/src/languages/java.js
CHANGED
package/src/languages/js.js
CHANGED
package/src/languages/py.js
CHANGED
package/src/languages/rs.js
CHANGED
package/src/terminal.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module terminal
|
|
3
|
+
* (Terminal adaptor)
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import '../typedef.js'
|
|
7
|
+
|
|
8
|
+
import { tokenize } from './index.js';
|
|
9
|
+
|
|
10
|
+
let theme = import('./themes/default.js');
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @function highlightText
|
|
14
|
+
* @async
|
|
15
|
+
* Highlight a string passed as argument and return a string that can directly be printed
|
|
16
|
+
* @param {String} src The code
|
|
17
|
+
* @param {ShjLanguage} lang The language of the code
|
|
18
|
+
* @returns {Promise<String>} The highlighted string
|
|
19
|
+
*/
|
|
20
|
+
export const highlightText = async (src, lang) => {
|
|
21
|
+
let res = '', themeMap = (await theme).default;
|
|
22
|
+
|
|
23
|
+
await tokenize(src, lang, (str, token) => res += token ? `${themeMap[token] ?? ''}${str}\x1b[0m` : str);
|
|
24
|
+
|
|
25
|
+
return res;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @function printHighlight
|
|
30
|
+
* @async
|
|
31
|
+
* Highlight and print a given string
|
|
32
|
+
* @param {String} src The code
|
|
33
|
+
* @param {ShjLanguage} lang The language of the code
|
|
34
|
+
*/
|
|
35
|
+
export const printHighlight = async (src, lang) => console.log(await highlightText(src, lang));
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @function setTheme
|
|
39
|
+
* Change the current used theme for highlighting
|
|
40
|
+
* @param {ShjTerminalTheme} name The name of the theme
|
|
41
|
+
*/
|
|
42
|
+
export const setTheme = async name => theme = import(`./themes/${name}.js`);
|
package/src/themes/atom-dark.css
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import col from '../color.js'
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
deleted: col.red,
|
|
5
|
+
var: col.red,
|
|
6
|
+
err: col.red,
|
|
7
|
+
kwd: col.magenta,
|
|
8
|
+
num: col.yellow,
|
|
9
|
+
class: col.yellow,
|
|
10
|
+
cmnt: col.gray,
|
|
11
|
+
insert: col.green,
|
|
12
|
+
str: col.green,
|
|
13
|
+
bool: col.cyan,
|
|
14
|
+
type: col.blue,
|
|
15
|
+
oper: col.blue,
|
|
16
|
+
section: col.magenta,
|
|
17
|
+
func: col.blue
|
|
18
|
+
}
|
package/src/themes/default.css
CHANGED
|
@@ -7,10 +7,8 @@
|
|
|
7
7
|
color: #112;
|
|
8
8
|
box-shadow: 0 0 5px #0001;
|
|
9
9
|
text-shadow: none;
|
|
10
|
-
font
|
|
11
|
-
|
|
12
|
-
line-height: 19px;
|
|
13
|
-
font-family: Consolas, "Courier New", Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
|
10
|
+
font: normal 18px Consolas, "Courier New", Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
|
11
|
+
line-height: 24px;
|
|
14
12
|
box-sizing: border-box;
|
|
15
13
|
max-width: min(100%, 100vw)
|
|
16
14
|
}
|
|
@@ -76,12 +74,9 @@
|
|
|
76
74
|
.shj-multiline.shj-mode-header:before {
|
|
77
75
|
content: attr(data-lang);
|
|
78
76
|
color: #58f;
|
|
79
|
-
height: 32px;
|
|
80
77
|
display: block;
|
|
81
|
-
padding:
|
|
82
|
-
overflow: hidden;
|
|
78
|
+
padding: 10px 20px;
|
|
83
79
|
background: #58f3;
|
|
84
|
-
line-height: 32px;
|
|
85
80
|
border-radius: 5px;
|
|
86
|
-
margin-bottom:
|
|
81
|
+
margin-bottom: 20px
|
|
87
82
|
}
|
package/src/themes/default.js
CHANGED
|
@@ -1,26 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
red = '\x1b[31m',
|
|
3
|
-
green = '\x1b[32m',
|
|
4
|
-
gray = '\x1b[90m',
|
|
5
|
-
yellow = '\x1b[33m',
|
|
6
|
-
blue = '\x1b[34m',
|
|
7
|
-
magenta = '\x1b[35m',
|
|
8
|
-
cyan = '\x1b[36m',
|
|
9
|
-
white = '\x1b[37m';
|
|
1
|
+
import col from '../color.js'
|
|
10
2
|
|
|
11
3
|
export default {
|
|
12
|
-
deleted: red,
|
|
13
|
-
var: red,
|
|
14
|
-
err: red,
|
|
15
|
-
kwd: red,
|
|
16
|
-
num: yellow,
|
|
17
|
-
class: yellow,
|
|
18
|
-
cmnt: gray,
|
|
19
|
-
insert: green,
|
|
20
|
-
str: green,
|
|
21
|
-
bool: cyan,
|
|
22
|
-
type: blue,
|
|
23
|
-
oper: blue,
|
|
24
|
-
section: magenta,
|
|
25
|
-
func: magenta
|
|
26
|
-
}
|
|
4
|
+
deleted: col.red,
|
|
5
|
+
var: col.red,
|
|
6
|
+
err: col.red,
|
|
7
|
+
kwd: col.red,
|
|
8
|
+
num: col.yellow,
|
|
9
|
+
class: col.yellow,
|
|
10
|
+
cmnt: col.gray,
|
|
11
|
+
insert: col.green,
|
|
12
|
+
str: col.green,
|
|
13
|
+
bool: col.cyan,
|
|
14
|
+
type: col.blue,
|
|
15
|
+
oper: col.blue,
|
|
16
|
+
section: col.magenta,
|
|
17
|
+
func: col.magenta
|
|
18
|
+
}
|
package/typedef.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module _type
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Languages supported
|
|
7
|
+
* @typedef {('asm'|'bash'|'bf'|'c'|'css'|'csv'|'diff'|'docker'|'git'|'go'|'html'|'http'|'ini'|'java'|'js'|'jsdoc'|'json'|'leanpub-md'|'log'|'lua'|'make'|'md'|'pl'|'plain'|'py'|'regex'|'rs'|'sql'|'todo'|'toml'|'ts'|'uri'|'xml'|'yaml')} ShjLanguage
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Themes supported in the browser
|
|
12
|
+
* @typedef {('atom-dark'|'github-dark'|'github-dim'|'dark'|'default'|'github-light'|'visual-studio-dark')} ShjBrowserTheme
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Languages supported
|
|
17
|
+
* @typedef {('default'|'atom-dark')} ShjTerminalTheme
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @typedef {('inline'|'oneline'|'multiline')} ShjDisplayMode
|
|
22
|
+
* * `inline` inside `code` element
|
|
23
|
+
* * `oneline` inside `div` element and containing only one line
|
|
24
|
+
* * `multiline` inside `div` element
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* @typedef {('deleted'|'err'|'var'|'section'|'kwd'|'class'|'cmnt'|'insert'|'type'|'func'|'bool'|'num'|'oper'|'str'|'esc')} ShjToken
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @typedef {Object} ShjOptions
|
|
33
|
+
* @property {Boolean} [hideLineNumbers=false] Indicates whether to hide line numbers
|
|
34
|
+
*/
|
package/assets/screenshot.png
DELETED
|
Binary file
|
package/dist/common.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};export{t as default};
|
package/dist/detect.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var m=[["bash",[/#!(\/usr)?\/bin\/bash/g,500],[/\b(if|elif|then|fi|echo)\b|\$/g,10]],["html",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^\s+<!DOCTYPE\s+html/g,500]],["http",[/^(GET|HEAD|POST|PUT|DELETE|PATCH|HTTP)\b/g,500]],["js",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require)\b/g,10]],["ts",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require|implements|interface|namespace)\b/g,10]],["py",[/\b(def|print|class|and|or|lambda)\b/g,10]],["sql",[/\b(SELECT|INSERT|FROM)\b/g,50]],["pl",[/#!(\/usr)?\/bin\/perl/g,500],[/\b(use|print)\b|\$/g,10]],["lua",[/#!(\/usr)?\/bin\/lua/g,500]],["make",[/\b(ifneq|endif|if|elif|then|fi|echo|.PHONY|^[a-z]+ ?:$)\b|\$/gm,10]],["uri",[/https?:|mailto:|tel:|ftp:/g,30]],["css",[/^(@import|@page|@media|(\.|#)[a-z]+)/gm,20]],["diff",[/^[+><-]/gm,10],[/^@@ ?[-+,0-9 ]+ ?@@/gm,25]],["md",[/^(>|\t\*|\t\d+.)/gm,10],[/\[.*\](.*)/g,10]],["docker",[/^(FROM|ENTRYPOINT|RUN)/gm,500]],["xml",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^<\?xml/g,500]],["c",[/#include\b|\bprintf\s+\(/g,100]],["rs",[/^\s+(use|fn|mut|match)\b/gm,100]],["go",[/\b(func|fmt|package)\b/g,100]],["java",[/^import\s+java/gm,500]],["asm",[/^(section|global main|extern|\t(call|mov|ret))/gm,100]]],l=n=>{var a;return((a=m.map(([t,...e])=>[e.reduce((s,[i,g])=>s+[...n.matchAll(i)].length*g,0),t]).filter(([t,e])=>t>10).sort((t,e)=>e[0]-t[0])[0])==null?void 0:a[1])||"plain"};export{l as detectLanguage};
|
package/dist/index.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
var x={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};var u={},o=(t="")=>{var a,i,s,e;return(e=(i=(a=t.replaceAll("&","&")).replaceAll)==null?void 0:(s=i.call(a,"<","<")).replaceAll)==null?void 0:e.call(s,">",">")},m=(t,a)=>a?`<span class="shj-syn-${a}">${t}</span>`:t;async function f(t,a,i){var s;try{let e,l,n={},p,h=[],c=0,d=typeof a=="string"?await((s=u[a])!=null?s:u[a]=import(`./languages/${a}.js`)):a,r=[...typeof a=="string"?d.default:a.sub];for(;c<t.length;){for(n.index=null,e=r.length;e-- >0;){if(l=r[e].expand?x[r[e].expand]:r[e],h[e]===void 0||h[e].match.index<c){if(l.match.lastIndex=c,p=l.match.exec(t),p===null){r.splice(e,1),h.splice(e,1);continue}h[e]={match:p,lastIndex:l.match.lastIndex}}h[e].match[0]&&(h[e].match.index<=n.index||n.index===null)&&(n={part:l,index:h[e].match.index,match:h[e].match[0],end:h[e].lastIndex})}if(n.index===null)break;i(t.slice(c,n.index),d.type),c=n.end,n.part.sub?await f(n.match,typeof n.part.sub=="string"?n.part.sub:typeof n.part.sub=="function"?n.part.sub(n.match):n.part,i):i(n.match,n.part.type)}i(t.slice(c,t.length),d.type)}catch{i(t)}}async function y(t,a,i=!0){let s=i?`<div><div class="shj-numbers">${"<div></div>".repeat(t.split(`
|
|
2
|
-
`).length)}</div><div>`:"";return await f(t,a,(e,l)=>s+=m(o(e),l)),i&&(s+="</div></div>"),s}async function g(t,a=(s=>(s=t.className.match(/shj-lang-([\w-]+)/))==null?void 0:s[1])(),i){let e=t.textContent;i!=null||(i=`${t.tagName=="CODE"?"in":e.split(`
|
|
3
|
-
`).length<2?"one":"multi"}line`),t.dataset.lang=a,t.className=`${[...t.classList].filter(l=>!l.startsWith("shj-")||l.startsWith("shj-mode-")).join(" ")} shj-lang-${a} shj-${i}`,t.innerHTML=await y(e,a,i=="multiline")}var v=async()=>document.querySelectorAll('[class*="shj-lang-"]').forEach(t=>g(t));export{v as highlightAll,g as highlightElement,y as highlightText,f as tokenize};
|
package/dist/languages/asm.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"cmnt",match:/;.*/gm},{expand:"str"},{expand:"num"},{type:"kwd",match:/^[a-z]+\s+[a-z.]+/gm,sub:[{type:"func",match:/^[a-z]+/g}]},{type:"kwd",match:/^\t*[a-z]+/gm},{match:/%|\$/g,type:"oper"}];export{t as default};
|
package/dist/languages/bash.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={type:"var",match:/\$\w+|\${[^}]*}|\$\([^)]*\)/g},t=[{sub:"todo",match:/#.*/g},{type:"str",match:/(["'])((?!\1)[^\r\n\\]|\\[^])*\1?/g,sub:[e]},{type:"kwd",match:/-[a-zA-Z]+|$<|[&|;]+|\b(unset|readonly|shift|export|if|fi|else|elif|while|do|done|for|until|case|esac|break|continue|exit|return|trap|wait|eval|exec|then|declare|enable|local|select|typeset|time|add|remove|install|update|delete)\b/g},{expand:"num"},{type:"func",match:/\b(set|alias|bg|bind|builtin|caller|command|compgen|complete|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|read|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|unset)\b/g},{type:"bool",match:/\b(true|false)\b/g},{type:"func",match:/[a-z_]+(?=\s*\()/g},{type:"oper",match:/[=(){}<>+*/!?~^-]+/g},{type:"var",match:/\w+(?=\s*=)/g},e];export{t as default};
|
package/dist/languages/bf.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/[^\[\->+.<\]\s].*/g,sub:"todo"},{type:"func",match:/\.+/g},{type:"kwd",match:/[<>]+/g},{type:"oper",match:/[+-]+/g}];export{t as default};
|
package/dist/languages/c.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{expand:"num"},{type:"kwd",match:/#\s*include (<.*>|".*")/g,sub:[{type:"str",match:/(<|").*/g}]},{match:/asm\s*{[^}]*}/g,sub:[{type:"kwd",match:/^asm/g},{match:/[^{}]*(?=}$)/g,sub:"asm"}]},{type:"kwd",match:/\*|&|#[a-z]+\b|\b(asm|auto|double|int|struct|break|else|long|switch|case|enum|register|typedef|char|extern|return|union|const|float|short|unsigned|continue|for|signed|void|default|goto|sizeof|volatile|do|if|static|while)\b/g},{type:"oper",match:/[/*+:?&|%^~=!,<>.^-]+/g},{type:"func",match:/[a-zA-Z_][\w_]*(?=\s*\()/g},{type:"class",match:/[A-Z][\w_]*/g}];export{t as default};
|
package/dist/languages/css.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{type:"kwd",match:/@\w+\b|\b(and|not|only|or)\b|\b[a-z-]+(?=[^{}]*{)/g},{type:"var",match:/\b[\w-]+(?=\s*:)|(::?|\.)[\w-]+(?=[^{}]*{)/g},{type:"func",match:/#[\w-]+(?=[^{}]*{)/g},{type:"num",match:/#[\da-f]{3,8}/g},{type:"num",match:/\d+(\.\d+)?(cm|mm|in|px|pt|pc|em|ex|ch|rem|vm|vh|vmin|vmax|%)?/g,sub:[{type:"var",match:/[a-z]+|%/g}]},{match:/url\([^)]*\)/g,sub:[{type:"func",match:/url(?=\()/g},{type:"str",match:/[^()]+/g}]},{type:"func",match:/\b[a-zA-Z]\w*(?=\s*\()/g},{type:"num",match:/\b[a-z-]+\b/g}];export{t as default};
|
package/dist/languages/csv.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{expand:"strDouble"},{type:"oper",match:/,/g}];export{e as default};
|
package/dist/languages/diff.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"deleted",match:/^[-<].*/gm},{type:"insert",match:/^[+>].*/gm},{type:"kwd",match:/!.*/gm},{type:"section",match:/^@@.*@@$|^\d.*|^([*-+])\1\1.*/gm}];export{t as default};
|
package/dist/languages/docker.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={type:"var",match:/\$\w+|\${[^}]*}|\$\([^)]*\)/g},t=[{sub:"todo",match:/#.*/g},{type:"str",match:/(["'])((?!\1)[^\r\n\\]|\\[^])*\1?/g,sub:[e]},{type:"kwd",match:/-[a-zA-Z]+|$<|[&|;]+|\b(unset|readonly|shift|export|if|fi|else|elif|while|do|done|for|until|case|esac|break|continue|exit|return|trap|wait|eval|exec|then|declare|enable|local|select|typeset|time|add|remove|install|update|delete)\b/g},{expand:"num"},{type:"func",match:/\b(set|alias|bg|bind|builtin|caller|command|compgen|complete|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|read|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|unset)\b/g},{type:"bool",match:/\b(true|false)\b/g},{type:"func",match:/[a-z_]+(?=\s*\()/g},{type:"oper",match:/[=(){}<>+*/!?~^-]+/g},{type:"var",match:/\w+(?=\s*=)/g},e];var l=[{type:"kwd",match:/^(FROM|RUN|CMD|LABEL|MAINTAINER|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ARG|ONBUILD|STOPSIGNAL|HEALTHCHECK|SHELL)\b/gmi},...t];export{l as default};
|
package/dist/languages/git.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"deleted",match:/^[-<].*/gm},{type:"insert",match:/^[+>].*/gm},{type:"kwd",match:/!.*/gm},{type:"section",match:/^@@.*@@$|^\d.*|^([*-+])\1\1.*/gm}];var d=[{match:/^#.*/gm,sub:"todo"},{expand:"str"},...t,{type:"func",match:/^(\$ )?git(\s.*)?$/gm},{type:"kwd",match:/^commit \w+$/gm}];export{d as default};
|
package/dist/languages/go.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{expand:"num"},{type:"kwd",match:/\*|&|\b(break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go|goto|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/g},{type:"func",match:/[a-zA-Z_][\w_]*(?=\s*\()/g},{type:"class",match:/[A-Z][\w_]*/g},{type:"oper",match:/[+\-*\/%&|^~=!<>.^-]+/g}];export{t as default};
|
package/dist/languages/html.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var s=`\\s*(\\s+[a-z-]+\\s*(=\\s*([^"']\\S*|("|')(\\\\[^]|(?!\\4)[^])*\\4?)?)?\\s*)*`,t={match:RegExp(`</?[a-z_-]+${s}/?>`,"g"),sub:[{type:"var",match:/^<\/?[^\s>\/]+/g,sub:[{type:"oper",match:/^<\/?/g}]},{type:"str",match:/=\s*([^"']\S*|("|')(\\[^]|(?!\2)[^])*\2?)/g,sub:[{type:"oper",match:/^=/g}]},{type:"oper",match:/\/?>/g},{type:"class",match:/[a-z-]+/gi}]},e=[{match:/<!--((?!-->)[^])*-->/g,sub:"todo"},{type:"class",match:RegExp(`<\\?xml${s}\\?>`,"gi"),sub:[{type:"oper",match:/^<\?|\?>$/g},{type:"str",match:/"[^"]*"|'[^']*'/g},{type:"var",match:/xml/gi}]},{type:"class",match:/<!\[CDATA\[[\s\S]*?\]\]>/gi},t,{type:"var",match:/&(#x?)?[\da-z]{1,8};/gi}];var c=[{type:"class",match:/<!DOCTYPE("[^"]*"|'[^']*'|[^"'>])*>/gi,sub:[{type:"str",match:/"[^"]*"|'[^']*'/g},{type:"oper",match:/^<!|>$/g},{type:"var",match:/DOCTYPE/gi}]},{match:RegExp(`<style${s}>((?!</style>)[^])*</style\\s*>`,"g"),sub:[{match:RegExp(`^<style${s}>`,"g"),sub:t.sub},{match:RegExp(`${t.match}|[^]*(?=</style\\s*>$)`,"g"),sub:"css"},t]},{match:RegExp(`<script${s}>((?!<\/script>)[^])*<\/script\\s*>`,"g"),sub:[{match:RegExp(`^<script${s}>`,"g"),sub:t.sub},{match:RegExp(`${t.match}|[^]*(?=<\/script\\s*>$)`,"g"),sub:"js"},t]},...e];export{c as default};
|
package/dist/languages/http.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var r=[["bash",[/#!(\/usr)?\/bin\/bash/g,500],[/\b(if|elif|then|fi|echo)\b|\$/g,10]],["html",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^\s+<!DOCTYPE\s+html/g,500]],["http",[/^(GET|HEAD|POST|PUT|DELETE|PATCH|HTTP)\b/g,500]],["js",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require)\b/g,10]],["ts",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require|implements|interface|namespace)\b/g,10]],["py",[/\b(def|print|class|and|or|lambda)\b/g,10]],["sql",[/\b(SELECT|INSERT|FROM)\b/g,50]],["pl",[/#!(\/usr)?\/bin\/perl/g,500],[/\b(use|print)\b|\$/g,10]],["lua",[/#!(\/usr)?\/bin\/lua/g,500]],["make",[/\b(ifneq|endif|if|elif|then|fi|echo|.PHONY|^[a-z]+ ?:$)\b|\$/gm,10]],["uri",[/https?:|mailto:|tel:|ftp:/g,30]],["css",[/^(@import|@page|@media|(\.|#)[a-z]+)/gm,20]],["diff",[/^[+><-]/gm,10],[/^@@ ?[-+,0-9 ]+ ?@@/gm,25]],["md",[/^(>|\t\*|\t\d+.)/gm,10],[/\[.*\](.*)/g,10]],["docker",[/^(FROM|ENTRYPOINT|RUN)/gm,500]],["xml",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^<\?xml/g,500]],["c",[/#include\b|\bprintf\s+\(/g,100]],["rs",[/^\s+(use|fn|mut|match)\b/gm,100]],["go",[/\b(func|fmt|package)\b/g,100]],["java",[/^import\s+java/gm,500]],["asm",[/^(section|global main|extern|\t(call|mov|ret))/gm,100]]],n=s=>{var a;return((a=r.map(([t,...e])=>[e.reduce((g,[m,i])=>g+[...s.matchAll(m)].length*i,0),t]).filter(([t,e])=>t>10).sort((t,e)=>e[0]-t[0])[0])==null?void 0:a[1])||"plain"};var l=[{type:"kwd",match:/^(GET|HEAD|POST|PUT|DELETE|CONNECT|OPTIONS|TRACE|PATCH|PRI|SEARCH)\b/gm},{expand:"str"},{type:"section",match:/\bHTTP\/[\d.]+\b/g},{expand:"num"},{type:"oper",match:/[,;:=]/g},{type:"var",match:/[a-zA-Z][\w-]*(?=:)/g},{match:/\n\n[^]*/g,sub:n}];export{l as default};
|
package/dist/languages/ini.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/(^[ \f\t\v]*)[#;].*/gm,sub:"todo"},{type:"str",match:/.*/g},{type:"var",match:/.*(?==)/g},{type:"section",match:/^\s*\[.+\]\s*$/gm},{type:"oper",match:/=/g}];export{t as default};
|
package/dist/languages/java.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{expand:"num"},{type:"kwd",match:/\b(abstract|assert|boolean|break|byte|case|catch|char|class|continue|const|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|package|private|protected|public|requires|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|transient|try|var|void|volatile|while)\b/g},{type:"oper",match:/[/*+:?&|%^~=!,<>.^-]+/g},{type:"func",match:/[a-zA-Z_][\w_]*(?=\s*\()/g},{type:"class",match:/[A-Z][\w_]*/g}];export{t as default};
|
package/dist/languages/js.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/\/\*\*((?!\*\/)[^])*(\*\/)?/g,sub:"jsdoc"},{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{match:/`((?!`)[^]|\\[^])*`?/g,sub:"js_template_literals"},{type:"kwd",match:/=>|\b(this|set|get|as|async|await|break|case|catch|class|const|constructor|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|if|implements|import|in|instanceof|interface|let|var|of|new|package|private|protected|public|return|static|super|switch|throw|throws|try|typeof|void|while|with|yield)\b/g},{match:/\/((?!\/)[^\r\n\\]|\\.)+\/[dgimsuy]*/g,sub:"regex"},{expand:"num"},{type:"num",match:/\b(NaN|null|undefined|[A-Z][A-Z_]*)\b/g},{type:"bool",match:/\b(true|false)\b/g},{type:"oper",match:/[/*+:?&|%^~=!,<>.^-]+/g},{type:"class",match:/\b[A-Z]\w*\b/g},{type:"func",match:/[a-zA-Z$_][\w$_]*(?=\s*((\?\.)?\s*\(|=\s*(\(?[\w,{}\[\])]+\)? =>|function\b)))/g}];export{t as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var h=[{match:new class{exec(l){let e=this.lastIndex,t,n=i=>{for(;++e<l.length-2;)if(l[e]=="{")n();else if(l[e]=="}")return};for(;e<l.length;e++)if(l[e-1]!="\\"&&l[e]=="$"&&l[e+1]=="{")return t=e++,n(e),this.lastIndex=e+1,{index:t,0:l.slice(t,e+1)};return null}},sub:[{type:"kwd",match:/^\${|}$/g},{match:/(?!^\$|{)[^]+(?=}$)/g,sub:"js"}]}],a="str";export{h as default,a as type};
|
package/dist/languages/jsdoc.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"err",match:/\b(TODO|FIXME|DEBUG|OPTIMIZE|WARNING|XXX|BUG)\b/g},{type:"class",match:/\bIDEA\b/g},{type:"insert",match:/\b(CHANGED|FIX|CHANGE)\b/g},{type:"oper",match:/\bQUESTION\b/g}];var a=[{type:"kwd",match:/@\w+/g},{type:"class",match:/{[\w\s|<>,.@\[\]]+}/g},{type:"var",match:/\[[\w\s="']+\]/g},...t],c="cmnt";export{a as default,c as type};
|
package/dist/languages/json.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"var",match:/("|')?[a-zA-Z]\w*\1(?=\s*:)/g},{expand:"str"},{expand:"num"},{type:"num",match:/\bnull\b/g},{type:"bool",match:/\b(true|false)\b/g}];export{t as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var p=[["bash",[/#!(\/usr)?\/bin\/bash/g,500],[/\b(if|elif|then|fi|echo)\b|\$/g,10]],["html",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^\s+<!DOCTYPE\s+html/g,500]],["http",[/^(GET|HEAD|POST|PUT|DELETE|PATCH|HTTP)\b/g,500]],["js",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require)\b/g,10]],["ts",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require|implements|interface|namespace)\b/g,10]],["py",[/\b(def|print|class|and|or|lambda)\b/g,10]],["sql",[/\b(SELECT|INSERT|FROM)\b/g,50]],["pl",[/#!(\/usr)?\/bin\/perl/g,500],[/\b(use|print)\b|\$/g,10]],["lua",[/#!(\/usr)?\/bin\/lua/g,500]],["make",[/\b(ifneq|endif|if|elif|then|fi|echo|.PHONY|^[a-z]+ ?:$)\b|\$/gm,10]],["uri",[/https?:|mailto:|tel:|ftp:/g,30]],["css",[/^(@import|@page|@media|(\.|#)[a-z]+)/gm,20]],["diff",[/^[+><-]/gm,10],[/^@@ ?[-+,0-9 ]+ ?@@/gm,25]],["md",[/^(>|\t\*|\t\d+.)/gm,10],[/\[.*\](.*)/g,10]],["docker",[/^(FROM|ENTRYPOINT|RUN)/gm,500]],["xml",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^<\?xml/g,500]],["c",[/#include\b|\bprintf\s+\(/g,100]],["rs",[/^\s+(use|fn|mut|match)\b/gm,100]],["go",[/\b(func|fmt|package)\b/g,100]],["java",[/^import\s+java/gm,500]],["asm",[/^(section|global main|extern|\t(call|mov|ret))/gm,100]]],t=a=>{var s;return((s=p.map(([e,...n])=>[n.reduce((l,[g,r])=>l+[...a.matchAll(g)].length*r,0),e]).filter(([e,n])=>e>10).sort((e,n)=>n[0]-e[0])[0])==null?void 0:s[1])||"plain"};var m=[{type:"cmnt",match:/^>.*|(=|-)\1+/gm},{type:"class",match:/\*\*((?!\*\*).)*\*\*/g},{match:/```((?!```)[^])*\n```/g,sub:a=>({type:"kwd",sub:[{match:/\n[^]*(?=```)/g,sub:a.split(`
|
|
2
|
-
`)[0].slice(3)||t(a)}]})},{type:"str",match:/`[^`]*`/g},{type:"var",match:/~~((?!~~).)*~~/g},{type:"kwd",match:/_[^_]*_|\*[^*]*\*/g},{type:"kwd",match:/^\s*(\*|\d+\.)\s/gm},{type:"oper",match:/\[[^\]]*]/g},{type:"func",match:/\([^)]*\)/g}];var o=[{type:"insert",match:/(leanpub-start-insert)((?!leanpub-end-insert)[^])*(leanpub-end-insert)?/g,sub:[{type:"insert",match:/leanpub-(start|end)-insert/g},{match:/(?!leanpub-start-insert)((?!leanpub-end-insert)[^])*/g,sub:t}]},{type:"deleted",match:/(leanpub-start-delete)((?!leanpub-end-delete)[^])*(leanpub-end-delete)?/g,sub:[{type:"deleted",match:/leanpub-(start|end)-delete/g},{match:/(?!leanpub-start-delete)((?!leanpub-end-delete)[^])*/g,sub:t}]},...m];export{o as default};
|
package/dist/languages/log.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{type:"cmnt",match:/^#.*/gm},{expand:"strDouble"},{expand:"num"},{type:"err",match:/\b(err(or)?|[a-z_-]*exception|warn|warning|failed|ko|invalid|not ?found|alert|fatal)\b/gi},{type:"num",match:/\b(null|undefined)\b/gi},{type:"bool",match:/\b(false|true|yes|no)\b/gi},{type:"oper",match:/\.|,/g}];export{e as default};
|
package/dist/languages/lua.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{match:/^#!.*|--(\[(=*)\[((?!--\]\2\])[^])*--\]\2\]|.*)/g,sub:"todo"},{expand:"str"},{type:"kwd",match:/\b(and|break|do|else|elseif|end|for|function|if|in|local|not|or|repeat|return|then|until|while)\b/g},{type:"bool",match:/\b(true|false|nil)\b/g},{type:"oper",match:/[+*/%^#=~<>:,.-]+/g},{expand:"num"},{type:"func",match:/[a-z_]+(?=\s*[({])/g}];export{e as default};
|
package/dist/languages/make.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/^\s*#.*/gm,sub:"todo"},{expand:"str"},{type:"oper",match:/[${}()]+/g},{type:"class",match:/.PHONY:/gm},{type:"section",match:/^[\w.]+:/gm},{type:"kwd",match:/\b(ifneq|endif)\b/g},{expand:"num"},{type:"var",match:/[A-Z_]+(?=\s*=)/g},{match:/^.*$/gm,sub:"bash"}];export{t as default};
|
package/dist/languages/md.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var i=[["bash",[/#!(\/usr)?\/bin\/bash/g,500],[/\b(if|elif|then|fi|echo)\b|\$/g,10]],["html",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^\s+<!DOCTYPE\s+html/g,500]],["http",[/^(GET|HEAD|POST|PUT|DELETE|PATCH|HTTP)\b/g,500]],["js",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require)\b/g,10]],["ts",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require|implements|interface|namespace)\b/g,10]],["py",[/\b(def|print|class|and|or|lambda)\b/g,10]],["sql",[/\b(SELECT|INSERT|FROM)\b/g,50]],["pl",[/#!(\/usr)?\/bin\/perl/g,500],[/\b(use|print)\b|\$/g,10]],["lua",[/#!(\/usr)?\/bin\/lua/g,500]],["make",[/\b(ifneq|endif|if|elif|then|fi|echo|.PHONY|^[a-z]+ ?:$)\b|\$/gm,10]],["uri",[/https?:|mailto:|tel:|ftp:/g,30]],["css",[/^(@import|@page|@media|(\.|#)[a-z]+)/gm,20]],["diff",[/^[+><-]/gm,10],[/^@@ ?[-+,0-9 ]+ ?@@/gm,25]],["md",[/^(>|\t\*|\t\d+.)/gm,10],[/\[.*\](.*)/g,10]],["docker",[/^(FROM|ENTRYPOINT|RUN)/gm,500]],["xml",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^<\?xml/g,500]],["c",[/#include\b|\bprintf\s+\(/g,100]],["rs",[/^\s+(use|fn|mut|match)\b/gm,100]],["go",[/\b(func|fmt|package)\b/g,100]],["java",[/^import\s+java/gm,500]],["asm",[/^(section|global main|extern|\t(call|mov|ret))/gm,100]]],m=e=>{var s;return((s=i.map(([t,...a])=>[a.reduce((g,[n,c])=>g+[...e.matchAll(n)].length*c,0),t]).filter(([t,a])=>t>10).sort((t,a)=>a[0]-t[0])[0])==null?void 0:s[1])||"plain"};var p=[{type:"cmnt",match:/^>.*|(=|-)\1+/gm},{type:"class",match:/\*\*((?!\*\*).)*\*\*/g},{match:/```((?!```)[^])*\n```/g,sub:e=>({type:"kwd",sub:[{match:/\n[^]*(?=```)/g,sub:e.split(`
|
|
2
|
-
`)[0].slice(3)||m(e)}]})},{type:"str",match:/`[^`]*`/g},{type:"var",match:/~~((?!~~).)*~~/g},{type:"kwd",match:/_[^_]*_|\*[^*]*\*/g},{type:"kwd",match:/^\s*(\*|\d+\.)\s/gm},{type:"oper",match:/\[[^\]]*]/g},{type:"func",match:/\([^)]*\)/g}];export{p as default};
|
package/dist/languages/pl.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{match:/#.*/g,sub:"todo"},{type:"str",match:/(["'])(\\[^]|(?!\1)[^])*\1?/g},{expand:"num"},{type:"kwd",match:/\b(any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while|not|and|or|xor)\b/g},{type:"oper",match:/[-+*/%~!&<>|=?,]+/g},{type:"func",match:/[a-z_]+(?=\s*\()/g}];export{e as default};
|
package/dist/languages/plain.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{expand:"strDouble"}];export{e as default};
|
package/dist/languages/py.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/#.*/g,sub:"todo"},{match:/("""|''')(\\[^]|(?!\1)[^])*\1?/g,sub:"todo"},{type:"str",match:/f("|')(\\[^]|(?!\1).)*\1?|f((["'])\4\4)(\\[^]|(?!\3)[^])*\3?/gi,sub:[{type:"var",match:/{[^{}]*}/g,sub:[{match:/(?!^{)[^]*(?=}$)/g,sub:"py"}]}]},{expand:"str"},{type:"kwd",match:/\b(and|as|assert|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|raise|return|try|while|with|yield)\b/g},{type:"bool",match:/\b(False|True|None)\b/g},{expand:"num"},{type:"func",match:/[a-z_]+(?=\s*\()/g},{type:"oper",match:/[-/*+<>,=!&|^%]+/g},{type:"class",match:/\b[A-Z]\w*\b/g}];export{t as default};
|
package/dist/languages/regex.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/^(?!\/).*/gm,sub:"todo"},{type:"num",match:/\[((?!\])[^\\]|\\.)*\]/g},{type:"kwd",match:/\||\^|\$|\\.|\w+($|\r|\n)/g},{type:"var",match:/\*|\+|\{\d+,\d+\}/g}],e="oper";export{t as default,e as type};
|
package/dist/languages/rs.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{expand:"num"},{type:"kwd",match:/\b(as|break|const|continue|crate|else|enum|extern|false|fn|for|if|impl|in|let|loop|match|mod|move|mut|pub|ref|return|self|Self|static|struct|super|trait|true|type|unsafe|use|where|while|async|await|dyn|abstract|become|box|do|final|macro|override|priv|typeof|unsized|virtual|yield|try)\b/g},{type:"oper",match:/[/*+:?&|%^~=!,<>.^-]+/g},{type:"class",match:/\b[A-Z]\w*\b/g},{type:"func",match:/[a-zA-Z_][\w_]*(?=\s*!?\s*\()/g}];export{e as default};
|
package/dist/languages/sql.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var E=[{match:/--.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{type:"func",match:/\b(AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/g},{type:"kwd",match:/\b(ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|kwdS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:S|ING)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/g},{type:"num",match:/\.?\d[\d.oxa-fA-F-]*|\bNULL\b/g},{type:"bool",match:/\b(TRUE|FALSE)\b/g},{type:"oper",match:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|IN|ILIKE|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/g},{type:"var",match:/@\S+/g}];export{E as default};
|
package/dist/languages/todo.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{type:"err",match:/\b(TODO|FIXME|DEBUG|OPTIMIZE|WARNING|XXX|BUG)\b/g},{type:"class",match:/\bIDEA\b/g},{type:"insert",match:/\b(CHANGED|FIX|CHANGE)\b/g},{type:"oper",match:/\bQUESTION\b/g}],e="cmnt";export{t as default,e as type};
|
package/dist/languages/toml.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/#.*/g,sub:"todo"},{type:"str",match:/("""|''')((?!\1)[^]|\\[^])*\1?/g},{expand:"str"},{type:"section",match:/^\[.+\]\s*$/gm},{type:"num",match:/\b(inf|nan)\b|\d[\d:ZT.-]*/g},{expand:"num"},{type:"bool",match:/\b(true|false)\b/g},{type:"oper",match:/[+,.=-]/g},{type:"var",match:/\w+(?= \=)/g}];export{t as default};
|
package/dist/languages/ts.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=[{match:/\/\*\*((?!\*\/)[^])*(\*\/)?/g,sub:"jsdoc"},{match:/\/\/.*\n?|\/\*((?!\*\/)[^])*(\*\/)?/g,sub:"todo"},{expand:"str"},{match:/`((?!`)[^]|\\[^])*`?/g,sub:"js_template_literals"},{type:"kwd",match:/=>|\b(this|set|get|as|async|await|break|case|catch|class|const|constructor|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|if|implements|import|in|instanceof|interface|let|var|of|new|package|private|protected|public|return|static|super|switch|throw|throws|try|typeof|void|while|with|yield)\b/g},{match:/\/((?!\/)[^\r\n\\]|\\.)+\/[dgimsuy]*/g,sub:"regex"},{expand:"num"},{type:"num",match:/\b(NaN|null|undefined|[A-Z][A-Z_]*)\b/g},{type:"bool",match:/\b(true|false)\b/g},{type:"oper",match:/[/*+:?&|%^~=!,<>.^-]+/g},{type:"class",match:/\b[A-Z]\w*\b/g},{type:"func",match:/[a-zA-Z$_][\w$_]*(?=\s*((\?\.)?\s*\(|=\s*(\(?[\w,{}\[\])]+\)? =>|function\b)))/g}];var c=[{type:"type",match:/:\s*(any|void|number|boolean|string|object|never|enum)\b/g},{type:"kwd",match:/\b(type|namespace|typedef|interface|public|private|protected|implements|declare|abstract|readonly)\b/g},...e];export{c as default};
|
package/dist/languages/uri.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/^#.*/gm,sub:"todo"},{type:"class",match:/^\w+(?=:?)/gm},{type:"num",match:/:\d+/g},{type:"oper",match:/[:/&?]|\w+=/g},{type:"func",match:/[.\w]+@|#[\w]+$/gm},{type:"var",match:/\w+\.\w+(\.\w+)*/g}];export{t as default};
|
package/dist/languages/xml.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=`\\s*(\\s+[a-z-]+\\s*(=\\s*([^"']\\S*|("|')(\\\\[^]|(?!\\4)[^])*\\4?)?)?\\s*)*`,a={match:RegExp(`</?[a-z_-]+${t}/?>`,"g"),sub:[{type:"var",match:/^<\/?[^\s>\/]+/g,sub:[{type:"oper",match:/^<\/?/g}]},{type:"str",match:/=\s*([^"']\S*|("|')(\\[^]|(?!\2)[^])*\2?)/g,sub:[{type:"oper",match:/^=/g}]},{type:"oper",match:/\/?>/g},{type:"class",match:/[a-z-]+/gi}]},e=[{match:/<!--((?!-->)[^])*-->/g,sub:"todo"},{type:"class",match:RegExp(`<\\?xml${t}\\?>`,"gi"),sub:[{type:"oper",match:/^<\?|\?>$/g},{type:"str",match:/"[^"]*"|'[^']*'/g},{type:"var",match:/xml/gi}]},{type:"class",match:/<!\[CDATA\[[\s\S]*?\]\]>/gi},a,{type:"var",match:/&(#x?)?[\da-z]{1,8};/gi}];export{e as default,t as property,a as xmlElement};
|
package/dist/languages/yaml.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var t=[{match:/#.*/g,sub:"todo"},{expand:"str"},{type:"str",match:/(>|\|)\r?\n((\s[^\n]*)?(\r?\n|$))*/g},{type:"type",match:/!![a-z]+/g},{type:"bool",match:/\b(Yes|No)\b/g},{type:"oper",match:/[+:-]/g},{expand:"num"},{type:"var",match:/[a-zA-Z]\w*(?=:)/g}];export{t as default};
|
package/dist/node/common.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var a=Object.defineProperty;var m=t=>a(t,"__esModule",{value:!0});var n=(t,e)=>{m(t);for(var r in e)a(t,r,{get:e[r],enumerable:!0})};n(exports,{default:()=>p});var p={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};0&&(module.exports={});
|
package/dist/node/detect.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var s=Object.defineProperty;var l=e=>s(e,"__esModule",{value:!0});var r=(e,a)=>{l(e);for(var t in a)s(e,t,{get:a[t],enumerable:!0})};r(exports,{detectLanguage:()=>c});var o=[["bash",[/#!(\/usr)?\/bin\/bash/g,500],[/\b(if|elif|then|fi|echo)\b|\$/g,10]],["html",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^\s+<!DOCTYPE\s+html/g,500]],["http",[/^(GET|HEAD|POST|PUT|DELETE|PATCH|HTTP)\b/g,500]],["js",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require)\b/g,10]],["ts",[/\b(console|await|async|function|export|import|this|class|for|let|const|map|join|require|implements|interface|namespace)\b/g,10]],["py",[/\b(def|print|class|and|or|lambda)\b/g,10]],["sql",[/\b(SELECT|INSERT|FROM)\b/g,50]],["pl",[/#!(\/usr)?\/bin\/perl/g,500],[/\b(use|print)\b|\$/g,10]],["lua",[/#!(\/usr)?\/bin\/lua/g,500]],["make",[/\b(ifneq|endif|if|elif|then|fi|echo|.PHONY|^[a-z]+ ?:$)\b|\$/gm,10]],["uri",[/https?:|mailto:|tel:|ftp:/g,30]],["css",[/^(@import|@page|@media|(\.|#)[a-z]+)/gm,20]],["diff",[/^[+><-]/gm,10],[/^@@ ?[-+,0-9 ]+ ?@@/gm,25]],["md",[/^(>|\t\*|\t\d+.)/gm,10],[/\[.*\](.*)/g,10]],["docker",[/^(FROM|ENTRYPOINT|RUN)/gm,500]],["xml",[/<\/?[a-z-]+[^\n>]*>/g,10],[/^<\?xml/g,500]],["c",[/#include\b|\bprintf\s+\(/g,100]],["rs",[/^\s+(use|fn|mut|match)\b/gm,100]],["go",[/\b(func|fmt|package)\b/g,100]],["java",[/^import\s+java/gm,500]],["asm",[/^(section|global main|extern|\t(call|mov|ret))/gm,100]]],c=e=>{var a;return((a=o.map(([t,...n])=>[n.reduce((i,[g,m])=>i+[...e.matchAll(g)].length*m,0),t]).filter(([t,n])=>t>10).sort((t,n)=>n[0]-t[0])[0])==null?void 0:a[1])||"plain"};0&&(module.exports={detectLanguage});
|
package/dist/node/index.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
var j=Object.create;var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var o=t=>p(t,"__esModule",{value:!0});var I=(t,e)=>{o(t);for(var a in e)p(t,a,{get:e[a],enumerable:!0})},D=(t,e,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of $(e))!A.call(t,n)&&n!=="default"&&p(t,n,{get:()=>e[n],enumerable:!(a=v(e,n))||a.enumerable});return t},m=t=>D(o(p(t!=null?j(w(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);I(exports,{highlightAll:()=>C,highlightElement:()=>b,highlightText:()=>g,tokenize:()=>f});var y={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};var x={},E=(t="")=>{var e,a,n,i;return(i=(a=(e=t.replaceAll("&","&")).replaceAll)==null?void 0:(n=a.call(e,"<","<")).replaceAll)==null?void 0:i.call(n,">",">")},z=(t,e)=>e?`<span class="shj-syn-${e}">${t}</span>`:t;async function f(t,e,a){var n;try{let i,l,s={},d,h=[],c=0,u=typeof e=="string"?await((n=x[e])!=null?n:x[e]=Promise.resolve().then(()=>m(require(`./languages/${e}.js`)))):e,r=[...typeof e=="string"?u.default:e.sub];for(;c<t.length;){for(s.index=null,i=r.length;i-- >0;){if(l=r[i].expand?y[r[i].expand]:r[i],h[i]===void 0||h[i].match.index<c){if(l.match.lastIndex=c,d=l.match.exec(t),d===null){r.splice(i,1),h.splice(i,1);continue}h[i]={match:d,lastIndex:l.match.lastIndex}}h[i].match[0]&&(h[i].match.index<=s.index||s.index===null)&&(s={part:l,index:h[i].match.index,match:h[i].match[0],end:h[i].lastIndex})}if(s.index===null)break;a(t.slice(c,s.index),u.type),c=s.end,s.part.sub?await f(s.match,typeof s.part.sub=="string"?s.part.sub:typeof s.part.sub=="function"?s.part.sub(s.match):s.part,a):a(s.match,s.part.type)}a(t.slice(c,t.length),u.type)}catch{a(t)}}async function g(t,e,a=!0){let n=a?`<div><div class="shj-numbers">${"<div></div>".repeat(t.split(`
|
|
2
|
-
`).length)}</div><div>`:"";return await f(t,e,(i,l)=>n+=z(E(i),l)),a&&(n+="</div></div>"),n}async function b(t,e=(n=>(n=t.className.match(/shj-lang-([\w-]+)/))==null?void 0:n[1])(),a){let i=t.textContent;a!=null||(a=`${t.tagName=="CODE"?"in":i.split(`
|
|
3
|
-
`).length<2?"one":"multi"}line`),t.dataset.lang=e,t.className=`${[...t.classList].filter(l=>!l.startsWith("shj-")||l.startsWith("shj-mode-")).join(" ")} shj-lang-${e} shj-${a}`,t.innerHTML=await g(i,e,a=="multiline")}var C=async()=>document.querySelectorAll('[class*="shj-lang-"]').forEach(t=>b(t));0&&(module.exports={highlightAll,highlightElement,highlightText,tokenize});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var m=Object.defineProperty;var p=t=>m(t,"__esModule",{value:!0});var c=(t,a)=>{p(t);for(var e in a)m(t,e,{get:a[e],enumerable:!0})};c(exports,{default:()=>d});var d=[{type:"cmnt",match:/;.*/gm},{expand:"str"},{expand:"num"},{type:"kwd",match:/^[a-z]+\s+[a-z.]+/gm,sub:[{type:"func",match:/^[a-z]+/g}]},{type:"kwd",match:/^\t*[a-z]+/gm},{match:/%|\$/g,type:"oper"}];0&&(module.exports={});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var s=Object.defineProperty;var p=e=>s(e,"__esModule",{value:!0});var i=(e,t)=>{p(e);for(var a in t)s(e,a,{get:t[a],enumerable:!0})};i(exports,{default:()=>o});var l={type:"var",match:/\$\w+|\${[^}]*}|\$\([^)]*\)/g},o=[{sub:"todo",match:/#.*/g},{type:"str",match:/(["'])((?!\1)[^\r\n\\]|\\[^])*\1?/g,sub:[l]},{type:"kwd",match:/-[a-zA-Z]+|$<|[&|;]+|\b(unset|readonly|shift|export|if|fi|else|elif|while|do|done|for|until|case|esac|break|continue|exit|return|trap|wait|eval|exec|then|declare|enable|local|select|typeset|time|add|remove|install|update|delete)\b/g},{expand:"num"},{type:"func",match:/\b(set|alias|bg|bind|builtin|caller|command|compgen|complete|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|read|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|unset)\b/g},{type:"bool",match:/\b(true|false)\b/g},{type:"func",match:/[a-z_]+(?=\s*\()/g},{type:"oper",match:/[=(){}<>+*/!?~^-]+/g},{type:"var",match:/\w+(?=\s*=)/g},l];0&&(module.exports={});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var c=Object.defineProperty;var p=t=>c(t,"__esModule",{value:!0});var g=(t,e)=>{p(t);for(var a in e)c(t,a,{get:e[a],enumerable:!0})};g(exports,{default:()=>h});var h=[{match:/[^\[\->+.<\]\s].*/g,sub:"todo"},{type:"func",match:/\.+/g},{type:"kwd",match:/[<>]+/g},{type:"oper",match:/[+-]+/g}];0&&(module.exports={});
|