You've already forked AstralRinth
forked from didirus/AstralRinth
Cut down highlight.js size
This commit is contained in:
1
.vscode/settings.json
vendored
1
.vscode/settings.json
vendored
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"prettier.endOfLine": "lf",
|
"prettier.endOfLine": "lf",
|
||||||
"cSpell.words": [
|
"cSpell.words": [
|
||||||
|
"sveltekit",
|
||||||
"undici",
|
"undici",
|
||||||
"unplugin"
|
"unplugin"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,13 +1,7 @@
|
|||||||
```svelte example raised hideStyle
|
```svelte example raised
|
||||||
Some words could go here.
|
Some words could go here.
|
||||||
|
|
||||||
<hr class="divider" />
|
<hr class="divider" />
|
||||||
|
|
||||||
And some other words could go here.
|
And some other words could go here.
|
||||||
|
|
||||||
<style>
|
|
||||||
.example__source__code {
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
"homepage": "https://omorphia.modrinth.com",
|
"homepage": "https://omorphia.modrinth.com",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@sveltejs/adapter-static": "^1.0.0-next.29",
|
"@sveltejs/adapter-static": "^1.0.0-next.29",
|
||||||
"@sveltejs/kit": "next",
|
"@sveltejs/kit": "1.0.0-next.352",
|
||||||
"@types/cli-progress": "^3.11.0",
|
"@types/cli-progress": "^3.11.0",
|
||||||
"@types/marked": "^4.0.3",
|
"@types/marked": "^4.0.3",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.10.1",
|
"@typescript-eslint/eslint-plugin": "^5.10.1",
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
"cli-progress": "^3.11.1",
|
"cli-progress": "^3.11.1",
|
||||||
"cssnano": "^5.1.1",
|
"cssnano": "^5.1.1",
|
||||||
"fast-average-color-node": "^2.2.0",
|
"fast-average-color-node": "^2.2.0",
|
||||||
"highlight.js": "^11.5.0",
|
"highlight.js": "^11.5.1",
|
||||||
"insane": "^2.6.2",
|
"insane": "^2.6.2",
|
||||||
"jimp": "^0.16.1",
|
"jimp": "^0.16.1",
|
||||||
"marked": "^4.0.12",
|
"marked": "^4.0.12",
|
||||||
|
|||||||
28
pnpm-lock.yaml
generated
28
pnpm-lock.yaml
generated
@@ -9,7 +9,7 @@ specifiers:
|
|||||||
'@iconify-json/simple-icons': ^1.1.14
|
'@iconify-json/simple-icons': ^1.1.14
|
||||||
'@poppanator/sveltekit-svg': ^0.3.1
|
'@poppanator/sveltekit-svg': ^0.3.1
|
||||||
'@sveltejs/adapter-static': ^1.0.0-next.29
|
'@sveltejs/adapter-static': ^1.0.0-next.29
|
||||||
'@sveltejs/kit': next
|
'@sveltejs/kit': 1.0.0-next.352
|
||||||
'@types/cli-progress': ^3.11.0
|
'@types/cli-progress': ^3.11.0
|
||||||
'@types/marked': ^4.0.3
|
'@types/marked': ^4.0.3
|
||||||
'@typescript-eslint/eslint-plugin': ^5.10.1
|
'@typescript-eslint/eslint-plugin': ^5.10.1
|
||||||
@@ -20,7 +20,7 @@ specifiers:
|
|||||||
eslint-config-prettier: ^8.3.0
|
eslint-config-prettier: ^8.3.0
|
||||||
eslint-plugin-svelte3: ^3.2.1
|
eslint-plugin-svelte3: ^3.2.1
|
||||||
fast-average-color-node: ^2.2.0
|
fast-average-color-node: ^2.2.0
|
||||||
highlight.js: ^11.5.0
|
highlight.js: ^11.5.1
|
||||||
insane: ^2.6.2
|
insane: ^2.6.2
|
||||||
jimp: ^0.16.1
|
jimp: ^0.16.1
|
||||||
marked: ^4.0.12
|
marked: ^4.0.12
|
||||||
@@ -64,7 +64,7 @@ dependencies:
|
|||||||
cli-progress: 3.11.1
|
cli-progress: 3.11.1
|
||||||
cssnano: 5.1.1_postcss@8.4.8
|
cssnano: 5.1.1_postcss@8.4.8
|
||||||
fast-average-color-node: 2.2.0
|
fast-average-color-node: 2.2.0
|
||||||
highlight.js: 11.5.0
|
highlight.js: 11.5.1
|
||||||
insane: 2.6.2
|
insane: 2.6.2
|
||||||
jimp: 0.16.1
|
jimp: 0.16.1
|
||||||
marked: 4.0.12
|
marked: 4.0.12
|
||||||
@@ -86,7 +86,7 @@ dependencies:
|
|||||||
|
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@sveltejs/adapter-static': 1.0.0-next.29
|
'@sveltejs/adapter-static': 1.0.0-next.29
|
||||||
'@sveltejs/kit': 1.0.0-next.354_svelte@3.48.0
|
'@sveltejs/kit': 1.0.0-next.352_svelte@3.48.0
|
||||||
'@types/cli-progress': 3.11.0
|
'@types/cli-progress': 3.11.0
|
||||||
'@types/marked': 4.0.3
|
'@types/marked': 4.0.3
|
||||||
'@typescript-eslint/eslint-plugin': 5.14.0_4p27j37cxves4nxlnqogdhp4ta
|
'@typescript-eslint/eslint-plugin': 5.14.0_4p27j37cxves4nxlnqogdhp4ta
|
||||||
@@ -1078,18 +1078,18 @@ packages:
|
|||||||
tiny-glob: 0.2.9
|
tiny-glob: 0.2.9
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@sveltejs/kit/1.0.0-next.354_svelte@3.48.0:
|
/@sveltejs/kit/1.0.0-next.352_svelte@3.48.0:
|
||||||
resolution: {integrity: sha512-dTfFT0c3sxztFpiw6H4bQnPd+PtHgEZG6j6ssT9sWLONfzUgWRX0S7H/WoPEjr7u65o2HNazoj8jmEq3ZTwb9g==}
|
resolution: {integrity: sha512-cYQWGZ2TU1iMsh1cqi44FJm5Aqs3iOkuUOnRpoecthcbmiZaqkD1sPG/uROBIPexXSbfyUfrck/hgr9vdCAmCw==}
|
||||||
engines: {node: '>=16.7'}
|
engines: {node: '>=16.7'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
svelte: ^3.44.0
|
svelte: ^3.44.0
|
||||||
dependencies:
|
dependencies:
|
||||||
'@sveltejs/vite-plugin-svelte': 1.0.0-next.49_svelte@3.48.0+vite@2.9.10
|
'@sveltejs/vite-plugin-svelte': 1.0.0-next.49_svelte@3.48.0+vite@2.9.12
|
||||||
chokidar: 3.5.3
|
chokidar: 3.5.3
|
||||||
sade: 1.8.1
|
sade: 1.8.1
|
||||||
svelte: 3.48.0
|
svelte: 3.48.0
|
||||||
vite: 2.9.10
|
vite: 2.9.12
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- diff-match-patch
|
- diff-match-patch
|
||||||
- less
|
- less
|
||||||
@@ -1098,7 +1098,7 @@ packages:
|
|||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@sveltejs/vite-plugin-svelte/1.0.0-next.49_svelte@3.48.0+vite@2.9.10:
|
/@sveltejs/vite-plugin-svelte/1.0.0-next.49_svelte@3.48.0+vite@2.9.12:
|
||||||
resolution: {integrity: sha512-AKh0Ka8EDgidnxWUs8Hh2iZLZovkETkefO99XxZ4sW4WGJ7VFeBx5kH/NIIGlaNHLcrIvK3CK0HkZwC3Cici0A==}
|
resolution: {integrity: sha512-AKh0Ka8EDgidnxWUs8Hh2iZLZovkETkefO99XxZ4sW4WGJ7VFeBx5kH/NIIGlaNHLcrIvK3CK0HkZwC3Cici0A==}
|
||||||
engines: {node: ^14.13.1 || >= 16}
|
engines: {node: ^14.13.1 || >= 16}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -1116,7 +1116,7 @@ packages:
|
|||||||
magic-string: 0.26.2
|
magic-string: 0.26.2
|
||||||
svelte: 3.48.0
|
svelte: 3.48.0
|
||||||
svelte-hmr: 0.14.12_svelte@3.48.0
|
svelte-hmr: 0.14.12_svelte@3.48.0
|
||||||
vite: 2.9.10
|
vite: 2.9.12
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
@@ -2828,8 +2828,8 @@ packages:
|
|||||||
hasBin: true
|
hasBin: true
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/highlight.js/11.5.0:
|
/highlight.js/11.5.1:
|
||||||
resolution: {integrity: sha512-SM6WDj5/C+VfIY8pZ6yW6Xa0Fm1tniYVYWYW1Q/DcMnISZFrC3aQAZZZFAAZtybKNrGId3p/DNbFTtcTXXgYBw==}
|
resolution: {integrity: sha512-LKzHqnxr4CrD2YsNoIf/o5nJ09j4yi/GcH5BnYz9UnVpZdS4ucMgvP61TDty5xJcFGRjnH4DpujkS9bHT3hq0Q==}
|
||||||
engines: {node: '>=12.0.0'}
|
engines: {node: '>=12.0.0'}
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
@@ -5339,8 +5339,8 @@ packages:
|
|||||||
unist-util-stringify-position: 2.0.3
|
unist-util-stringify-position: 2.0.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/vite/2.9.10:
|
/vite/2.9.12:
|
||||||
resolution: {integrity: sha512-TwZRuSMYjpTurLqXspct+HZE7ONiW9d+wSWgvADGxhDPPyoIcNywY+RX4ng+QpK30DCa1l/oZgi2PLZDibhzbQ==}
|
resolution: {integrity: sha512-suxC36dQo9Rq1qMB2qiRorNJtJAdxguu5TMvBHOc/F370KvqAe9t48vYp+/TbPKRNrMh/J55tOUmkuIqstZaew==}
|
||||||
engines: {node: '>=12.2.0'}
|
engines: {node: '>=12.2.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
|
|||||||
28
src/utils/highlight.ts
Normal file
28
src/utils/highlight.ts
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
import hljs from 'highlight.js/lib/core'
|
||||||
|
|
||||||
|
import bash from 'highlight.js/lib/languages/bash'
|
||||||
|
import diff from 'highlight.js/lib/languages/diff'
|
||||||
|
import java from 'highlight.js/lib/languages/java'
|
||||||
|
import javascript from 'highlight.js/lib/languages/javascript'
|
||||||
|
import json from 'highlight.js/lib/languages/json'
|
||||||
|
import plaintext from 'highlight.js/lib/languages/plaintext'
|
||||||
|
import python from 'highlight.js/lib/languages/python'
|
||||||
|
import rust from 'highlight.js/lib/languages/rust'
|
||||||
|
import ini from 'highlight.js/lib/languages/ini'
|
||||||
|
import yaml from 'highlight.js/lib/languages/yaml'
|
||||||
|
|
||||||
|
hljs.registerLanguage('bash', bash)
|
||||||
|
hljs.registerLanguage('diff', diff)
|
||||||
|
hljs.registerLanguage('java', java)
|
||||||
|
hljs.registerLanguage('javascript', javascript)
|
||||||
|
hljs.registerLanguage('json', json)
|
||||||
|
hljs.registerLanguage('plaintext', plaintext)
|
||||||
|
hljs.registerLanguage('python', python)
|
||||||
|
hljs.registerLanguage('rust', rust)
|
||||||
|
hljs.registerLanguage('ini', ini)
|
||||||
|
hljs.registerLanguage('yaml', yaml)
|
||||||
|
|
||||||
|
export function highlight(code: string, lang: string) {
|
||||||
|
const language = hljs.getLanguage(lang) ? lang : 'plaintext'
|
||||||
|
return hljs.highlight(code, { language }).value
|
||||||
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { marked } from 'marked'
|
import { marked } from 'marked'
|
||||||
import hljs from 'highlight.js'
|
|
||||||
import insane from 'insane'
|
import insane from 'insane'
|
||||||
|
import { highlight } from './highlight'
|
||||||
|
|
||||||
const renderer = new marked.Renderer()
|
const renderer = new marked.Renderer()
|
||||||
|
|
||||||
@@ -27,10 +27,7 @@ renderer.link = (href, title, text) => {
|
|||||||
|
|
||||||
marked.setOptions({
|
marked.setOptions({
|
||||||
renderer,
|
renderer,
|
||||||
highlight: function (code, lang) {
|
highlight,
|
||||||
const language = hljs.getLanguage(lang) ? lang : 'plaintext'
|
|
||||||
return hljs.highlight(code, { language }).value
|
|
||||||
},
|
|
||||||
langPrefix: 'hljs language-',
|
langPrefix: 'hljs language-',
|
||||||
headerPrefix: '',
|
headerPrefix: '',
|
||||||
gfm: true,
|
gfm: true,
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import Generator from './src/plugins/generator/index.js'
|
|||||||
import precompileIntl from 'svelte-intl-precompile/sveltekit-plugin'
|
import precompileIntl from 'svelte-intl-precompile/sveltekit-plugin'
|
||||||
|
|
||||||
/** @type {import('@sveltejs/kit').Config} */
|
/** @type {import('@sveltejs/kit').Config} */
|
||||||
const config = {
|
export default {
|
||||||
extensions: ['.svelte', ...mdsvexConfig.extensions],
|
extensions: ['.svelte', ...mdsvexConfig.extensions],
|
||||||
|
|
||||||
preprocess: [preprocess, mdsvex(mdsvexConfig)],
|
preprocess: [preprocess, mdsvex(mdsvexConfig)],
|
||||||
@@ -61,5 +61,3 @@ const config = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
export default config
|
|
||||||
|
|||||||
Reference in New Issue
Block a user