设置 emacs 窗口全局键

设置 emacs 窗口全局键

我让 emacs 全屏运行终端,并将其分成 4 个大小相同的窗口。C-x o我不想使用 转到另一个窗口,而是想硬编码命令以转到每个窗口。

也许我可以执行如下命令:

  1. C-w C-i-- 左上角的窗口
  2. C-w C-o-- 右上角的窗口
  3. C-w C-k-- 左下方窗口
  4. C-w C-l-- 右下方窗口

  5. 我可以向我的文件添加什么~/.emacs来设置 4 个全局键命令来在所有 4 个屏幕之间切换,如上所示?

答案1

您可以编写一个类似的简单函数并设置键绑定。

(defun select-nth-window (n)
  "Focus Nth window"
  (interactive)
  (set-frame-selected-window (selected-frame)
                 (frame-first-window))
  (set-frame-selected-window (selected-frame)
                 (nth n (window-list))))

(global-set-key (kbd "C-w C-i") '(lambda ()
                   (interactive)
                   (select-nth-window 0)))
(global-set-key (kbd "C-w C-o") '(lambda ()
                   (interactive)
                   (select-nth-window 2)))
(global-set-key (kbd "C-w C-k") '(lambda ()
                   (interactive)
                   (select-nth-window 1)))
(global-set-key (kbd "C-w C-l") '(lambda ()
                   (interactive)
                   (select-nth-window 3)))

编辑: 我不知道如何保存窗口布局,但是Emacs Wiki:会话管理可能会对你有帮助。

您还可以从以下网址了解有关 emacs lisp 的更多信息Emacs Lisp 编程简介Emacs Lisp 参考手册

相关内容