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.

Reply via email to