From ecef17a8f525191b870cd588fe223de53bcf1eab Mon Sep 17 00:00:00 2001 From: Daniel Fichtinger Date: Sat, 24 May 2025 16:26:55 -0400 Subject: [PATCH] AutoYADM commit: 2025-05-24 16:26:55 --- .config/kak/autoload/lsp.kak | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/.config/kak/autoload/lsp.kak b/.config/kak/autoload/lsp.kak index 8234b3a6..a7fde5c4 100644 --- a/.config/kak/autoload/lsp.kak +++ b/.config/kak/autoload/lsp.kak @@ -22,13 +22,23 @@ define-command -hidden -override lsp-hide-code-actions %{ } # Server Config set-option global lsp_debug false + declare-option str-list lsp_filetypes python go rust bash fish typst yaml json jsonc - -hook global WinSetOption filetype=.* %{ - lsp-enable-window - lsp-inlay-hints-enable window +define-command -hidden lsp-filetype-hooks-update %{ + try %{ remove-hooks window lsp-filetypes } + # convert the str-list into regex of form (a|b|c|...) + hook -group lsp-filetypes global WinSetOption %exp~filetype=%sh{ + printf '%s' "(${kak_opt_lsp_filetypes// /|})" + }~ %{ + lsp-enable-window + lsp-inlay-hints-enable window + } } +lsp-filetype-hooks-update +hook global WinSetOption lsp_filetypes=.* lsp-filetype-hooks-update +hook global BufSetOption lsp_filetypes=.* lsp-filetype-hooks-update +hook global GlobalSetOption lsp_filetypes=.* lsp-filetype-hooks-update # TODO: set up toggle binding for this # or even better, show them on hover...?