Emacs 带键盘的鼠标缓冲菜单

Emacs 带键盘的鼠标缓冲菜单,emacs,Emacs,是否可以调用弹出的图形菜单(在我的例子中,该菜单被分配给”[C-down-mouse-1]),而不实际点击鼠标?当我调用M-x鼠标缓冲区菜单时emacs告诉我 execute-extended-command: mouse-buffer-menu must be bound to an event with parameters 有可能产生这样的事件吗 我想要的是一个列表(即一个图形弹出菜单),在这里我可以通过使用向上/向下键选择一组打开的缓冲区来进行选择。我很清楚缓冲区菜单,但不幸的是,它只

是否可以调用弹出的图形菜单(在我的例子中,该菜单被分配给
”[C-down-mouse-1]
),而不实际点击鼠标?当我调用
M-x鼠标缓冲区菜单时
emacs告诉我

execute-extended-command: mouse-buffer-menu must be bound to an event with parameters
有可能产生这样的事件吗

我想要的是一个列表(即一个图形弹出菜单),在这里我可以通过使用向上/向下键选择一组打开的缓冲区来进行选择。我很清楚
缓冲区菜单
,但不幸的是,它只提供了所有缓冲区的只读列表,没有选择缓冲区的选项

亲切问候,,
mefiX

在做了一些挖掘和播放之后,我创建了一个事件,并将其传递到
鼠标缓冲区菜单

您可以使用列表中的数字来达到所需的效果

(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)
查看emacs手册节点以了解事件列表的结构

作为旁注,您是否考虑过缓冲区选择的备选方案,例如或使用类似于
bs show
的方法来选择缓冲区:

(global-set-key "\C-x\C-b" 'bs-show)
使用
a
切换所有缓冲区

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


有点晚了:
列出缓冲区(
C-xc-b
)怎么样?它提供了一个缓冲区列表,您可以从中选择要显示的缓冲区…

太好了!非常感谢你!另外,我还使用tabbar.el在缓冲区之间切换。但在工作中,我发现我经常使用C-mouse-1作为鼠标缓冲区菜单,但切换到鼠标让我很紧张:)