-
Notifications
You must be signed in to change notification settings - Fork 93
Description
I am more accustomed to mapping $
and ^
to -
and =
, respectively. When setting key mappings, by specifying the mode as OPERATOR
, it allows them to work well with commands like d
, y
, c
, etc., in the native environment.
While exploring the plugin, I found that in cursor mode, VM waits for a motions command and does not recursively handle "some" user key mappings. The root cause of this behavior is due to the internal call let s:single = { c -> index(split('hljkwebWEB$^0{}()%nN_', '\zs'), c) >= 0 }
, which is a hardcoded check to determine whether it belongs to the motion set. I can accept that this is a "rule," but one counterexample that puzzles me is: user-defined operator commands can work normally via the vim.g.VM_user_operators
configuration. From my limited understanding, the term "motions" covers both operator and motion. Since VM_user_operators
works fine, could you consider adding user-defined motion as well? (For instance, making some efforts with VM_custom_motions
.)
Anyway, thank you very much to the community, this is a fantastic plugin!