3

我想在 emacs 中通过两次击键打开我最喜欢的五个(左右)文件。我在想文件 a 用 F9-a,文件 b 用 F9-b,等等。

我在 F5 有 org-mode 议程(而不是“默认”Ca),所以我按 F5-a 作为今天的议程。我希望我的 org 文件、我的联系人文件等也有相同的内容。

有没有办法(或者更确切地说:有什么办法)让 F9 打开一个子菜单,其中包含我最喜欢的文件列表,以便用另一个按键选择?

4

2 回答 2

6

此设置可以满足您的要求,至少在键盘映射方面。它实际上并没有弹出菜单。

(setq my-file-menu-keymap
      (let ((keymap (make-sparse-keymap)))
        (dolist (pair '(("a" . "~/.emacs")
                        ("b" . "~/.phones")
                        ("c" . "~/org/daily.org")))
          (define-key keymap (car pair)
            `(lambda () (interactive) (find-file ,(cdr pair)))))
        keymap))

(global-set-key (kbd "<f9>") my-file-menu-keymap)

我使用一个键来循环浏览我最喜欢的文件(适用于少量文件,我不关心随机访问)。您可以在this answer to a different SO question中找到相应的代码(请参阅cycle-special-files)。

于 2012-04-16T18:26:22.480 回答
1

使用允许您从最近的文件中完成文件名的包,您可能会获得更好的结果。这不像将文件名显式绑定到键那样静态,并且您可以使用此方法轻松访问最近使用的文件,而不仅仅是 5。

于 2012-04-16T19:02:58.620 回答