1

我在 Windows 机器上运行 GNU Emacs 23 并且在ido-find-file匹配包含空格的文件时遇到问题。

在我的 .emacs(setq ido-use-filename-at-point t)中,我想匹配一个字符串,比如"D:\Dokumente und Einstellungen\Username\Eigene Dateien\Scratch\ipswitch.bat"点击C-x C-f.

当点位于 和 之间时"D:\IDO 建议d:/Dokumente[Dokumente und Einstellungen],即空格上的模式“中断”。

我希望匹配和建议整个字符串(如果有必要,可能仅限于某些模式(如 org-mode))。

我怎样才能让它工作?

4

1 回答 1

0

我还没有找到 ffap/thingatpt 的解决方案,但是对于 ido-mode,init.el 中的以下代码可以创造奇迹。

我在带有 ido-mode 的 Windows 上使用 Gnu Emacs,并且发现更改 minibuffer 完成映射的乐趣:

;; EXPERIMENTAL: unbind SPACE and ? in minibuffer, to allow typing in completions with those chars
(add-hook 'minibuffer-setup-hook (lambda () 
                                   (define-key minibuffer-local-completion-map " " nil)
                                   (define-key minibuffer-local-must-match-map " " nil)
                                   (define-key minibuffer-local-completion-map "?" nil)
                                   (define-key minibuffer-local-must-match-map "?" nil)))

评论警告说它是“实验性的”,所以我可以在遇到奇怪行为的情况下扭转它。但是我已经使用了一年多了,没有任何问题。

现在当我做C-x C-f C:/Doc

ido模式建议 C:/Documents and Settings/

于 2011-02-23T16:24:06.130 回答