It's been requested a couple times. Would be fairly straightforward to send keys as rpc events. But another way of doing it is to intercept the stuff at the UI side. External UIs *send* the keys *to* nvim, so they already have the keys anyways... Justin M. Keyes
On Mon, Mar 13, 2017 at 8:52 PM, <[email protected]> wrote: > Drawing inspiration from Drew Neil's vimprint keystroke parser plugin - > https://github.com/nelstrom/vimprint - I'm interested in a plugin that does > the following: > > 1) Records keystrokes (Normal and Ex mode to start with) for the purpose of > analyzing keystroke patterns. It should be possible to toggle keystroke > monitoring within a Vim session, specify multiple output files per Vim > session, black/white list keystrokes, etc. > > 2) Hook into the keystroke state machines (Normal and Ex mode) such that > long descriptions of the possible commands can be displayed in a secondary > window (quickfix possibly). See example 1 below. > > 3) Corollary to (2): Type a long description and display Normal or Ex mode > commands. See example 2 below. > > Does Neovim provide such access into the keystroke state machine? > > Example 1 > ======== > Input: "v" > > "Visually select character under cursor" > "Visually select characters from cursor till start of next word" => vw > "Visually select characters from cursor till before char" => vt{char} > ... and more (up to max lines) ... > > Input: "vw" > > "Visually select characters from cursor till start of next word and copy > selection into register" => vwy > "Visually select characters from cursor till start of next word and replace > characters with {char}" => vwr{char} > ... and more ... > > Input: "vwr_" > > Example 2 > ======== > Input: "Visually select" > > v => "Visually select character under cursor" > vw => "Visually select characters from cursor till start of next word" > vt{char} => "Visually select characters from cursor till before char" > ... and more (up to max lines) ... > > Input: "Visually select characters from cursor till start of next word and " > > vwy => "Visually select characters from cursor till start of next word and > copy selection into register" > vwr{char} => "Visually select characters from cursor till start of next word > and replace characters with {char}" > ... and more ... > > Thanks, > matt > > -- > You received this message because you are subscribed to the Google Groups > "neovim" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "neovim" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
