diff --git a/src/vs/base/common/htmlContent.ts b/src/vs/base/common/htmlContent.ts index f047d7effce603a8b7a936f6ea7e913f61cb69a1..c9a546c36965e44cc8fd868fb24b8fce6dc27852 100644 --- a/src/vs/base/common/htmlContent.ts +++ b/src/vs/base/common/htmlContent.ts @@ -33,15 +33,11 @@ export class MarkdownString implements IMarkdownString { } appendText(value: string): this { - this.value += textToMarkedString(value); + // escape markdown syntax tokens: http://daringfireball.net/projects/markdown/syntax#backslash + this.value += value.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&'); return this; } - // appendMarkdown(value: string): this { - // this.value += value; - // return this; - // } - appendCodeblock(langId: string, code: string): this { this.value += '```'; this.value += langId; @@ -76,10 +72,6 @@ function markdownStringEqual(a: IMarkdownString, b: IMarkdownString): boolean { } } -export function textToMarkedString(text: string): string { - return text.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&'); // escape markdown syntax tokens: http://daringfireball.net/projects/markdown/syntax#backslash -} - export function removeMarkdownEscapes(text: string): string { if (!text) { return text; diff --git a/src/vs/editor/common/services/modelServiceImpl.ts b/src/vs/editor/common/services/modelServiceImpl.ts index 20565a52a3f042d0b8c18351a7fddbce42740af4..d09a2f657cd82adba34f8c576f28da539ed19f60 100644 --- a/src/vs/editor/common/services/modelServiceImpl.ts +++ b/src/vs/editor/common/services/modelServiceImpl.ts @@ -8,7 +8,7 @@ import * as nls from 'vs/nls'; import network = require('vs/base/common/network'); import Event, { Emitter } from 'vs/base/common/event'; import { EmitterEvent } from 'vs/base/common/eventEmitter'; -import { IMarkdownString } from 'vs/base/common/htmlContent'; +import { MarkdownString } from 'vs/base/common/htmlContent'; import { IDisposable } from 'vs/base/common/lifecycle'; import Severity from 'vs/base/common/severity'; import URI from 'vs/base/common/uri'; @@ -136,7 +136,7 @@ class ModelMarkerHandler { break; } - let hoverMessage: IMarkdownString = null; + let hoverMessage: MarkdownString = null; let { message, source } = marker; if (typeof message === 'string') { @@ -150,7 +150,7 @@ class ModelMarkerHandler { } } - hoverMessage = { value: '```_\n' + message + '\n```' }; + hoverMessage = new MarkdownString().appendCodeblock('_', message); } return {