Closed gamaralf closed 9 years ago
What version of emacs are you using?
Also when do you require ergoemacs-mode?
If you can provide a very simple configuration, I can write a test to fix this issue and hopefully make sure it never reappears. Meanwhile you could downgrade to the latest stable.
From my "About Emacs (sorry I did not provide that information up front):
GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7) of 2014-03-07
on lamiak, modified by Debian
I noticed that the error void-variable ergoemacs-theme-comp-hash
is triggered by the function call:
(ergoemacs-theme-component my-theme01 ()
...
This should be defined after ergoemacs-mode
is loaded.
Anyhow, I have a fix that may avoid the error, but I'm unsure if the keys will be preserved unless they are after a statement like:
(require 'ergoemacs-mode)
The other thing to try is to delete all of the elc
files and try again.
Also you may wish to use
(add-hook 'ergoemacs-mode-hook
(lambda ()
(ergoemacs-require 'my-theme01)))
It works for me. It seems to pass this test as well.
Error setting custom-enabled-themes: (error Variable binding depth exceeds max-specpdl-size)
Did you get a back-trace?
I'm not sure, but the infinite loop could have been fixed in 3bb776dac76a6f6c40b756f334f4287c27d54cce
There is neither backtrace errors nor Message errors when I start with "--debug-init".
While I press "down-mouse-1", error appears
Wrong number of arguments: (lambda (rest) (interactive) (funcall (quote mouse-set-point) last-command-event)), 0 [7 times]
Mark set [4 times]
another other error is
string-match-p: Wrong type argument: stringp, nil
Error in post-command-hook (ergoemacs-map--modify-active): (wrong-type-argument stringp nil)
Mark set [3 times]
What version of emacs are you using. Outside of ergoemacs-mode, could you please let me know what the function (help-function-arglist 'mouse-set-point)
returns. For me, I get (arg1)
. I'm curious what you get.
after start, error in Messages is
Error in post-command-hook (ergoemacs-map--modify-active): (wrong-type-argument stringp nil)
Then I turn off ergoemacs-mode,
Ergoemacs mode disabled
string-match-p: Wrong type argument: stringp, nil
under emacs 24.4.1, (help-function-arglist 'mouse-set-point)
returns (&rest rest)
Under Emacs 24.4.1 GNU Emacs 24.4.1 (i686-pc-mingw32) of 2014-10-24 on LEG570, I get (arg1)
. There must be system differences in how mouse behavior is treated on different platforms.
I also get (stringp nil)
= nil
; Do you get (wrong-type-argument stringp nil)
? when you try to evaluate this?
I also saw a place where string-match-p
could possibly cause this issue. When I try (string-match-p "a" nil)
, I get they (wrong-type-argument stringp nil)
, so possibly, 1ecc2f905d817e7a8df082278070d0e0b8e84b13 will fix the issue.
My emacs version is GNU Emacs 24.4.1 (x86_64-pc-linux-gnu, GTK+ Version 3.14.9) of 2015-03-21 on kissel, modified by Debian
Now down-mouse-1
emits
apply: Wrong number of arguments: #[(ad--addoit-function event) "Ä
!Å=.Æ )" [ad-return-value ad--addoit-function event
major-mode nil calendar-mode calendar-update-mode-line] 2], 3
I evaluated (help-function-arglist 'mouse-set-point)
after starting emacs and disabling ergoemacs-mode
return (&rest rest)
Can you check to see what function is changing down-mouse-1
?
You can check by describe-function
. It should show some advice.
When you use describe-function, can you click through to the code. I get:
(defun mouse-set-point (event)
"Move point to the position clicked on with the mouse.
This should be bound to a mouse click event type."
(interactive "e")
(mouse-minibuffer-check event)
;; Use event-end in case called from mouse-drag-region.
;; If EVENT is a click, event-end and event-start give same value.
(posn-set-point (event-end event)))
which doesn't reflect what you are getting from your mouse-set-point
.
<down-mouse-1>
is a key (sorry if misunderstood you) , after I describe-key
,
<down-mouse-1> at that spot runs the command mouse-drag-region, which
is an interactive compiled Lisp function.
...
<mouse-1> at that spot runs the command mouse-set-point, which is an
interactive compiled Lisp function.
It is bound to <triple-mouse-1>, <double-mouse-1>, <mouse-1>.
(mouse-set-point EVENT)
:around advice: `ad-Advice-mouse-set-point'
...
ad-Advice-mouse-set-point is a compiled Lisp function.
(ad-Advice-mouse-set-point AD--ADDOIT-FUNCTION EVENT)
After-advice `calendar-update-mode-line'.
You must have the following package:
https://github.com/loochao/lch-emacs-v3/blob/master/site-lisp/xwl-elisp/cal-china-x.el
Or something similar...
However, I think the latest commit should work with advices...?
I tried a similar advice with emacs 24.4 and had similar outputs that you had. I have no problems with my mouse with the latest commit.
Thanks very much. my issue is solved.
Great. I will also assume it is solved for @gamaralf . For now, I'm closing the issue.
The following code stopped working some days ago after I updated ergoemacs via package manager.
I use ergoemacs-theme-component to alter some keyboard shortcuts.
I get the warning:
Symbol's value as variable is void: ergoemacs-theme-comp-hash
. If I start emacs with--debug-init
, I get thge error: