多窗口
c-x 2
下方窗口
c-x 1
回到单个窗口
c-x 3
右方窗口
c-x o
跳到其他窗口
c-x 0
关闭本身这个窗口
窗口之间可以再次细分为更小的窗口。
winner-mode
;; winner-mode
;; global minor mode that allows you to “undo” and “redo” changes in WindowConfiguration
(winner-mode 1)
运行之后,当我们 c-x 1
只保留一个窗口之后,c-c left
表示恢复以前的多窗口布局,c-c right
继续回到一个窗口。
windmove
;; windmove: s-left, s-up, s-right
(windmove-default-keybindings)
windmove 默认使用 s-up
, s-down
, s-right
等分别进入不同方向的窗口。
progn
当 use-package
init 阶段需要执行多条语句,就需要使用 progn 把多条语句框起来,作为一个整体来看待。
ace-window
这个可能内置的没有,别忘了 m-x package-refresh-content
刷新包。
;; ace-window: https://github.com/abo-abo/ace-window
;; progn: more than one command
(use-package ace-window
:ensure t
:init
(progn
(global-set-key [remap other-window] 'ace-window)
))
使用 ace-window
来代替原生的 other-window
,当 c-x o
的时候,每个 window 的左上角都会有一个数字标识,随后输入你想要的那个标识,就可以跳转到你想要的窗口了。
;; ace-window: https://github.com/abo-abo/ace-window
;; progn: more than one command
(use-package ace-window
:ensure t
:init
(progn
(global-set-key [remap other-window] 'ace-window)
(custom-set-faces
'(aw-leading-char-face
((t (:inherit ace-jump-face-foreground :height 3.0)))))
))
上面增加的这一段的作用,只是为了按 c-x o
的时候,各个窗口左上角的数字比较大而已。
参考:
Using Emacs - 5 - Windows
https://cestlaz.github.io/posts/using-emacs-5-windows/