将这些操作变为肌肉记忆。
可以将常用操作写进配置文件文件中。
- vim 对应的配置文件
~.vimrc
- neovim 对应的配置文件
~.config/nvim/init.vim
Open files
vi a.txt b.txt -O :窗口打开两个文件
Command Mode
: :进入Command Mode e! :重新加载文件,撤销这次修改 set nu :加上行号 .vimrc syntax on :语法高亮 .vimrc help s :查看s的文档 ls :列出打开的文件(所有的buffer) b a.txt :跳到a.txt e b.txt :打开b.txt 加入另一个buffer vs :当前文件分一个窗口显示 vs a.txt :分窗口打开a.txt ZZ :关闭这个窗口,但不退出对应的buffer ctrl w w :光标移动到下一个文件 ctrl w = :所有窗口等宽度 ctrl w | :最大化当前窗口 ctrl w p :回到上一个窗口
Insert Mode
ctrl u :删除当前行 从行首到当前位置的内容 ctrl h :删除当前位置前一个字符 ctrl w :删除当前单词 从单词首到当前位置内容
Visual Mode
Visual Mode的一般操作步骤:进入Visual Mode,后选择所需内容,对所选内容进行操作。
v :从Normal Mode进入Visual Mode V :从Normal Mode进入Visual Mode 并且选中当前行
Visual block mode
ctrl v :进入visual block 模式 多行注释: 1. 进入visual block Mode,选中所需要猪似的所有行 2. 按大写i,在输出注释符//,按esc,全行注释 取消多行注释: 1. 进入visual block Mode,选中所需要删除的行和列 2. 按d删除
Normal Mode (即Read Mode,是进入Vim的默认模式,Esc返回Normal Mode)
a :从当前位置的下一个位置 进入Insert Mode i :从当前位置开始 进入Insert Mode I :从当前行行首开始 进入Insert Mode A :从当前行行尾开始 进入Insert Mode o :从下一行的行首 进入Insert Mode O :从上一行的行首 进入Insert Mode gg :跳到整个文件的首行 25gg :跳到25行行首 G :跳到整个文件的尾行 H/M/L :移动到窗口的高/中/低位置 ctrl u :向上翻页 ctrl f :向下翻页 zz :当前行放到窗口的中间 w/b :以单词为单位移动 向后移动/向前移动 h/j/k/l :以字符为单位移动 左/下/上/右 0 :移到行首 $ :移到行尾 y :复制 yiw :复制这个词 yy :复制这一行 p :粘贴到下一行 P :大p粘到上一行 dd :删除这一行 diw :删除这个词 u :撤销这一步 ZZ :保存并退出 ctrl s/ctrl q :锁vim窗口/解锁窗口
Combo operations
ciw :进入insert mode 更改这个单词 i表示“in” viw :选中这个单词 caw :改变这个单词 viw->y->viw->p :拷贝一个单词从这里拷贝到那里 vi( :选中括号中内容 ci" :改变这一行中“”中内容 ci[ :改变这一行中[]中内容 vi" :选中这一行中“”中内容 yi) :选择()中所有内容 da[ :删除[]中所有内容 dt" :删除从此到“的内容 t表示“to” di< :% s/XXX/YYY/g :用YYY替换XXX :32,65d :delete from line 32 to line 65, v, $, y :从此处复制到行尾 v, $, p :从此处粘贴到行尾 ggvG :全选
从外部拷贝内容进vim,3步走:
:set paste 粘贴操作 :set nopaste //自动缩进才会起作用
命令中的字母含义
gg,G : top, bottom d,c,y,v : delete, change, copy, visually select w,s,p,t : words, sentences, paragraphs, tags(HTML) a,i,t,f,F : all, in, till, find formard, find Backward
Code 补全
ctrl n + ctrl p :自动补全词
查询且高亮
:set incsearch :一边查一边高亮 :set hlsearch :查询结果高亮 /JUNHUI :(normal mode下)查询字符“JUNHUI”,n定位到下一个,N定位到上一个。
有用插件
NERDTree:显示目录的插件。
使用方法:
cd
到project目录->进入nvim
->Command Mode
输入:NERDTree
,即可显示当前project的文件和文件夹。可以使用
<Leader>
快捷键避免繁复输入NERDTree
。类似的设置要写入配置文件。