“.”(英文句号)
插入模式下的快捷键| 与退格键backspace | |
|---|---|
| 删除前一个单词 | |
| 删除至行首 |
visual模式
| 可视块模式 | |
|---|---|
| V | 选择一行 |
| v | 单个字符 |
使用可视块模式
重复上一条命令@:
光标的窗口移动| h | 切换到左边的窗口 |
|---|---|
| j k l | 下上右 |
真正意义上的删除一般来说,d{motion} 命令和 aw、as 和 ap 配合起来使用比较好,而 c{motion} 命令和 iw 及类似的文本对象一起用效果会更好
"_d{motion}使用黑洞寄存器删除
而d{motion}事先将内容复制到无名寄存器
窗口vim中,默认的多窗口打开,是横向分割窗口。
1、new 命令
:new “新建一个未命名窗口
:new name "新建一个名为name的窗口
2、split命令
横向分割窗口
:split name "在当前位置打开name窗口 将原来文件向下移动
:sp name "是split的缩写 与split功能相同
如果省略名字,则新打开的窗口和打开它的窗口显示相同缓冲区的内容(同一个文件)。
3、vsplit命令(vertical split)
纵向分割窗口
:vsplit name "在当前位置打开name文件 将原来文件向右移动
:vs name "是vsplit的缩写 与vsplit功能相同
如果省略名字,则新打开的窗口和打开它的窗口显示相同缓冲区的内容(同一个文件)。
4、快捷键分屏
Ctrl+W s 水平分割当前打开的文件,相当于执行split省略文件名的命令
Ctrl+W v 垂直分割当前打开的文件,相当于执行vsplit省略文件名的命令
5、分屏启动Vim
vim -on/-On file1 file2 …
小写的o表示水平分屏
大写的O表示垂直分屏
n是数字,表示分成几个屏
:qall 关闭所有窗口,退出vim :wall 保留所有经过修改的窗口 :onlyEx模式o :close c
按Q进入
source命令重新执行刚修改的初始化文件
gvim文件夹中个文件夹作用- ~/.vim/colors/: 加载我们的 colorscheme, 使用 :color mycolors 将会调用 ~/.vim/colors/mycolors 文件
- ~/.vim/plugin/: plugin 目录, 每次启动 vim 将会将在其中的全部内容
- ~/.vim/ftdetect/: 每次启动 vim 将会加载其中全部内容, 用于判断打开的文件是什么类型然后 set filetype ***
- ~/.vim/ftplugin/: 当 vim 查找到一个文件的类型后, 为其 set filetype, 然后根据具体的类型在本目录下寻找对应的加载文件, 比如一个 test.md 文件, vim 在确定其是 markdown 类型后, 使用 setf markdown 设置其类型, 然后在本目录下寻找 markdown.vim 进行加载 (有的话就加载, 没有就不加载)
- ~/.vim/indent/: 与 ~/.vim/ftplugin 类似, 也是在确定了文件类型后在本目录下查找对应的文件进行加载, 不过只针对于缩进
- ~/.vim/compliler/: 与 ~/.vim/ftplugin 类似, 也是在确定了文件类型后加载对应文件然后确定执行时使用的命令
- ~/.vim/after/: 每次启动 vim 都会加载其中的文件, 其中可以含 plugin 与 ftplugin 文件夹, 加载时机位于 ~/.vim/plugin/ 或 ~/.vim/ftplugin 之后
- ~/.vim/autoload/: 按需加载, 也是延时加载, 在第一次呼叫相关插件命令后进行加载
- ~/.vim/doc/: vim 的相关文档说明, 插件加载完成后进行加载
When Vim looks for files in a specific directory, like syntax/, it doesn’t just look in a single place. Much like PATH on Linux/Unix/BSD systems, Vim has the runtimepath setting which tells it where to find files to load.
一句话总结就是rtp是vim中的环境变量
前缀g与z的命令 g相关- 屏幕行
| gk | 向上移动一个屏幕行 |
|---|---|
| gj | 向下移动一个屏幕行 |
| g^ | 屏幕行首 |
| g$ | 屏幕行尾 |
- goto跳转命令
- gobal全局
| g | 统计字符 |
|---|---|
| zz | 移动光标所在行至屏幕中间, |
|---|---|
| zb | 底部(bottom) |
| zt | 顶部,即将当前行作为首行出现在屏幕(top) |
| ZZ | 保存并退出(:x) |
| ZQ | 强制退出(:q!) |



