diff --git a/src/vs/editor/common/services/modelServiceImpl.ts b/src/vs/editor/common/services/modelServiceImpl.ts index f506eef2f5c..40b258d49ce 100644 --- a/src/vs/editor/common/services/modelServiceImpl.ts +++ b/src/vs/editor/common/services/modelServiceImpl.ts @@ -28,6 +28,7 @@ import { overviewRulerError, overviewRulerInfo, overviewRulerWarning } from 'vs/ import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IMarker, IMarkerService, MarkerSeverity, MarkerTag } from 'vs/platform/markers/common/markers'; import { ThemeColor, themeColorFromId } from 'vs/platform/theme/common/themeService'; +import { localize } from 'vs/nls'; function MODEL_ID(resource: URI): string { return resource.toString(); @@ -197,44 +198,34 @@ class ModelMarkerHandler { // Disable markdown renderer sanitize to allow html // Hence, escape all input strings hoverMessage.sanitize = false; - if (source) { - hoverMessage.appendMarkdown(`[${escape(source)}]`); - hoverMessage.appendText(' '); - } - hoverMessage.appendMarkdown(``); - message = escape(message.trim()); - const lines = message.split(/\r\n|\r|\n/g); - if (lines.length > 1) { - if (source) { - hoverMessage.appendMarkdown(`
`); - } - for (const line of lines) { - hoverMessage.appendText(line); - hoverMessage.appendMarkdown(`
`); - } - } else { - hoverMessage.appendText(message); - } - hoverMessage.appendMarkdown(`
`); - - if (code) { - if (lines.length === 1) { - hoverMessage.appendText(' '); - } - hoverMessage.appendMarkdown(`[${escape(code)}]`); - } + hoverMessage.appendMarkdown(`
`); + hoverMessage.appendMarkdown(`${escape(message.trim())}`); + hoverMessage.appendMarkdown(`
`); if (isNonEmptyArray(relatedInformation)) { - hoverMessage.appendMarkdown(`\n`); + hoverMessage.appendMarkdown(``); + } + + if (source || code) { + hoverMessage.appendMarkdown(`
`); + if (source) { + hoverMessage.appendMarkdown(`${localize('source', "Source")}:${escape(source)}`); + if (code) { + hoverMessage.appendMarkdown(`,`); + } + } + if (code) { + hoverMessage.appendMarkdown(`${localize('code', "Code")}:${escape(code)}`); + } + hoverMessage.appendMarkdown(`
`); } }