Issue with backspace/delete/enter behavior and problem with kakrc

sorry for the vague topic, it seems to be two separate issues that may be related. I need to configure my kakrc for debugging.

the issue with backspace/delete/enter is that all three seem to be entering twice on keypress: once in the character space before the cursor and once after it. this issue is isolated to kakoune(it doesn’t seem to be the case in other programs), and I’ve only noticed this behavior in the last week, though it could have existed longer than that.

I also noticed an issue with the lsp with python(wasn’t loaded) so I checked the buffer debug. this is it’s current content:

*** This is the debug buffer, where debug info will be written ***
shell stderr: <<<
sh: line 1: .: : file not found
>>>
shell stderr: <<<
sh: line 1: .: : file not found
>>>
shell stderr: <<<
sh: line 1: .: : file not found
>>>

however I have no idea where this is coming from, except that it seems to that the loading of plugins partially works. while python seems to be having issues, the rust language server works fine.

so I used the debug command to look at the mappings, and all of the effected keys (ret/space/backspace/del) all have mappings for insert mode.

However I can’t seem to find where the mappings are declared in kakrc. it may be that something in my kakrc conflicts with some change made to the kakoune package itself, but I’m unsure how to find out if that’s the case

okay, so I narrowed it down by removing the loading of plugins from my kakrc, which fixed the issue. I’m going to disable them one by one to see which is causing the problem.

It seems that after disabling autopairs the issue was resolved. Though unless something changed I’m not sure what caused it. This is my current autopairs config:

plug "alexherbo2/auto-pairs.kak" config %{
    hook global WinSetOption filetype=markdown %{
        set-option -add buffer auto_pairs_surround $$$ $$$ $ $ _ _ * *
    }
}

1 Like

I rewrote auto-pairs.kak and surround.kak from scratch.

auto-pairs.kak implementation has changed from hooks to maps, and surround.kak from hooks to user modes.

There is now a dependency to prelude.kak for perfect escaping.

1 Like