在 Gnu Emacs 中,如何设置全局键来切换菜单栏?

在 Gnu Emacs 中,如何设置全局键来切换菜单栏?

在 Ubuntu 10.04 上使用 Gnu Emacs 23.1.1...

我决定彻底放弃 Gnome 菜单栏。 (但我确实希望它在出牙过渡期“可用”......温热的火鸡?:)

所以我想知道如何分配一个键来打开/关闭它。

我目前正在全屏模式下启动 Emacs,没有菜单栏和工具栏,我正在尝试使用选项卡栏(在 X 中时,但不在终端中时)..

我几乎已经习惯了,但我发现有时没有菜单栏我会感到完全迷失...我读过没有 GUI 设备的 Emacs 是可行的方法..并且我相信它!...范例冲突..

但现在我想要一个菜单​​栏切换,看看它是如何完成的将是很好的体验。

答案1

如果您只想切换菜单栏,已经有一个命令 ( M-x menu-bar-mode)。要将其绑定到密钥,您需要执行以下操作:

(global-set-key (kbd "<f5>") 'menu-bar-mode)

如果你想同时切换菜单和工具栏,你可以这样做:

(defun toggle-menu-toolbar-modes ()
  (interactive)
  (tool-bar-mode (menu-bar-mode)))
(global-set-key (kbd "<f5>") 'toggle-menu-toolbar-modes)

这可能值得一看Emacs 常见问题解答(也由 发现C-h C-f)。另外,SOEmacs 的信息页面有很多很好的链接。

答案2

我是这样做的。

;; Disable menubar by default
(menu-bar-mode -1)
(tool-bar-mode -1)
(defun toggle-top-menu ()
  "Run toggle-menu-bar-mode-from-frame and toggle-tool-bar-mode-from-frame"
  (interactive)
  (menu-bar-mode (if tool-bar-mode -1 1))
  (tool-bar-mode (if tool-bar-mode -1 1)))
(global-set-key (kbd "<f3>") 'toggle-top-menu)

它解决了 @rofrol 在评论中提出的函数只能工作一次的问题

相关内容