PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.13.0
Code Block Pro – Beautiful Syntax Highlighting v1.13.0
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
← All changes | src/util/languages.ts +21 -11 1.6.01.13.0 View file →
@@ -1,28 +1,30 @@
1 -import { Lang } from 'shiki';
1 +import { Lang as LangShiki } from 'shiki';
2 2 import defaultLanguages from '../defaultLanguages.json';
3 +import { Lang } from '../types';
3 4
4 5 export const codeAliases = {
5 6 'actionscript-3': ['as3'],
6 - cpp: ['arduino'],
7 - xml: ['coldfusion'],
8 - pascal: ['delphi'],
9 - java: ['javafx'],
10 - javascript: ['jscript', 'js'],
11 - matlab: ['matlabkey'],
12 - 'objective-c': ['objc'],
13 7 bat: ['batch'],
14 8 berry: ['be'],
15 9 cadence: ['cdc'],
16 10 clojure: ['clj'],
17 - csharp: ['c#'],
11 + codeql: ['ql'],
12 + cpp: ['arduino'],
13 + csharp: ['c#', 'cs'],
18 14 erlang: ['erl'],
19 15 fsharp: ['f#'],
20 16 haskell: ['hs'],
21 17 handlebars: ['hbs'],
18 + 'html-ruby-erb': ['erb'],
19 + java: ['javafx'],
20 + javascript: ['jscript', 'js'],
22 21 jssm: ['fsl'],
23 22 make: ['makefile'],
24 23 markdown: ['md'],
24 + matlab: ['matlabkey'],
25 + 'objective-c': ['objc'],
26 + pascal: ['delphi'],
25 27 powershell: ['ps', 'ps1'],
26 28 pug: ['jade'],
27 29 python: ['py'],
28 30 raku: ['perl6'],
@@ -27,9 +29,8 @@
27 29 python: ['py'],
28 30 raku: ['perl6'],
29 31 ruby: ['rb'],
30 32 rust: ['rs'],
31 - 'html-ruby-erb': ['erb'],
32 33 shaderlab: ['shader'],
33 34 shellscript: ['shell', 'bash', 'sh', 'zsh'],
34 35 stylus: ['styl'],
35 36 typescript: ['ts'],
@@ -35,9 +36,10 @@
35 36 typescript: ['ts'],
36 37 vb: ['cmd'],
37 38 viml: ['vim', 'vimscript'],
38 39 wenyan: ['文言'],
39 - codeql: ['ql'],
40 + xml: ['coldfusion'],
41 + yaml: ['yml'],
40 42 };
41 43
42 44 export const getMainAlias = (
43 45 languageAltName: string | undefined,
@@ -53,8 +55,10 @@
53 55 ): Partial<typeof defaultLanguages> => {
54 56 const aliasesToRemove = Object.values(codeAliases).flat();
55 57 return Object.keys(langs).reduce((acc, key) => {
56 58 if (!aliasesToRemove.includes(key)) {
59 + // eslint-disable-next-line @typescript-eslint/ban-ts-comment
60 + // @ts-ignore
57 61 acc[key as Lang] = langs[key as Lang];
58 62 }
59 63 return acc;
60 64 }, {} as Partial<typeof defaultLanguages>);
@@ -60,4 +64,10 @@
60 64 }, {} as Partial<typeof defaultLanguages>);
61 65 };
62 66
63 67 export const languages = removeAliases(defaultLanguages);
68 +
69 +/** Get the language shown in the editor, which could differ from the front */
70 +export const getEditorLanguage = (language: string): LangShiki => {
71 + if (language === 'ansi') return 'shellscript';
72 + return language as LangShiki;
73 +};