vim的使用

Posted 漂亮姐姐1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim的使用相关的知识,希望对你有一定的参考价值。

vi和vim的区别

vim是一个比vi更高级的文本编辑器,自带语法高亮显示功能,给脚本编写提供了很大的帮助,vi好比是windows上的记事本,vim好比是notepad++,功能丰富。


vim/vi编辑文件原理

  1. 输入vi/vim $文件命令,回车
  2. 判断编辑的文件所在目录中是否有该文件的临时文件(.$文件名.swp文件)
    拥有:显示提示信息(用户可选择恢复文件/删除临时文件/继续编辑/退出编辑)
    没有:进入到命令模式
  3. 进入到文件后,会在当前目录下生成临时文件 — 可同时用另一shell查看
  4. 编辑完成之后需要确定是否正常保存退出
    正常退出:从编辑状态到 – esc – 命令模式 – wq 保存退出(将临时文件重命名为当前文件名并覆盖当前文件)
    非正常退出:临时文件会永久保留 — 例如:当文件编写一半远程连接突然中断会出现这种情况

vim特有功能

  • 批量修改文件内容

    1.ctrl+v: 进入视图模式
    2.上下选中要编辑的行
    3.大写字母 I :进行单行编辑完成 — esc — 多行同步编辑完成

  • 批量删除信息

    1.ctrl + v进入视图模式
    2.上下左右选中要删除的列
    3.按d/x,批量删除

  • 拼写检查

    :set spell – 移动光标到错误处 输入 z= 显示修改建议

  • 分割窗口
    : split — 水平分割窗口(vi中也有此功能)
    : vsplit ---- 竖直分割窗口
    : wall — write all全部保存
    使用ctrl + w 可以在两个窗口之间切换


vi/vim 进阶使用

快速编辑

  • 将2-4行的内容移动到第9行后

    :2,4move9

  • 将2-4行的内容复制到第9行后

    :2,4copy9

  • 文件信息替换

    %s#$原来的#$替换后的#g — %表示匹配所有行,g表示匹配到所有的
    %s#$原来的#$替换后的# — 替换每一行的一个
    %2,4s#$原来的#$替换后的#g — 仅替换2-4行中的内容
    12,$s#$原来的#$替换后的#g — 将12行到结尾的内容进行替换
    s substitude — 替换
    g global — 将整行符合要求的字符都做替换

移动光标

在当前显示可见区域移动

H — 将光标移动到当前可见页面的顶部(High)
M — 将光标移到当前可见页面的中间(Middle)
L — 将光标移动到当前可见页面的底部(Low)

按段落/句子移动

{ — 移动到上个段落的开头
} — 移动到下个段落的开头
( — 移动到上个句子的开头
) — 移动到下个句子的开头

按页移动

ctrl+u — 向上移动半页
ctrl+d — 向下移动半页
ctrl+b — 向上移动一页
ctrl+f — 向下移动一页

隐藏快捷键

ctrl + a — 光标移动到离光标最近的数字并将数字加1
shift + 3 — 全字段匹配光标所在的单词

以上是关于vim的使用的主要内容,如果未能解决你的问题,请参考以下文章

vim代码片段插件ultisnips的使用

从零开始配置vim(27)——代码片段

从零开始配置vim(27)——代码片段

从零开始配置vim(27)——代码片段

如何使用sublime代码片段快速输入PHP头部版本声明

Sublime text3最全快捷键清单