本篇文章介绍 vim 的一些使用技巧:html
在 vim 中,能够使用 :r !cmd
命令执行 shell 中的 cmd 命令,并把该命令的打印结果写入到当前光标的下一行。shell
例如,:r !date
命令执行 shell 的 date
命令,打印当前的时间,把这个打印结果写入到当前光标的下一行。vim
也能够在 r
命令的前面加上数字指定要写入到哪一行以后,而不是写入到当前光标的下一行。code
例如,:2r !date
命令是把打印结果写入到第二行的后面,也就是写入到第三行,原先第三行会挪到第四行,后面的内容依此类推。htm
注意:若是不加感叹号 !
,那么后面跟着的参数会被认为是文件名,若是存在该文件,会读取该文件内容,写入到当前光标的下一行。若是该文件不存在,则报错提示找不到文件。例如, :r date
命令是读取名为 date 的文件内容,写入到当前光标的下一行。ci
这里的 :r
是 :read
命令的缩写。cmd
在 vim 中,用 :help :r
命令查看 :r !cmd
和 :r name
命令的帮助说明。部分关键说明以下:it
:r[ead] [++opt] [name]
Insert the file [name] (default: current file) below the cursor.:{range}r[ead] [++opt] [name]
Insert the file [name] (default: current file) below the specified line.配置:[range]r[ead] !{cmd}
Execute {cmd} and insert its standard output below the cursor or the specified line.date
在 vim 中,能够使用 :TOhtml
命令来将当前文件转换出 html 格式文件。注意这个命令的大小写,不能写为 :tohtml
的形式。
:TOhtml
命令基于整个文件内容转成一个新的 html 文件,拆分新的 vim 水平窗口显示转换后的 html 文件内容。若有须要,能够自行修改文件内容作一些调整。最后,保存该 html 文件便可。
注意:这个 html 文件须要在 vim 中保存后才会生成本地文件,:TOhtml
命令并无直接生成本地的 html 文件,也不会修改原有文件自己的内容,而是生成新的 html 文件。
若是只是须要转某几行代码(例如30行到42行),则执行 :30,42TOhtml
命令。
若是当前 vim 配置成显示行号,所转换出来的 html 文件中也会带有行号。不想带有行号的话,能够在转换以前,先执行 :set nonu
命令设置为不显示行号。