vim各种命令深度解析

上传人:xh****66 文档编号:57175101 上传时间:2018-10-19 格式:DOC 页数:9 大小:33.08KB
返回 下载 相关 举报
vim各种命令深度解析_第1页
第1页 / 共9页
vim各种命令深度解析_第2页
第2页 / 共9页
vim各种命令深度解析_第3页
第3页 / 共9页
vim各种命令深度解析_第4页
第4页 / 共9页
vim各种命令深度解析_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《vim各种命令深度解析》由会员分享,可在线阅读,更多相关《vim各种命令深度解析(9页珍藏版)》请在金锄头文库上搜索。

1、VIM 离开和回来离开和回来* *21.121.1* * 挂起和继续挂起和继续像多数 Unix 程序一样,Vim 可以按 CTRL-Z 挂起。这个动作把 Vim 停下来, 并让你回到那个你启动 Vim 的命令 shell 里。接着,你可以执行任何别的命 令直到你觉得无聊为止。然后再用 “fg“ 命令回到 Vim。CTRL-Zany sequence of shell commandsfg你正好回到那个当初你离开 Vim 的地方,什么也没改变。当你按 CTRL-Z 行不通时,你还可以用命令 “:suspend“。别忘了把 Vim 引 导回前台,否则你会失去你所有的修改!只有 Unix 支持这个功

2、能。在其它系统上 Vim 将为你启动一个 shell。这也让 你得以执行 shell 命令。可那是一个新 shell,而非你在其中启动 Vim 的那 个。当你运行图像用户界面时,你无法返回那个 Vim 从其中启动的 shell。CTRL-Z 的作用只是把 Vim 窗口最小化。* *21.221.2* * 执行执行 shellshell 命令命令从 Vim 内部执行单个 shell 命令,用 “:!command“。例如,要显示目录表:!ls /用在 Unix 上:!dir 用于微软视窗。Vim 将执行该程序。当它结束时,你会得到提示,让你击打 。这提 示允许你,在回去编辑你的文本之前看一看该命

3、令的输出。字符 “!“ 也用在其它有个程序被调用运行的场合。让我们看一看共有哪些:!program 执行 program:r !program 执行 program 并读取其输出:w !program 执行 program 传送文本至其输入:range!program 经由 program 过滤文本注意 “!program“ 前面那个作用区产生的区别可大了。不附带作用区,这个 程序就跟通常一样被执行,而加了这个作用区,作用区内的文本行就经由该程序过滤而出。用这种方法执行一系列命令也是可以的。但 shell 在此却更胜一筹。你可以用 这种方法启动一个新的 shell:shell这有点类似于用 C

4、TRL-Z 来挂起 Vim。不同之处在于这种方法启动的是一个新 shell。使用图像用户界面时,这个 shell 利用 Vim 的窗口作为其输入和输出端口。 既然 Vim 并非终端仿真器,所以使用中未必尽善近美。要是你遇到麻烦,试试 切换 guipty 选项。如果这方法仍不奏效,那就只好启动一个新的终端来运 行 shell。例如:!xterm&* *21.321.3* * 记忆有关信息;记忆有关信息;viminfoviminfo在你编辑了一会儿文件以后,你就会有些文本储存在寄存器内,有些标记指向 各种各样文件,还有一些精妙的命令保存在命令行历史记录内。当你退出 Vim,所有这些就全没了。 但不

5、用担心,你能够把它们找回来!信息文件 viminfo 设计用来储存状态信息:命令行和模式搜索的历史记录寄存器内文本各种文件的标记缓存器列表全局变量你每次退出 Vim,它就把此种信息存放在一个文件内。即 viminfo 信息文件。 当 Vim 重新启动时,就读取这个信息文件,而那些信息就被还原了。选项 viminfo 的默认设定是还原有限的几种信息。你也许希望设定它记住更 多的信息。下面这个命令可以办到:set viminfo=string其中字符串 “string“ 规定了什么要储存。该字符串的语法为一个选项字符跟一个参数。选项和参数组成的对子之间由逗号分隔。来看一下你可以怎样构建你自己的 v

6、iminfo 字符串。首先,选项 用于规 定你为多少个文件保存标记 (a-z)。为此选项凑一个整数就行 (比如 1000)。 你的命令现在看起来像这样:set viminfo=1000选项 f 控制是否要储存全局标记 (A-Z 和 0-9)。如果这个选项设为 0,那么 什么也不存储。如果设为 1,或你对 f 选项不作规定,那么标记就被存储。你 要这个功能,现在你有了:set viminfo=1000,f1选项 控制着每个寄存器内保存几行文本。默认情况下,所有的文本行都被保 存。如果设为 0,则什么也不保存。为了避免成千上万行文本被加入你的信息 文件 (那些文本可能永远也没用,徒然使 Vim 启

7、动得更慢),你采用 500 行的 上限:set viminfo=1000,f1,500你也许用得着的其它选项: 保存命令行历史记录内的行数 保存输入行历史记录内的行数/ 保存搜索历史记录内的行数r 可移介质,其上的文件不保存标记 (可用多次)! 以大写字母开头并且不含有小写字母的全局变量h 启动时关闭选项 hlsearch 高亮显示% 缓冲区列表 (只有当不带参数启动 Vim 时才用来恢复)c 用编码 encoding 转换文本n 用于 viminfo 文件的名称 (必须为最后一项选项)欲知更多详情,参见 viminfo 选项以及 |viminfo-file|。当你多次运行 Vim,最后退出的

8、那个就把信息储存起来。这可能导致以前退出 的那些 Vim 所存放的信息流失,因为每个条目只能被记住一次。重 返 原 处你编辑一个文件到一半,但你得下班去度假了。你退出 Vim 就去享受你的人生, 把你那些工作忘得干干净净。两个星期以后你启动 Vim,键入:0你正好回到当初离开 Vim 的地方。所以你就把你的工作接着做下去。你每次退出 Vim,它都创建一个标记。最后那个是 0。原来那个 0 所指 的位置就成了 1。而原来那个 1 就成了 2,依此类推。而原来的标记 9 就没了。要发现标记 0 至 9 指向何处,|:marks| 命令很有用。Vim 间 信 息 移 动在 Vim 仍然运行的情况下,

9、你可以用命令 “:wviminfo“ 和 “:rviminfo“ 来保 存和还原信息。这很方便,比如在两个同时运行的 Vim 之间交换寄存器内容。 在第一个 Vim 里执行:wviminfo! /tmp/viminfo而在第二个 Vim 里执行:rviminfo! /tmp/viminfo很明显,字符 “w“ 指 “写“ 而字符 “r“ 指 “读“。“:wviminfo“ 用字符 ! 来强制重写一个已存在文件。如果省略而文件却存 在,那么这些信息就跟那个文件合并到一起。用于 “:rviminfo“ 的 ! 字符意味着所有的信息都被采用,这可能会重写一 些已存在信息。若不用 ! 字符,则只有那些

10、尚未设定的信息才会被采用。这些命令也可以用来储存信息为将来所用。你可以让一个目录专门存放信息 文件,而每一个所包含的信息各有其特殊的目的。* *21.421.4* * 会话会话假定你编着编着,编到那一天要结束了。你想放下手上的工作,而于第二天再 从你停下来的那地方继续编下去。你可以做到这一点,只要把你的编辑会话保 存起来,第二天再把它还原回来。Vim 会话存放着所有跟你的编辑相关的信息。这包括诸如文件列表、窗口布 局、全局变量、选项、以及其它信息。(究竟什么信息被记住,则由选项 sessionoptions 控制,稍后叙述。)下面这个命令创建一个会话文件:mksession vimbook.v

11、im如果你以后要还原这个会话,你可以用这个命令:source vimbook.vim如果你要启动 Vim 并还原某个特别的会话,你可以用下面这个命令:vim -S vimbook.vim这命令告诉 Vim 在启动时读取一个特定的会话文件。参数 S 指会话 (实际 上,你可以用 -S 运行任何 Vim 脚本,因而,你也不妨指其为运行脚本, “source“)。那个曾经打开的窗口就还原了,跟以前一样的位置和大小。映射和选项值也像 以前一样。 究竟还原了什么取决于 sessionoptions 选项。默认值为 “blank,buffers,curdir,folds,help,options,wins

12、ize“。blank 保留空窗口buffers 所有缓冲区,而非仅仅一个窗口内的curdir 当前目录folds 折叠,包括人工创建的help 帮助窗口options 所有选项和映射winsize 窗口大小你爱怎么改就怎么改。例如,除了上述项目以外,你还要还原 Vim 窗口大小:set sessionoptions+=resize会 话 用 法最显而易见的会话用法,是在编辑属于不同项目的文件时。假定你把会话文件 都储存在目录 “/.vim“ 下。你正编辑着项目 “secret“ 的文件,而你必须切 换到项目 “boring“ 的文件上:wall:mksession! /.vim/secret.

13、vim:source /.vim/boring.vim首先用命令 “:wall“ 把所有修改过的文件存盘。然后用命令 “:mksession!“ 保存当前会话。它重写了前一次会话文件。下一次载入 “secret“ 会话时,你 便可以在原来那一点上接着编辑下去。最后,你载入新的 “boring“ 会话。如果你打开帮助窗口,分割和关闭各种各样窗口,或者一般来说把窗口布局搞 砸了,此时你可以恢复上次保存的会话:source /.vim/boring.vim你因而享有充分的控制权,要么把当前会话中的设置保存起来,以便下一次编 辑时从现在这个位置接着编下去,要么保留会话文件不变,一切都从那儿开始。另一种

14、会话用法是你创建了一种你喜欢的窗口布局,并把它保存在一个会话 文件中。然后你可以在任何时候恢复这种窗口布局。例如,这是一个使用起来很不错的布局:+-+| VIM - main help file | |Move around: Use the cursor keys,or “h|help.txt=|explorer | |dir | |dir | |file | |file | |file | |file | |/=|No File=| |+-+其顶部有个帮助窗口,使你能够阅读本文。左边那个狭长窗口相当于一个文件 浏览器。这是一个 Vim 插件,用来表列一个目录的内容。你可以在那儿挑选文 件来编辑。有关这一点,下一章有更多叙述。从一个刚刚启动的 Vim 创建这样一个布局,请用:helpCTRL-W w:ver

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号