是否可以调用弹出'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
答案 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-buffers
(C-x C-b
)怎么办?它给出了一个缓冲列表,您可以从中选择要显示的缓冲区......