dbalatero / VimMode.spoon

Adds vim keybindings to all OS X inputs
688 stars 30 forks source link

Advanced mode: use context to send to headless neovim? #35

Open BlueDrink9 opened 4 years ago

BlueDrink9 commented 4 years ago

The v2 project looks absolutely awesome. Would you be willing to look into sending the context you can obtain to a headless neovim, and reading out the result, rather than possibly-imperfectly duplicating the correct behavior in lua? It seems like it would be a much more long-term sustainable approach, and would give the user the benefit of all the neovim tools, configurations and plugins?

dbalatero commented 4 years ago

Yes! This is my v3 plan haha.

I think I should at least proof of concept it next before moving forward with any more imperfect implementations (and believe me, they are!)

On Mon, Feb 3, 2020 at 10:54 PM BlueDrink9 notifications@github.com wrote:

The v2 project looks absolutely awesome. Would you be willing to look into sending the context you can obtain to a headless neovim, and reading out the result, rather than possibly-imperfectly duplicating the correct behavior in lua? It seems like it would be a much more long-term sustainable approach, and would give the user the benefit of all the neovim tools, configurations and plugins?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/dbalatero/VimMode.spoon/issues/35?email_source=notifications&email_token=AAAOQJI5OVLLUEDTJCXHI4LRBDRHPA5CNFSM4KPQEUXKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IKY32IA, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAOQJPMIRGKAW6CFAYDNSTRBDRHPANCNFSM4KPQEUXA .

BlueDrink9 commented 4 years ago

Excellent, glad to hear. I'm working on my own imperfect, since X11 doesn't have any general-text emulators, but mine's more OS-generic so I envy being able to access the context.

dbalatero commented 4 years ago

Yeah totally. In testing on Mac, the latency to copy to the clipboard, read it out, reset the cursors, etc is untenable, in case you go that route.

The v1 I did basically translates motions and operators into os-available hot keys (alt+left to go back a word, etc) and fires them which gets you an imperfect but pretty usable basic set of Vim commands!

On Mon, Feb 3, 2020 at 11:15 PM BlueDrink9 notifications@github.com wrote:

Excellent, glad to hear. I'm working on my own imperfect, since X11 doesn't have any general-text emulators, but mine's more OS-generic so I envy being able to access the context.

— You are receiving this because you commented.

Reply to this email directly, view it on GitHub https://github.com/dbalatero/VimMode.spoon/issues/35?email_source=notifications&email_token=AAAOQJPM4VIGFLVAR7CUFA3RBDTX3A5CNFSM4KPQEUXKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKWJGFY#issuecomment-581735191, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAOQJLFK43EJJRAXCZTEWTRBDTX3ANCNFSM4KPQEUXA .

BlueDrink9 commented 4 years ago

I was considering clipboard, good to know about. Damn. That being said, if you only need it occasionally I'm hoping it isn't so bad. Mine will be even worse I imagine, because of the extra os-independent layer.

Yeah, I'm broadly going down the v1 route. I might look at how you've done your maps some time.

dbalatero commented 4 years ago

@BlueDrink9 I'm working on the neovim client version, and I have it passing keys pressed over RPC to Neovim: https://github.com/dbalatero/VimMode.spoon/compare/nvim

It's a mess right now but I'm just trying to get something basic working.

Have you looked into the accessibilty APIs on linux? This might provide you access to cursor position and line values: https://en.wikipedia.org/wiki/Assistive_Technology_Service_Provider_Interface

alok commented 3 years ago

@dbalatero would any of the updates in nvim since last year help with this? i'd be willing to sponsor this for up to $200.