diff options
| author | Ian Chamberlain <ichamberlain@juniper.net> | 2023-01-03 10:49:47 -0500 |
|---|---|---|
| committer | Ian Chamberlain <ichamberlain@juniper.net> | 2023-01-09 11:49:59 -0500 |
| commit | 738ce83d858aa498c3ff28be3417101ab5f9ce6f (patch) | |
| tree | c62c1a5fa924a30d3e86db69c9e5052bb565302b | |
| parent | c3e4bc313611d571123d4e4257af58784e42f47d (diff) | |
| download | rust-738ce83d858aa498c3ff28be3417101ab5f9ce6f.tar.gz rust-738ce83d858aa498c3ff28be3417101ab5f9ce6f.zip | |
Strip colors before matching preview diagnostics
| -rw-r--r-- | editors/code/src/client.ts | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/editors/code/src/client.ts b/editors/code/src/client.ts index 74cf44f42f7..c6d64ebc1ed 100644 --- a/editors/code/src/client.ts +++ b/editors/code/src/client.ts @@ -1,3 +1,4 @@ +import * as anser from "anser"; import * as lc from "vscode-languageclient/node"; import * as vscode from "vscode"; import * as ra from "../src/lsp_ext"; @@ -139,9 +140,10 @@ export async function createClient( ?.rendered; if (rendered) { if (preview) { + const decolorized = anser.ansiToText(rendered); const index = - rendered.match(/^(note|help):/m)?.index || rendered.length; - diag.message = rendered + decolorized.match(/^(note|help):/m)?.index || rendered.length; + diag.message = decolorized .substring(0, index) .replace(/^ -->[^\n]+\n/m, ""); } |
