I’m having trouble figuring out how to use the mappings for kak-lsp. The documentation recommends using object mode mappings but I don’t quite get them.
For example, for this keybind:
map global object d '<a-semicolon>lsp-diagnostic-object --include-warnings<ret>' -docstring 'LSP errors and warnings'
I am expecting to recieve some sort of message on the error i’m highlighing. So I run:
<a-a>d
But that only selects the word I’m at. Pressing d again deletes it. I don’t understand object mode mappings and trying to map it to something like makes the lsp tell me that there’s nothing selected, so I believe it must be done through object-mode.
I am using the same configuration that the kak-lsp documentation recommends:
map global user l ':enter-user-mode lsp<ret>' -docstring 'LSP mode'
map global insert <tab> '<a-;>:try lsp-snippets-select-next-placeholders catch %{ execute-keys -with-hooks <lt>tab> }<ret>' -docstring 'Select next snippet placeholder'
map global object a '<a-semicolon>lsp-object<ret>' -docstring 'LSP any symbol'
map global object <a-a> '<a-semicolon>lsp-object<ret>' -docstring 'LSP any symbol'
map global object f '<a-semicolon>lsp-object Function Method<ret>' -docstring 'LSP function or method'
map global object t '<a-semicolon>lsp-object Class Interface Struct<ret>' -docstring 'LSP class interface or struct'
map global object d '<a-semicolon>lsp-diagnostic-object --include-warnings<ret>' -docstring 'LSP errors and warnings'
map global object D '<a-semicolon>lsp-diagnostic-object<ret>' -docstring 'LSP errors'