Hey there,

I just stumbled across evil for emacs. And I like it. I'm actually
surprised with how much I like it out of the box...

There was one thing though, the mode line tags, which didn't quite fit
into my existing mode line setup. I looked into it and thought I needed
to use `evil-put-property' to alter that stuff. But when I used
`evil-get-property' to take a look at which value was looked up, I found
that there was a variable in place already; namely `evil-*-state-tag'.

So, not I can just do:

(setq evil-normal-state-tag "(n)")

which is great. I'm not sure if that's the intended way, though, because
I didn't find this in the documentation (I may have missed it, of
course). I guess my real question is: Will the `evil-*-state-tag' stuff

be a stable way to configure this? (Because I don't like changing my
setup all the time for no apparent reason.)


The second thing is the echoing of "--- INSERT ---" etc. in the
mini-buffer when changing states. I understand that it's vim-ish, but it
distracts me little too much. It'd be great if that could be made
optional.

Here's a patch which does the trick (although I'm not sure I caught all
places):

>From 783d2a661515d0e9e59d8dbefff3698be5842cc9 Mon Sep 17 00:00:00 2001
From: Frank Terbeck <[email protected]>
Date: Sat, 29 Oct 2011 20:57:09 +0200
Subject: [PATCH] Introduce `evil-echo-state' to suppress state changes being
 echoed

Signed-off-by: Frank Terbeck <[email protected]>
---
 evil-core.el   |    3 ++-
 evil-vars.el   |    5 +++++
 evil-visual.el |    2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/evil-core.el b/evil-core.el
index b2900aa..84badc6 100644
--- a/evil-core.el
+++ b/evil-core.el
@@ -872,7 +872,8 @@ If ARG is nil, don't display a message in the echo area.%s" 
name doc)
                    (redisplay)))
                ,@body
                (run-hooks ',entry-hook)
-               (when (and arg (not evil-locked-display) ,message)
+               (when (and arg (not evil-locked-display)
+                          evil-echo-state ,message)
                  (if (functionp ,message)
                      (funcall ,message)
                    (evil-echo ,message))))))))
diff --git a/evil-vars.el b/evil-vars.el
index cbdd658..15074f4 100644
--- a/evil-vars.el
+++ b/evil-vars.el
@@ -149,6 +149,11 @@ which causes the parenthesis to be highlighted."
   :type 'function
   :group 'evil)
 
+(defcustom evil-echo-state t
+  "If non-nil (default), echo state in the minibuffer."
+  :type 'boolean
+  :group 'evil)
+
 (defcustom evil-complete-previous-func
   (lambda (arg)
     (let ((dabbrev-search-these-buffers-only (list (current-buffer)))
diff --git a/evil-visual.el b/evil-visual.el
index b72d00e..248063e 100644
--- a/evil-visual.el
+++ b/evil-visual.el
@@ -230,7 +230,7 @@ If MESSAGE is given, display it in the echo area."
     (evil-active-region 1)
     (setq evil-visual-region-expanded nil)
     (evil-visual-refresh type mark point)
-    (when (stringp message)
+    (when (and (stringp message) evil-echo-state)
       (evil-echo message))))
 
 (defun evil-visual-expand-region (&optional no-trailing-newline)
-- 
1.7.6.447.gb9176



_______________________________________________
implementations-list mailing list
[email protected]
https://lists.ourproject.org/cgi-bin/mailman/listinfo/implementations-list

Reply via email to