Alexander Shukaev | 20 Jul 17:09 2015

Deny keymap changes made by `evil-integration'


`evil-integration' has quite some forms like

(eval-after-load 'dired
     ;; use the standard Dired bindings as a base
     (defvar dired-mode-map)
     (evil-make-overriding-map dired-mode-map 'normal)
     (evil-add-hjkl-bindings dired-mode-map 'normal
       "J" 'dired-goto-file                   ; "j"
       "K" 'dired-do-kill-lines               ; "k"
       "r" 'dired-do-redisplay                ; "l"
       ;; ":d", ":v", ":s", ":e"
       ";" (lookup-key dired-mode-map ":"))))

for various packages.  I would like to learn how to either revert
these changes back to the default state (i.e. `dired-mode-map' should
be crystal clean as it was before loading `evil') or, even better,
prevent `evil-integration' from doing such changes.  For instance,
I've tried

(let ((dired-mode-map))
  (require 'evil)

and it didn't work.  Any ideas?

P.S.: My personal opinion is that such intrusive (and silent) changes
(Continue reading)

RW. S | 28 Jun 15:45 2015

evil-cross-lines act like evil-find-skip-newlines

Not that it's necessarily related to the question but context is that
I'm new to emacs (and therefore also evil-mode), but not too new to
vim (a few years).

Question is, is there a way to get f, F, t, T to skip newlines to find
a character, but without making h and l to cross lines?
`evil-cross-lines` does both (i.e. it *does* make h and l cross
lines), but I only want the former, without the latter. I suppose
`evil-find-skip-newlines` as I read in the documentation is what I
want (and why I hope it's possible), but the option seems to be taken
away now.


Also try contacting on twitter  <at> xd1le if no response.
jenia.ivlev | 3 Jun 06:40 2015

add marker to evil-jump-list before executing arbitrary function


I want to be able to jump back, using C-o, to the position where I execute
I have wrote this small program:

  (defun ggtags-go-to-definition ()
    (let ((current-pos (make-marker)))
      (add-to-list 'evil-jump-list current-pos)
      (ggtags-find-tag-dwim (thing-at-point 'symbol))))

But it gives me the error "Marker does not point anywhere".

Can someone please tell me, how do I write this program correctly? That
is, I want to store the position before executing `ggtags...` and then
be able to jump back (using "C-o" a.k.a "evil-jump-back").

Thanks in advance for your kind help.
LiuXiaogang | 24 May 04:35 2015

Last matching text was not replaced by %s


I isntalled evil-mode version 20150511.146 from melpa yesterday. I tried the following command line


As you can see from the attached picture, the last match was not highlighted (and not replaced when I hit Enter). I have haskell-mode installed and was editing a simple haskell file. Below is the source code. The green text was the one missed by the command.

getLines :: (Num a) => [String] -> a -> [String]
getLines [] n = []
getLines xs <at> (x:_) n
  | length xs < n = [] -- Ignore remainder
  | otherwise     = (get-line (take n xs)) : (getLines (drop n xs))

get-line :: [String] -> String
get-line [] = "\n"
get-line (x:xs) = (show x) + "," + (get-line xs)

Best regards,

implementations-list mailing list
implementations-list <at>
William Hatch | 28 Apr 05:26 2015

weird behavior with evil visual

Hello, I hope this is the right list for this.

I just made an emacs plugin to repeat motions -- I just wrap motion 
functions into a new repeatable version.  Upon initial testing it worked 
great, but when used in evil-mode with operators or in visual state I get 
weird one-off behavior.  For example, in normal state my 
repeatable-evil-find-char goes to the desired character, but in 
operator-pending state or visual state it goes to one character before 
that.  My repeatable-evil-find-char-to goes to the character before the 
target character in normal state, but two characters before it in visual or 
operator state.  Also my repeatable-evil-next-line doesn't work at all in 
visual line state.  Can anyone point me to why this might be happening?  
I'm aware that there is a macro in evil called evil-define-motion, but I 
haven't had time to read through and understand it all, so I thought a 
quick probe on a mailing list might save me a lot of time if I were barking 
up the wrong tree.

The source of my plugin is here:

Thanks is advance for any advice.
Nancy Polar | 14 Apr 11:10 2015

Spam: Re: Finance Your Project

Att: Sir/Madam,
We are private investors specializing in  Joint Venture Partnership/Equity contributions/loans for project of various types to help individuals and organization reach their financial objectives. We customize structured financial solutions for a select group of clientele and investors. Our commitment to client services and innovative approach to financial problem solving.
If you are interested in our services, kindly provide us with the following information:
    * Name of Applicant: ..........
    * Company name: ...............
    * Address/Location: ...........
    * Tel: ........................
    * Amount Requested: ...........(If JV/Loan)
    * Finance Duration: ...........
    * Project name: ...............
Nancy Polar
Secretary to Adam Golding (Private Investor)
This email is intended for the addressee(s) only, and may contain confidential or privileged information. Unauthorised use of this information, or distribution, copying or other dissemination is strictly prohibited. If you have received this email in error, please delete it immediately.

implementations-list mailing list
implementations-list <at>
Frank Fischer | 8 Apr 23:29 2015

[ANN] Evil version 1.1.0 released

Evil version 1.1.0 has been released.

This is the long waited new stable release of Evil, which is just the
current development (master) branch. The new release contains many
changes and bug fixes that accumulated over the past few months. Because
most users have been using the development branch anyway it should be
reasonably stable (plus it is probably the better choice for Emacs 24.3
and above due to some nasty bugs on the old stable release).

The stable version can be installed from MELPA stable [1].
The latest development version is available from MELPA [2].

Enjoy, the Evil developers.

Dacoda Strack | 5 Apr 19:45 2015

evil-mode: python surround string with function

I've just started exploring evil-mode and was wondering about the
behaviour of the evil-surround package when it comes to surrounding lines
with functions. For example, if I have some string that I've written

"Hello world!"

and I want to surround it with a "print" function, I thought I'd be able
to do =yssfprint<RET>=, but I wind up getting the following: 

"Hello world!")

I'm not sure if it's because =yss= selects the linebreak before the
quotation mark or quite what's going on.

Would someone be so kind as to elucidate the situation for a real
vim/evil-mode newbie?
Gordon Gustafson | 25 Mar 00:22 2015

Re: Make Y consistent like with D

This doesn't fully answer your question, but this is how I rebind Y:

    (define-key evil-normal-state-map "Y" 'evil-yank-end-of-line)

On 3/24/15, Ernst de Hart <ernstdehart <at>> wrote:
> Hello Evil users,
> The key 'D' in normal mode, deletes the line after the cursor.
> I would like to make the key 'Y' consistent with this. So I wrote a
> function for this, after finding out the command that's called after every
> key action with "C-h k".
> So, I came with this:
>         (defun my-make-Y-key-working ()
>            (interactive)
>             (evil-visual-char)
>             (evil-end-of-line)
>             (evil-yank BEG END)
>             (evil-exit-visual-state)
>           )
> But it gives me an error on evil-yank, he don't accept BEG END as input.
> The evil-yank command requires parameters on the place of BEG and END, but
> I couldn't figure out what the input should be then.
> I found nothing in the documentation about this.
> Next to solving the issue with BEG END, what would be your suggestion in
> which way could I figure such problems out in the future? Thanks in advance
> for your reply. It's appreciated.
> Ernst
max6166 | 19 Mar 16:44 2015

evil-mode: How to automatically switch to insert mode after certain commands?

There are many emacs commands after which I almost always immediately want
to insert text. This often requires entering insert mode after the initial

Is there any way to instead enter insert mode automatically after certain

For example, in org-mode, a user will usually enter some text immediately
after the commands org-insert-heading or org-capture. 

Though this only requires typing <i>, the situation arises so many times in
a day that I find myself wishing I could eliminate that extra key press.

What would be the recommended way to do this? 

Incidentally, I am also using evil-org-mode. 

Óscar Fuentes | 18 Mar 21:30 2015

Gitorius repo not accessible?

For several days, communicating with the gitorius git repo fails with

$ git clone git://
Cloning into 'evil'...
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.