Skip to content

Commit 8743761

Browse files
committed
change error display length on all line instead of first char (issue: swordev#6)
1 parent d2d8c1e commit 8743761

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

src/extension.ts

+20-1
Original file line numberDiff line numberDiff line change
@@ -362,9 +362,28 @@ async function refreshDiagnostics(result: ResultType) {
362362
for (let path in result.files) {
363363
const pathItem = result.files[path]
364364
const diagnostics: vscode.Diagnostic[] = []
365+
let document: vscode.TextDocument = null
366+
try {
367+
document = await vscode.workspace.openTextDocument(
368+
vscode.Uri.file(path)
369+
)
370+
} catch (error) {
371+
setStatusBarError(error, "Document not found")
372+
}
365373
for (const messageItem of pathItem.messages) {
366374
const line = messageItem.line ? messageItem.line - 1 : 0
367-
const range = new vscode.Range(line, 0, line, 0)
375+
let range: vscode.Range = null
376+
if (document) {
377+
const lineText = document?.lineAt(line)
378+
range = new vscode.Range(
379+
line,
380+
lineText.firstNonWhitespaceCharacterIndex,
381+
line,
382+
lineText.range.end.character
383+
)
384+
} else {
385+
range = new vscode.Range(line, 0, line, 0)
386+
}
368387
const diagnostic = new vscode.Diagnostic(
369388
range,
370389
messageItem.message,

0 commit comments

Comments
 (0)