&gt; I want &quot;i&quot; mapped to evil-forward-char in<br>
normal, visual, visual block, dired, etc. modes. I want to avoid this:<br><br>If you want the key binding in normal and visual, you can add it to the evil-motion-state-map, which is active in both of those two.  In terms of how to integrate it with Dired&#39;s own key bindings, I wrote up a guide on that kind of thing a few weeks ago:<br>
<br><a href="http://emacswiki.org/emacs/Evil#toc7">http://emacswiki.org/emacs/Evil#toc7</a><br><br><br><br><div class="gmail_quote">On Sat, Sep 22, 2012 at 4:22 AM, Patrick Brinich-Langlois <span dir="ltr">&lt;<a href="mailto:pbrinichlanglois@gmail.com" target="_blank">pbrinichlanglois@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I&#39;ve been using Vim with extensive remappings designed for the Colemak keyboard<br>
layout (<a href="http://colemak.com/pub/vim/colemak.vim" target="_blank">http://colemak.com/pub/vim/colemak.vim</a>). I&#39;m trying to recreate the Vim<br>
mappings in Emacs with Evil. What&#39;s a good way of remapping a key in all<br>
relevant contexts? For example, I want &quot;i&quot; mapped to evil-forward-char in<br>
normal, visual, visual block, dired, etc. modes. I want to avoid this:<br>
<br>
(define-key evil-normal-state-map &quot;i&quot; &#39;evil-forward-char)<br>
(define-key<br>
evil-visual-state-map &quot;i&quot; &#39;evil-forward-char)<br>
(define-key<br>
whatever-corresponds-to-dired-map &quot;i&quot; &#39;evil-forward-char)<br>
<br>
I tried to write some Elisp to do this, but it doesn&#39;t work (Wrong type<br>
argument):<br>
<br>
(defun remap-all (char action states)<br>
(if states (progn (define-key (car states) char action)<br>
(remap-all char action (cdr states)))))<br>
(setq states &#39;(evil-normal-state-map evil-visual-state-map))<br>
(remap-all &quot;i&quot; &#39;evil-forward-char states)<br>
<br>
Thanks, Patrick<br>
<br>
<br>
_______________________________________________<br>
implementations-list mailing list<br>
<a href="mailto:implementations-list@lists.ourproject.org">implementations-list@lists.ourproject.org</a><br>
<a href="https://lists.ourproject.org/cgi-bin/mailman/listinfo/implementations-list" target="_blank">https://lists.ourproject.org/cgi-bin/mailman/listinfo/implementations-list</a><br>
</blockquote></div><br>