Vim实践与学习-07显示相关

vi 有时候可以用特殊的方式来显示你编辑的文件,例如多个窗口等。这里就将这类相关的命令集中了。

让vi显示多个窗口(多缓冲区)

水平分割当前窗口

输入 :split

或输入 :sp

这样窗口会分为上下两部份,可以继续分割;之后在某一个窗口下,可以用 :n filename 或者 :e filename 在这个窗口内载入新文件。

垂直分割当前窗口

输入 :vsplit

这样窗口会分为左右两部份,可以继续分割;之后在某一个窗口下,可以用 :n filename 或者 :e filename 在这个窗口内载入新文件。

一次打开多个窗口

输入 vi -on file1 file2

这里只用两个文件举例,同时打开file1和file2,打开的窗口按水平方向分为上下两部份。

在多窗口内操作

在上次和本次窗口间切换

输入 [Ctrl]w w

跳到左边的窗口

输入 [Ctrl]w h

或输入 [Ctrl]w [Left]
最后一个键表示移动方向,和移动光标类似。

跳到右边的窗口

输入 [Ctrl]w l

或输入 [Ctrl]w [right]

最后一个键表示移动方向,和移动光标类似。

跳到上边的窗口

输入 [Ctrl]w k

或输入 [Ctrl]w [up]

最后一个键表示移动方向,和移动光标类似。

跳到下边的窗口

输入 [Ctrl]w j

或输入 [Ctrl]w [down]

最后一个键表示移动方向,和移动光标类似。

扩大当前水平窗口

输入 [Ctrl]w +

这里‘+’前面可以加输入一个数字,表示迭代次数。

缩小当前水平窗口

输入 [Ctrl]w -

这里‘-’前面可以加输入一个数字,表示迭代次数。

扩大当前垂直窗口

输入 [Ctrl]w >

这里‘>’前面可以加输入一个数字,表示迭代次数。

缩小当前垂直窗口

输入 [Ctrl]w <

这里‘<’前面可以加输入一个数字,表示迭代次数。

最大化当前水平窗口

输入 [Ctrl]w _

最大化当前垂直窗口

输入 [Ctrl]w |

平分窗口

输入 [Ctrl]w = 。

水平分割窗口

输入 [Ctrl]w s .

垂直分割窗口

输入 [Ctrl]w v .

退出当前窗口

输入 :q .

退出并保存当前窗口

输入 :wq .

退出全部窗口

输入 :qa .

退出并保存全部窗口

输入 wqa .

移动窗口

上下左右移动窗口位置的命令,是CTRL-W J/K/H/L (:help CTRL-W_H, …)。前提是开了多个窗口(:split或:vsplit)。注意,这里的H, J, K, L是大写的,小写的则表示移动到相应的窗口里面了.

将窗口移动到左面

输入 [Ctrl]w H .

将窗口移动到右面

输入 [Ctrl]w L .

将窗口移动到上面

输入 [Ctrl]w K .

将窗口移动到下面

输入 [Ctrl]w J .

颜色相关

改变颜色主题(为evening)

输入 color evening

或输入 colorscheme evening

改变主题颜色为默认

输入 color default

或输入 colorscheme default

pages tab标签打开多文件

自从Vim发布7.0之后, 就开始支持标签或者叫标签页. 不像其它程序中的普通标签, Vim的标签页就像是将你打开的文件分组的一种方法. 每个标签能够保存几个打开的缓冲, 并且也能同时处理几个窗口. 实际上一个标签中用 yy 在另一个page中也可以p上去的。这里给出常用命令,更多帮助可以查看:help tabpage。

启动的时候为每一个文件打开新的page

输入 vi -p file1 file2

注意:这里file1,file2是文件。

打新page

输入 tabnew

在当前tab page的后面打开一个新的空窗口的tab page.

打新page并且编辑file

输入 tabnew file

打开新page并执行命令

输入 [count] tab {cmd} .

这里,新的tabpage在后面第[count]个page上面出现, :0tab {cmd} 将会在第一个位置得到一个新的标签.
:tab split 使用一个新的标签页打开当前的缓存,即把split的分割窗口放到两个pages里面了。

:tab help gt 打开一个tab page 同时执行了 :help gt 命令.

打开新page,并编辑在cursor下的文件

输入 CTRL-W gf

关闭tab page

当关闭最后一个窗口的时候也会关闭这个标签页命令如下。

关闭当前page

输入 :tabclose!

这里加'!'是强制关闭不管保存了,tabclose可以简化为tabc,实践发现 :q 也行。

关闭编号为{count}的page

输入 :tabclose count

或输入 :tabclose! count

这里加'!'是强制关闭不管保存了,tabclose可以简化为tabc。

关闭除了自身的其他pages

输入 tabonly

或输入 tabonly!

这里加'!'是强制关闭不管保存了,tabonly可以简化为tabo。

切换到另外page

切换到下一个page

输入 gt

或输入 :tabnext

或输入 [Ctrl]PageDown

这里,tabnext可以简化为tabn,都是循环切换的最后一个之后就是第1个(第3个方法好像不管用?)。

切换到第{count}号page

输入 {count}gt

或输入 :tabnext {count}

或输入 {count}[Ctrl]PageDown

这里,tabnext可以简化为tabn,第一个page是1,都是循环切换的(第3个方法好像不管用?)。

切换到上一个page

输入 gT

或输入 :tabprevious

或输入 :tabN[ext]

或输入 [Ctrl]PageUp

这里,tabprevious可简化为tabp,tabNext可简化为tabN,没有tabP,切换循环,第1个之后就是最后一个(第4个方法好像不管用?).

切换到前{count}个page

输入 {count}gT

或输入 :tabprevious{count}

或输入 :tabNext{count}

或输入 {count}[Ctrl]PageUp

也就是后退{count} page,也是循环的,tabprevious可简化为tabp,tabNext可简化为tabN(第4个方法好像不管用?)。

去第一个page

输入 :tabfirst

这里tabfirst可简化为tabfir。

去最后一个page

输入 :tablast

这里tablast可简化为tabl。

列出所有pages它们包含的windows

输入 :tabs

这里结果中 > 是当前的window, + 是被修改的缓存。

移动当前page到第N个后面

输入 tabmove[N]

这里,tabmove可以简化为tabm使用0表示移动当前page成为第1个,不使用N表示当前page成为最后一个。

在每一个page 中执行命令{cmd}

输入 :tabd[o] {cmd}

注意的是:它只执行每个page的当前窗口,如果有一个窗口出现了错误,那么就中断后面的访问。

这里,tabdo可以简化为tabd。

文件浏览

在vim 7.0以前,文件浏览功能由explorer.vim插件提供,在vim 7.0中,这个插件被netrw.vim插件所代替。这里说得是netrw.vim插件。使用vim尝试打开目录时,vim会自动调用netrw.vim插件打开该目录。

打开当前文件的目录

输入 :E

水平分割窗口,并打开当前文件目录

输入 :He

或输入 :Se

垂直分割窗口,并打开当前文件目录

输入 :Ve

在前一个窗口打开文件

输入 :P

这里,假设光标在目录的某一个文件上面,则在上次打开的窗口打开该文件(适合多文件窗口).

新开一个垂直窗口,打开该文件

输入 :v

假设光标在目录的某一个文件上面,则新开一个垂直窗口,打开该文件。

新开一个水平窗口预览文件

输入 :p

假设光标在目录的某一个文件上面,新开一个水平窗口预览文件,光标仍在该目录中,如果换其他文件再按p则仍在上面的预览窗口中显示新文件

新开一个标签打开文件

输入 :t

假设光标在目录的某一个文件上面,新开一个标签打开文件。

以不同模式显示目录中文件

输入 i

这里,直接输入i就以不同的模式循环切换显示目录中的文件,如树型,列表等等。

更多的命令查看帮助

输入: [F1]

下面,列出一些简短的常用操作:

> 显示帮助  
> 如果回车,光标下为目录,则进入该目录;光标下是文件,则打开该文件  
> -           返回上级目录  
> c           切换vim的当前工作目录为正在浏览的目录  
> d           创建目录  
> D           删除文件或目录  
> i           切换显示方式  
> R           改名文件或目录  
> s           选择排序方式  
> x           定制浏览方式,使用你指定的程序打开该文件

关于历史窗口

打开命令历史

输入 q: .

这样,就可以打开命令历史窗口,查看以前输入过的命令行命令(就是在 : 提示符号后面输入的命令)。选择其中的任何一个回车,相应的命令都会被执行。在最后一个空行上面回车就退出相应窗口。

打开查找历史

输入 q/ .

这样,就可以打开查找历史窗口,查看以前查找过的字符串。选择其中的任何一个回车,相应的查找都会被执行。在最后一个空行上面回车就退出相应窗口。

你可能感兴趣的:(Vim实践与学习-07显示相关)