@@ -38,19 +38,19 @@ function highlight_spans(content, classname) {
38
38
39
39
/** @type {Partial<import('marked').Renderer> } */
40
40
const default_renderer = {
41
- code : ( source , language = '' ) => {
41
+ code : ( { text , lang = '' } ) => {
42
42
/** @type {Record<string, string> } */
43
43
const options = { } ;
44
44
45
45
let html = '' ;
46
46
47
- source = source
47
+ let source = text
48
48
. replace ( / \/ \/ \/ ( .+ ?) (?: : ( .+ ) ) ? \n / gm, ( _ , key , value ) => {
49
49
options [ key ] = value ;
50
50
return '' ;
51
51
} )
52
52
. replace ( / ^ ( [ \- \+ ] ) ? ( (?: ) + ) / gm, ( match , prefix = '' , spaces ) => {
53
- if ( prefix && language !== 'diff' ) return match ;
53
+ if ( prefix && lang !== 'diff' ) return match ;
54
54
55
55
// for no good reason at all, marked replaces tabs with spaces
56
56
let tabs = '' ;
@@ -64,7 +64,7 @@ const default_renderer = {
64
64
} )
65
65
. replace ( / \* \\ \/ / g, '*/' ) ;
66
66
67
- if ( language === 'diff' ) {
67
+ if ( lang === 'diff' ) {
68
68
const lines = source . split ( '\n' ) . map ( ( content ) => {
69
69
let type = null ;
70
70
if ( / ^ [ \+ \- ] / . test ( content ) ) {
@@ -85,10 +85,9 @@ const default_renderer = {
85
85
} )
86
86
. join ( '' ) } </code></pre></div>`;
87
87
} else {
88
- const lang = /** @type {keyof languages } */ ( language ) ;
89
- const plang = languages [ lang ] ;
88
+ const plang = languages [ /** @type {keyof languages } */ ( lang ) ] ;
90
89
const highlighted = plang
91
- ? PrismJS . highlight ( source , PrismJS . languages [ plang ] , language )
90
+ ? PrismJS . highlight ( source , PrismJS . languages [ plang ] , lang )
92
91
: escape_html ( source ) ;
93
92
94
93
html = `<div class="code-block">${
0 commit comments