]> Sergey Matveev's repositories - vim-lsp.git/commitdiff
Do not require diagnostic severity for ale (#534)
authorMagnus Groß <21310755+vimpostor@users.noreply.github.com>
Tue, 10 Sep 2024 15:04:25 +0000 (17:04 +0200)
committerGitHub <noreply@github.com>
Tue, 10 Sep 2024 15:04:25 +0000 (08:04 -0700)
Some LSPs like for example neocmakelsp [0] do not mark the diagnostics
with a severity, which would throw an error:

```
Error detected while processing function <SNR>66_Output_cb[5]..lsp#handlers#ProcessMess
ages[32]..lsp#handlers#ProcessNotif[52]..<SNR>67_ProcessDiagNotif[2]..lsp#diag#DiagNoti
fication[72]..lsp#diag#ProcessNewDiags[5]..<SNR>69_SendAleDiags[14]..<lambda>46:
line    6:
E716: Key not present in Dictionary: "severity"
```

To fix this, default to "INFO" severity level.

[0] https://github.com/Decodetalkers/neocmakelsp

autoload/lsp/diag.vim

index 6975edf8713936515ebba5722a83cea871078c3f..6af75cf88eaefc5ad3469e741e28c33ee97ba829 100644 (file)
@@ -355,7 +355,7 @@ def SendAleDiags(bnr: number, timerid: number)
              col: util.GetLineByteFromPos(bnr, v.range.start) + 1,
              end_lnum: v.range.end.line + 1,
              end_col: util.GetLineByteFromPos(bnr, v.range.end) + 1,
-             type: "EWIH"[v.severity - 1]}
+             type: "EWIH"[get(v, "severity", 3) - 1]}
     })
   )
 enddef