mirror of
https://example.com
synced 2024-11-22 04:46:39 +09:00
feat: use syntax highlight assets on server
Co-authored-by: naskya <m@naskya.net>
This commit is contained in:
parent
4f061a2849
commit
b63c5952d7
3 changed files with 4 additions and 6 deletions
|
@ -43,7 +43,6 @@
|
||||||
### 細かい変更点
|
### 細かい変更点
|
||||||
|
|
||||||
- コードブロックの構文ハイライトの対応言語を強化
|
- コードブロックの構文ハイライトの対応言語を強化
|
||||||
- TODO: CDN を利用しない設定でもこれを行えるようにする
|
|
||||||
- TODO: 本家版にもマージリクエストを出す
|
- TODO: 本家版にもマージリクエストを出す
|
||||||
- モバイル表示の下部のウィジェットボタンを再読み込みボタンに変更可能に
|
- モバイル表示の下部のウィジェットボタンを再読み込みボタンに変更可能に
|
||||||
- スマートフォンでウィジェットは使わないけど再読み込みはたくさんする人はいそう
|
- スマートフォンでウィジェットは使わないけど再読み込みはたくさんする人はいそう
|
||||||
|
|
1
packages/client/assets/prismjs/components
Symbolic link
1
packages/client/assets/prismjs/components
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../../node_modules/prismjs/components
|
|
@ -2,15 +2,13 @@ import Prism from "prismjs";
|
||||||
import "prismjs/plugins/autoloader/prism-autoloader.js";
|
import "prismjs/plugins/autoloader/prism-autoloader.js";
|
||||||
import { defaultStore } from "@/store";
|
import { defaultStore } from "@/store";
|
||||||
|
|
||||||
// TODO
|
Prism.plugins.autoloader.languages_path = defaultStore.state.useEmojiCdn
|
||||||
Prism.plugins.autoloader.languages_path =
|
? "https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/"
|
||||||
"https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/";
|
: "/client-assets/prismjs/components/";
|
||||||
|
|
||||||
const nonExistingLanguagesCache = new Set<string>();
|
const nonExistingLanguagesCache = new Set<string>();
|
||||||
export const loadLanguage = (lang: string) =>
|
export const loadLanguage = (lang: string) =>
|
||||||
new Promise<void>((resolve, reject) => {
|
new Promise<void>((resolve, reject) => {
|
||||||
// for now
|
|
||||||
if (!defaultStore.state.useEmojiCdn) return reject();
|
|
||||||
// cached non-existing language
|
// cached non-existing language
|
||||||
if (nonExistingLanguagesCache.has(lang)) return reject();
|
if (nonExistingLanguagesCache.has(lang)) return reject();
|
||||||
// load language with autoloader
|
// load language with autoloader
|
||||||
|
|
Loading…
Reference in a new issue