ninrod / evil-string-inflection

:camel: evil operator to cycle *-case in text objects
Other
30 stars 2 forks source link

Package binding hides a useful evil binding #3

Open ambihelical opened 5 years ago

ambihelical commented 5 years ago

The binding for g~ defined by evil (evil-invert-case) is actually useful. I bind evil-operator-string-inflection to g- which is a great mnemonic, easier to type and currently unused in evil. However g~ is still lost unless I rebind it. Consider a different binding or making the default binding optional.

ninrod commented 5 years ago

interesting. g~ should not be lost if you rebind it. let me try to reproduce it.

ambihelical commented 5 years ago

Yes, absolutely. I can rebind it, but I think the package should make it easier to avoid having to do this.

ninrod commented 5 years ago

Well, this should be easy, but apparently I cannot make it work because I'm horrible at elisp.

So I've posted a question in SO.

If this questions gets answered, or if somehow I find the solution, I'll quickly fix it.

ambihelical commented 5 years ago

I am for sure no better an elisp programmer. But I think you should be able to make a defcustom for the key, with default value of "g~", or (kbd "g~") if you want and then pass that variable to define-key. I don't think kbd is really needed except for some kinds of key definitions, but I am not sure.

VanLaser commented 5 years ago

I tested with this code, which works. Emacs 26.1:

(defcustom evil-test-key  "g~"
  "Key for a test text object."
  :type 'string)

(setq evil-test-key "g~")
(define-key evil-normal-state-map (kbd evil-test-key) 'evil-operator-eval)
abeluck commented 4 years ago

I ran into this today as well. I also use the defailt g~ for invert case.

ninrod commented 4 years ago

@VanLaser, you are doing a rebind on the client config, yes?