最近开始使用emacs,也替emacs写了一个小小的plugin smart-window.el
https://github.com/dryman/smart-window.el
我自己原本是vim的重度使用者,其中最常用的功能之一就是在不同视窗及tab当中切换
转换到emacs时除了快速键让我觉得很难记之外,最想念的就是vim视窗的功能
网络上没有找到别人写过类似的模组,就卷起袖子自己跳下去写
所幸emacs文件很齐全,花个三天就把模组加文件完成了
目前支援的功能有:
M-x smart-window-move
M-x smart-window-buffer-split
M-x smart-window-file-split
M-x smart-window-rotate
M-x sw-above
M-x sw-below
M-x sw-left
M-x sw-right
快速键则是
C-x w => smart-window-move
C-x W => smart-window-buffer-split
C-x M-w => smart-window-file-split
C-x R => smart-window-rotate
C-x 2 => sw-below
C-x 3 => sw-right
* * *
会想要写这模组的动机是,在emacs中你很难将视窗改变位置
例如左边的视窗要移到右边,小视窗要变成大视窗等等
你必须要切换到那个视窗,然后再从buffer list中选取你要的buffer
再切到另一个视窗,重复步骤选取buffer
vim 就方便的多:C-w加上大写的HJKL就可以轻松的重组视窗
叫出新的视窗并让内容是指定的档案,也只需要:sp <FILE>即可
vim 也有window rotate还有切换成tab等等的东能
除了tab实作起来真的不容易外,其他我常用的功能我都搬上emacs了
重组视窗是smart-window-move
切割视窗并选取buffer现在一个步骤就可以完成
还有window-roate
快速键没多少选择,有更好的建议的话还请大家回馈意见