问题
New to emacs. GNU Emacs 22.1.1 on OSX. Installed evil as per instructions. I get:
Symbol's function definition is void: declare-function
emacs --debug-init gives:
Debugger entered--Lisp error: (void-function declare-function)
(declare-function evil-visual-state-p "evil-visual")
eval-buffer(#<buffer *load*<3>> nil "/Users/rahul/.emacs.d /evil/evil-repeat.el" nil t) ; Reading at buffer pos$
load-with-code-conversion("/Users/rahul/.emacs.d/evil/evil- repeat.el" "/Users/rahul/.emacs.d/evil/evil-repeat.el$
require(evil-repeat)
eval-buffer(#<buffer *load*<2>> nil "/Users/rahul/.emacs.d /evil/evil.el" nil t) ; Reading at buffer position 1$
load-with-code-conversion("/Users/rahul/.emacs.d/evil/evil.el" "/Users/rahul/.emacs.d/evil/evil.el" nil t)
require(evil)
eval-buffer(#<buffer *load*> nil "/Users/rahul/.emacs" nil t) ; Reading at buffer position 122
load-with-code-conversion("/Users/rahul/.emacs"
"/Users/rahul/.emacs" t t)
load("~/.emacs" t t)
#[nil "^H\205\276^@ \306=\203^Q^@\307^H\310Q\202A^@ \311=\2033^@\312\307\313\314#\203#^@\315\202A^@\312\307\31$
command-line()
normal-top-level()
My .emacs has:
;;; Emacs Load Path
(setq load-path (cons "~/bin" load-path))
(add-to-list 'load-path "~/.emacs.d/evil")
(require 'evil)
(evil-mode 1)
(require 'undo-tree)
回答1:
Emacs 22.1 is now old (mid-2007). You want either the latest 23.x or the latest 24.x pre-test from http://emacsformacosx.com/
来源:https://stackoverflow.com/questions/8831400/symbols-function-definition-is-void-declare-function