Skip to content

Commit

Permalink
Delete diagnostics when we close a document
Browse files Browse the repository at this point in the history
  • Loading branch information
pedro-w committed Feb 22, 2022
1 parent f40c682 commit 193e05a
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
3 changes: 3 additions & 0 deletions src/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@ export function activate (context: vscode.ExtensionContext): void {
vscode.workspace.onDidChangeTextDocument(event => {
diagnosticProvider.CreateDiagnostics(event.document)
})
vscode.workspace.onDidCloseTextDocument(document => {
diagnosticProvider.RemoveDiagnostics(document)
})
console.log(`Extension ${context.extension.id} loaded`)
} catch (err) {
console.error('Failed to load tmLanguage extension due to ', err)
Expand Down
8 changes: 6 additions & 2 deletions src/jsonTmLanguageDiagnosticProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import * as vscode from 'vscode'
import JsonTmLanguageAnalyser from './jsonTmLanguageAnalyser'

export default class jsonTmLanguageDiagnosticProvider {
private readonly uuidErrors = vscode.languages.createDiagnosticCollection('languageErrors')
private readonly tmLanguageErrors = vscode.languages.createDiagnosticCollection('tmLanguageErrors')
public CreateDiagnostics (document: vscode.TextDocument): void {
const diagnostics: vscode.Diagnostic[] = []

Expand Down Expand Up @@ -42,6 +42,10 @@ export default class jsonTmLanguageDiagnosticProvider {
}
}

this.uuidErrors.set(document.uri, diagnostics)
this.tmLanguageErrors.set(document.uri, diagnostics)
}

RemoveDiagnostics (document: vscode.TextDocument): void {
this.tmLanguageErrors.delete(document.uri)
}
}

0 comments on commit 193e05a

Please sign in to comment.