|
5 | 5 | ******************************************************************************/
|
6 | 6 | import { GrammarAST, type Grammar, GrammarUtils, RegExpUtils } from 'langium';
|
7 | 7 | import { expandToNode, joinToNode, toString, type Generated } from 'langium/generate';
|
8 |
| -import _ from 'lodash'; |
9 | 8 | import type { LangiumLanguageConfig } from '../../package-types.js';
|
10 | 9 | import { collectKeywords } from '../langium-util.js';
|
11 | 10 |
|
@@ -47,17 +46,17 @@ export function generatePrismHighlighting(grammar: Grammar, config: LangiumLangu
|
47 | 46 | pattern: `/\\b(${filteredKeywords.join('|')})\\b/${modifier}`
|
48 | 47 | };
|
49 | 48 |
|
50 |
| - return generate(highlighter, grammar.name ?? 'unknown'); |
| 49 | + return generate(highlighter, config.id); |
51 | 50 | }
|
52 | 51 |
|
53 |
| -function generate(highlighter: PrismHighlighter, grammarName: string): string { |
| 52 | +function generate(highlighter: PrismHighlighter, languageId: string): string { |
54 | 53 | /* eslint-disable @typescript-eslint/indent */
|
55 | 54 | return toString(
|
56 | 55 | expandToNode`
|
57 | 56 | // This file is generated using a best effort guess for your language.
|
58 | 57 | // It is not guaranteed contain all expected prism syntax highlighting rules.
|
59 | 58 | // For more documentation, take a look at https://prismjs.com/extending.html'
|
60 |
| - Prism.languages.${_.camelCase(grammarName)} = { |
| 59 | + Prism.languages["${languageId}"] = { |
61 | 60 | ${joinToNode(
|
62 | 61 | Object.entries(highlighter),
|
63 | 62 | ([name, value]) => {
|
|
0 commit comments