vimtutor
跟着 [[@如何提高编程速度:Emacs高手教授轻松精通所有编辑器和IDE的秘诀]] 学习 vim 官方教程的记录。
第二讲
删除类命令 d mention
d
删除操作符mention
对应操作符的操作对象dw
删除到下一个单词开头de
删除到本单词末尾dE
删除到本单词末尾包括标点在内db
删除到前一个单词dB
删除到前一个单词包括标点在内
使用计数指定动作
2w
使光标向前移动两个单词3e
使光标向前移动到第三个单词的末尾
使用计数删除 d number(数字) motion
撤销类命令
- 输入 u 来撤消最后执行的命令
- 输入 U 来撤消对整行的修改
CTRL-R
重做被撤销的命令
第三讲
删除的内容会被放入 Vim 寄存器
输入 p 将最后一次删除的内容置入光标之后。
更改类操作符 c [number] motion
ce
从当前位置删除到单词结尾,然后进入插入模式- 感觉 c 比 d 就多了一个删除完之后进入插入模式?
第四讲
CTRL-G 显示当前编辑文件中当前光标所在行位置以及文件状态信息
输入行号 + G(或 gg)跳转到对应行
/
查找字符串 ?
逆向查找字符串
CTRL-O
回到当前位置,CTRL-I
跳转到新的位置
%
查找匹配括号对
:s/old/new
替换光标所在行的第一个匹配,/g
替换全行的匹配串
:#,#s/old/new/g
指定行号之间:%s/old/new/g
整个文件中的每个匹配:%s/old/new/gc
提示是否进行替换,c 对应 confirm
第五讲
:! 外部命令
!rm TEST
删除文件
保存部分区域 v motion :w FILENAME
:r FILENAME
当前文件中插入另外文件的内容
:r !ls
插入 ls 命令的输出
第六讲
打开类命令 o
和 O
a
光标后插入 A
行末插入
R
连续替换多个字符
j$
光标移动到下一行末尾
设置类命令
:set ic
Ignore Case,忽略大小写。取消:set noic
/ignore\c <回车>
一次查找忽略大小写
:set hls is
hlsearch
高亮incsearch
查找短语时显示部分匹配
第七讲
:help 参数
看指定参数的含义
CTRL-W CTRL-W
不同窗口切换
启动脚本 vimrc 文件
CTRL-D
列出可能的命令,TAB 命令行补全