写完代码想测试一下,是保存并退出后运行还是另开terminal?不,这都太麻烦了!
有人用tmux来实现多terminal,选择其中一个打开vim,另一个做其他事。这当然是可以的。不过,还要装tmux,是不是?还要学学怎么用tmux,是不是?如果用的是GVim,那咋办呢?
自从vim 8.1版本后,支持了一个新的命令:
:ter
就是terminal的意思,默认是在vim中打开一个shell。详细内容参看:
:help :ter
暂时关闭/隐藏这个terminal窗口,而不希望shell中的工作被杀死,或者一些东西消失(就比如当前进入的某个及其深的目录,或者activate的某个conda环境):按Ctrl+w
并输入:hide
;要恢复这个隐藏了的窗口,需要先知道它在哪个buffer::ls
,然后根据buffer的序号,比如2::buffer 2
。需要注意的是,:buffer
会在当前窗口打开这个buffer,所以最好先split
或vsplit
一个新的窗口。
关闭这个terminal:[Ctrl+w]:quit!
,要加!
,因为vim认为这个工作没有结束,不能这么轻易地关了。
以特定高度/行数打开:
:ter ++rows=2