Skip to content

Commit 1d8915a

Browse files
silverwindlunny
authored andcommitted
Add a lot of extension to language mappings for syntax highlights (#7741)
Data partially based on [CodeMirror's meta.js](https://github.com/codemirror/CodeMirror/blob/master/mode/meta.js). Fixes: #6057
1 parent 7b00962 commit 1d8915a

File tree

1 file changed

+79
-35
lines changed

1 file changed

+79
-35
lines changed

modules/highlight/highlight.go

+79-35
Original file line numberDiff line numberDiff line change
@@ -27,49 +27,93 @@ var (
2727
}
2828

2929
// Extensions that are same as highlight classes.
30+
// See hljs.listLanguages() for list of language names.
3031
highlightExts = map[string]struct{}{
31-
".arm": {},
32-
".as": {},
33-
".sh": {},
34-
".cs": {},
35-
".cpp": {},
36-
".c": {},
37-
".css": {},
38-
".cmake": {},
39-
".bat": {},
40-
".dart": {},
41-
".patch": {},
42-
".erl": {},
43-
".go": {},
44-
".html": {},
45-
".xml": {},
46-
".hs": {},
47-
".ini": {},
48-
".json": {},
49-
".java": {},
50-
".js": {},
51-
".less": {},
52-
".lua": {},
53-
".php": {},
54-
".py": {},
55-
".rb": {},
56-
".rs": {},
57-
".scss": {},
58-
".sql": {},
59-
".scala": {},
60-
".swift": {},
61-
".ts": {},
62-
".vb": {},
63-
".yml": {},
64-
".yaml": {},
32+
".applescript": {},
33+
".arm": {},
34+
".as": {},
35+
".bash": {},
36+
".bat": {},
37+
".c": {},
38+
".cmake": {},
39+
".cpp": {},
40+
".cs": {},
41+
".css": {},
42+
".dart": {},
43+
".diff": {},
44+
".django": {},
45+
".go": {},
46+
".gradle": {},
47+
".groovy": {},
48+
".haml": {},
49+
".handlebars": {},
50+
".html": {},
51+
".ini": {},
52+
".java": {},
53+
".json": {},
54+
".less": {},
55+
".lua": {},
56+
".php": {},
57+
".scala": {},
58+
".scss": {},
59+
".sql": {},
60+
".swift": {},
61+
".ts": {},
62+
".xml": {},
63+
".yaml": {},
6564
}
6665

6766
// Extensions that are not same as highlight classes.
6867
highlightMapping = map[string]string{
69-
".txt": "nohighlight",
68+
".ahk": "autohotkey",
69+
".crmsh": "crmsh",
70+
".dash": "shell",
71+
".erl": "erlang",
7072
".escript": "erlang",
7173
".ex": "elixir",
7274
".exs": "elixir",
75+
".f": "fortran",
76+
".f77": "fortran",
77+
".f90": "fortran",
78+
".f95": "fortran",
79+
".feature": "gherkin",
80+
".fish": "shell",
81+
".for": "fortran",
82+
".hbs": "handlebars",
83+
".hs": "haskell",
84+
".hx": "haxe",
85+
".js": "javascript",
86+
".jsx": "javascript",
87+
".ksh": "shell",
88+
".kt": "kotlin",
89+
".l": "ocaml",
90+
".ls": "livescript",
91+
".md": "markdown",
92+
".mjs": "javascript",
93+
".mli": "ocaml",
94+
".mll": "ocaml",
95+
".mly": "ocaml",
96+
".patch": "diff",
97+
".pl": "perl",
98+
".pm": "perl",
99+
".ps1": "powershell",
100+
".psd1": "powershell",
101+
".psm1": "powershell",
102+
".py": "python",
103+
".pyw": "python",
104+
".rb": "ruby",
105+
".rs": "rust",
106+
".scpt": "applescript",
107+
".scptd": "applescript",
108+
".sh": "bash",
109+
".tcsh": "shell",
110+
".ts": "typescript",
111+
".tsx": "typescript",
112+
".txt": "plaintext",
113+
".vb": "vbnet",
114+
".vbs": "vbscript",
115+
".yml": "yaml",
116+
".zsh": "shell",
73117
}
74118
)
75119

0 commit comments

Comments
 (0)