提交 742829cd 编写于 作者: M Matt Bierner

Render markdown content codeblock as actual block elements instead of a span containing a div

上级 f666439e
......@@ -126,7 +126,7 @@ export function renderMarkdown(markdown: string, options: RenderOptions = {}): N
if (options.codeBlockRenderer) {
renderer.code = (code, lang) => {
let value = options.codeBlockRenderer(lang, code);
const value = options.codeBlockRenderer(lang, code);
if (typeof value === 'string') {
return value;
}
......@@ -136,15 +136,15 @@ export function renderMarkdown(markdown: string, options: RenderOptions = {}): N
// but update the node with the real result later.
const id = defaultGenerator.nextId();
TPromise.join([value, withInnerHTML]).done(values => {
let strValue = values[0] as string;
let span = element.querySelector(`span[data-code="${id}"]`);
const strValue = values[0] as string;
const span = element.querySelector(`div[data-code="${id}"]`);
if (span) {
span.innerHTML = strValue;
}
}, err => {
// ignore
});
return `<span data-code="${id}">${escape(code)}</span>`;
return `<div class="code" data-code="${id}">${escape(code)}</div>`;
}
return code;
......
......@@ -257,7 +257,7 @@ export class ModesContentHoverWidget extends ContentHoverWidget {
: this._editor.getModel().getLanguageIdentifier().language;
return this._modeService.getOrCreateMode(modeId).then(_ => {
return `<div class="code">${tokenizeToString(value, modeId)}</div>`;
return tokenizeToString(value, modeId);
});
}
});
......
......@@ -174,7 +174,7 @@ export class ModesGlyphHoverWidget extends GlyphHoverWidget {
// In markdown, it is possible that we stumble upon language aliases (e.g. js instead of javascript)
const modeId = this.modeService.getModeIdForLanguageName(languageAlias);
return this.modeService.getOrCreateMode(modeId).then(_ => {
return `<div class="code">${tokenizeToString(value, modeId)}</div>`;
return tokenizeToString(value, modeId);
});
}
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册