Skip to content

Commit ad04921

Browse files
customized syntax highlighter module
1 parent 96ee590 commit ad04921

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

demo/src/SyntaxHighlighter.ts

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { Light as SyntaxHighlighter } from 'react-syntax-highlighter';
2+
import python from 'react-syntax-highlighter/dist/cjs/languages/hljs/python';
3+
import javascript from 'react-syntax-highlighter/dist/cjs/languages/hljs/javascript';
4+
import bash from 'react-syntax-highlighter/dist/cjs/languages/hljs/bash';
5+
6+
SyntaxHighlighter.registerLanguage('python', python);
7+
SyntaxHighlighter.registerLanguage('javascript', javascript);
8+
SyntaxHighlighter.registerLanguage('curl', bash);
9+
10+
SyntaxHighlighter.registerLanguage('elasticsearch', (hljs: any) => ({
11+
case_insensitive: true, // language is case-insensitive
12+
keywords: {
13+
keyword: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'],
14+
literal: ['true', 'false', 'null'],
15+
},
16+
contains: [
17+
{
18+
className: 'attr',
19+
begin: /"(\\.|[^\\"\r\n])*"(?=\s*:)/,
20+
relevance: 1.01
21+
},
22+
{
23+
match: /[{}[\],:]/,
24+
className: "punctuation",
25+
relevance: 0
26+
},
27+
hljs.QUOTE_STRING_MODE,
28+
hljs.C_NUMBER_MODE,
29+
hljs.C_LINE_COMMENT_MODE,
30+
hljs.HASH_COMMENT_MODE,
31+
{
32+
className: 'meta',
33+
begin: '\/[^\\s]*',
34+
},
35+
],
36+
}));
37+
38+
export default SyntaxHighlighter;

0 commit comments

Comments
 (0)