diff --git a/.config/kak/autoload/lsp.kak b/.config/kak/autoload/lsp.kak index f860134b..e09dfee8 100644 --- a/.config/kak/autoload/lsp.kak +++ b/.config/kak/autoload/lsp.kak @@ -99,6 +99,7 @@ define-command -hidden lsp-filetype-hooks-update %{ map -docstring 'toggle inlay hints' window ui h ': inlay-toggle' map -docstring 'toggle inlay diagnostics' window ui d ': inlay-diagnostics-toggle' map -docstring 'toggle inline diagnostics' window ui e ': inline-diagnostics-toggle' + trigger-user-hook lsp-enabled } } lsp-filetype-hooks-update @@ -247,18 +248,20 @@ hook global KakEnd .* %{ } } -hook global User lsp-diag-hover-false %{ - info 'false detected' -} -hook global User lsp-diag-hover-true %{ - info 'true detected' -} +hook global User lsp-enabled %{ + hook window User lsp-diag-hover-false %{ + try inlay-diagnostics-off + } -hook global NormalIdle .* %{ - lsp-diag-query %val{cursor_line} %val{cursor_column} -} + hook window User lsp-diag-hover-true %{ + try inlay-diagnostics-on + } -hook global WinSetOption lsp_inline_diagnostics=.* %{ - lsp-diag-set + hook window NormalIdle .* %{ + lsp-diag-query %val{cursor_line} %val{cursor_column} + } + hook window WinSetOption lsp_inline_diagnostics=.* %{ + lsp-diag-set + } } diff --git a/.config/kak/scripts/lsp-diags.py b/.config/kak/scripts/lsp-diags.py index 2980e5a8..2bd6a30a 100755 --- a/.config/kak/scripts/lsp-diags.py +++ b/.config/kak/scripts/lsp-diags.py @@ -48,14 +48,6 @@ def is_cursor_in_any(cursor: Position, diagnostics: SpecList) -> bool: return False -def test(): - test_data = "1 10.21,10.30|DiagnosticHint 33.43,33.47|DiagnosticHint 34.7,34.10|DiagnosticHint 57.8,57.17|DiagnosticHint 68.9,68.18|DiagnosticHint 69.14,69.23|DiagnosticHint 72.7,72.11|DiagnosticHint 73.70,73.79|DiagnosticHint 75.7,75.11|DiagnosticHint 77.47,77.56|DiagnosticHint 79.27,79.28|DiagnosticHint 81.61,81.70|DiagnosticHint 84.66,84.75|DiagnosticHint 96.4,96.13|DiagnosticHint 97.3,97.12|DiagnosticHint 101.8,101.20|DiagnosticHint 145.28,145.43|DiagnosticHint 153.13,153.21|DiagnosticHint 155.13,155.21|DiagnosticHint 158.5,158.14|DiagnosticHint 164.56,164.61|DiagnosticHint 203.21,203.21|DiagnosticHint 204.28,204.28|DiagnosticHint 206.16,206.16|DiagnosticHint 209.5,209.5|DiagnosticHint 210.5,210.5|DiagnosticHint 216.25,216.25|DiagnosticHint 219.21,219.21|DiagnosticHint 225.27,225.27|DiagnosticHint 234.59,234.59|DiagnosticHint 263.37,263.39|DiagnosticHint 268.55,268.57|DiagnosticHint 287.46,287.47|DiagnosticHint 326.16,326.25|DiagnosticHint 337.34,337.36|DiagnosticHint 339.33,339.35|DiagnosticHint 364.63,364.71|DiagnosticHint 366.46,366.54|DiagnosticHint" - out = parse_specs(test_data) - print(out) - test_cursor = (10, 24) - print(is_cursor_in_any(test_cursor, out)) - - def cleanup(inp: str, outp: str, dir: str): # subprocess.run(["notify-send", "cleanup runs"]) try: