Skip to content

Commit

Permalink
fix(dgeni): markdown highlight
Browse files Browse the repository at this point in the history
  • Loading branch information
griest024 committed Jun 5, 2024
1 parent d04d3ad commit 9981f5e
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 10 deletions.
33 changes: 28 additions & 5 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,8 @@
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "^1.7.0",
"lerna": "^7.4.2",
"marked": "^12.0.2",
"marked-highlight": "^2.1.1",
"minimist": "^1.2.8",
"ng-packagr": "^17.0.0",
"plugin-error": "^1.0.1",
Expand Down
22 changes: 17 additions & 5 deletions tools/dgeni/src/processors/markdown.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,31 @@ import {
} from 'dgeni';
import hljs from 'highlight.js';
import bash from 'highlight.js/lib/languages/bash';
import graphql from 'highlight.js/lib/languages/graphql';
import scss from 'highlight.js/lib/languages/scss';
import typescript from 'highlight.js/lib/languages/typescript';
import xml from 'highlight.js/lib/languages/xml';
import marked from 'marked';
import { marked } from 'marked';
import { markedHighlight } from 'marked-highlight';

hljs.registerLanguage('typescript', typescript);
hljs.registerLanguage('ts', typescript);
hljs.registerLanguage('xml', xml);
hljs.registerLanguage('scss', scss);
hljs.registerLanguage('bash', bash);
hljs.registerLanguage('graphql', graphql);
hljs.registerLanguage('gql', graphql);

// marked.use(markedMermaid);
marked.use(
markedHighlight({
// langPrefix: 'hljs language-',
highlight: (code, lang, info) => {
const language = hljs.getLanguage(lang) ? lang : 'plaintext';
return hljs.highlight(code, { language }).value;
},
}),
);

export class MarkdownCodeProcessor implements Processor {
name = 'markdown';
Expand All @@ -23,10 +39,6 @@ export class MarkdownCodeProcessor implements Processor {
constructor() {}

$process(docs: Document[]) {
marked.setOptions({
highlight: (code, lang) => lang ? hljs.highlight(code, { language: lang }).value : code,
});

return docs.map((doc) => {
if(this.docTypes.includes(doc.docType)){
doc.content = marked.parse(doc.content);
Expand Down

0 comments on commit 9981f5e

Please sign in to comment.