带键盘的鼠标缓冲菜单

时间:2010-10-25 08:55:53

标签: emacs

是否可以调用弹出'mouse-buffer-menu的图形菜单(在我的情况下分配给'[C-down-mouse-1])而不实际敲击鼠标?当我调用M-x mouse-buffer-menu时,emacs告诉我

execute-extended-command: mouse-buffer-menu must be bound to an event with parameters

是否有可能产生这样的事件?

我想要的是一个列表(即图形弹出菜单),我可以通过使用向上/向下键选择它们来在开放缓冲区集之间进行选择。我很清楚buffer-menu,但遗憾的是,它只提供了所有缓冲区的只读列表,而无需选择一个缓冲区。

亲切的问候, mefiX

2 个答案:

答案 0 :(得分:4)

在做了一些挖掘和游戏后,我创建了一个事件并将其传递给mouse-buffer-menu

您可以使用列表中的数字来播放所需的效果。

(setq my-dummy-event `(mouse-1 (,(selected-window) 0 (0 . 0) 0 nil 0 (0 . 0) nil nil nil) 1))

(mouse-buffer-menu my-dummy-event)

查看Click Events的emacs手册节点,了解事件列表的结构。

作为旁注,您考虑了缓冲区选择的替代方法,例如ido或使用bs-show之类的东西来选择缓冲区:

(global-set-key "\C-x\C-b" 'bs-show)

使用a切换所有缓冲区。

你也可以在这里找到更好的选择:

答案 1 :(得分:0)

有点晚了:list-buffersC-x C-b)怎么办?它给出了一个缓冲列表,您可以从中选择要显示的缓冲区......