在emacs 21中设置ido模式

时间:2011-09-15 09:33:32

标签: emacs ido-mode

我正在使用ido模式。和AIX上的GNUM emacs 21.1.1。 我在.emacs.d中添加了ido.el。并在.emacs文件中添加以下内容。

(load-file "~/.emacs.d/site-lisp/ido/ido.el")
(require 'ido)
(ido-mode t)
(setq ido-enable-flex-matching t) ;; enable fuzzy matching

启动emacs时,它会抱怨。而且没有偶像模式。 如何解决这个问题?

error: "Unknown req `min-colors' with options `(88)'"

To ensure normal operation, you should investigate the cause
of the error in your initialization file and remove it.  Start
Emacs with the `--debug-init' option to view a complete error
backtrace

回溯的内容

Debugger entered--Lisp error: (error "Unknown req `min-colors' with options `(88)'")
  signal(error ("Unknown req `min-colors' with options `(88)'"))
  error("Unknown req `%S' with options `%S'" min-colors (88))
  face-spec-set-match-display(((min-colors 88) (class color)) #<frame F1 0x201a3600\ >)
  face-spec-choose((((... ...) (:foreground "red1")) ((...) (:foreground "red")) (t (:underline t))) #<frame F1 0x201a3600\ >)
  face-spec-set(ido-subdir (((... ...) (:foreground "red1")) ((...) (:foreground "red")) (t (:underline t))) #<frame F1 0x201a3600\ >)
  custom-declare-face(ido-subdir (((... ...) (:foreground "red1")) ((...) (:foreground "red")) (t (:underline t))) "Face used by ido for highlighting subdirs in the alternatives." :group ido)
  (defface ido-subdir (quote (... ... ...)) "Face used by ido for highlighting subdirs in the alternatives." :group (quote ido))
  eval-buffer(#<buffer  *load*<2>> nil "~/.emacs.d/site-lisp/ido/ido.el" nil t)
  load-with-code-conversion("~/.emacs.d/site-lisp/ido/ido.el" "~/.emacs.d/site-lisp/ido/ido.el" nil nil)
  load("~/.emacs.d/site-lisp/ido/ido.el" nil nil t)
  load-file("~/.emacs.d/site-lisp/ido/ido.el")
  eval-buffer(#<buffer  *load*> nil "~/.emacs" nil t)
  load-with-code-conversion("~/.emacs" "~/.emacs" t t)
  load("~/.emacs" t t)
  #[nil "^H\205\227^@   Æ=\203^Q^@Ç^HÈQ\2025^@  É=\203'^@ÊÇËÌ#\203#^@Í\2025^@Î\2025^@   Ï=\2031^@Ð\2025^@Ç^HÑQ^ZÒ^SÓ\nÒ\211#\210^KÒ=\203F^@Ë^S^K\203\210^@Ô^K!Õ\232\203\210^@Ö^K!\211^\×P^]Ø^M!\203d$
  command-line()
  normal-top-level()

2 个答案:

答案 0 :(得分:0)

Emacs 21.1.1相当古老(21.1几乎在10年前发布)。升级到更新的版本,你应该没问题(除非它不再在AIX上构建?)很多人正在使用尚未最终的版本24,但23.3是当前的稳定版本。

ido也是Emacs的标准组成部分,所以你应该能够摆脱你的副本。

不可否认,采用这种方法可能会遇到其他升级不兼容问题,但随着时间的推移,这个问题肯定会变得更糟......

答案 1 :(得分:0)

我有同样的问题。我们正在升级到RHEL5,所以我假设我们很长时间都会使用emacs 21。幸运的是,EmacsWiki有一个指向older version的链接。它已经有十多年了,但它总比没有好。

似乎工作正常,但有些常量有不同的名称。例如,我已将ido-default-file-method设置为selected-window,但后者在旧版本的代码中被命名为same-window。