godbout / kindaVim.docs

Ultimate Vim Mode for macOS
https://kindavim.app
613 stars 4 forks source link

Is there a way to use vimrc or something similar? #222

Closed daneorie closed 5 months ago

daneorie commented 5 months ago

I'm not sure if I missed it in the docs or if a previous issue has already addressed this (I did try looking, but didn't find anything), but is there a way to use different keybindings? I use custom keybinds for Vim, so I wasn't sure if there was a way to still use this app as it looks promising.

godbout commented 5 months ago

yo!

so, a few related threads, for information. but there's some updates since then so i'll talk a bit more after.:

what has been updated is that now there's no more (slow and unreliable) Distributed Notifications. there's a json file that you can read instead.

but tl;dr: 1) custom bindings is a huge endeavor 2) reading a vimrc is even worse lol 3) other priorities for now but most importantly 4) there are already tools for macOS just done for that, like Karabiner-Elements (and probably some others that can do that also like Hammerspoon. so it's much better to have a look at those (especially KE) to take care of custom bindings needs.

lemme know if you need more guidance.

daneorie commented 5 months ago

I use Karabiner-Elements already, but I'm not sure how it would help for this particular scenario.

Nonetheless, thanks for the quick response! If I can't use different bindings, then I might need to keep looking. Really cool app, though!

godbout commented 5 months ago

@daneorie have a look at this discussion: https://github.com/godbout/kindaVim.docs/discussions/117

the first part should give you an idea, BUT, the DistributedNotifications have been replaced by writing the current kV Mode in a json file (see https://github.com/godbout/kindaVim.docs?tab=readme-ov-file#apis)

so that means you could in KE check this variable, know when you're in kV Normal Mode, and remap your keys hehe. you can probably even do that on a per app basis. i personally don't do this myself coz well, i build kV for myself hahahahahhaha and also i tend to not tweak configs too much in order to avoid having a too "locked up" workflow. but people have been asking for this, guiding the development of kV in this direction, and are using it. so lemme know if you need more info and i can reach out to people.