vimtutor读书笔记
《vimtutor》note
Vim常用命令(vimtutor)
移动命令
h (左移) j (下行) k (上行) l (右移)
b (上个单词) w(下个单词)
^(跳到行首) $(跳到行末)
gg(跳到第一行) G(跳到最后一行) nG(跳到第N行)
插入
i光标后插入
I光标前插入
o下一行插入
O上一行插入
删除命令
-
dw 可以從光標處刪除至一個單字/單詞的末尾。
-
d$ 从光标处刪至当前行尾部
-
dd删除整行
-
x删除第一个字母
输入u可以撤销删除命令,输入U可以修正整行
刪除命令 d 的格式如下︰[number] d object 或者 d [number] object
其意如下︰
number - 代表執行命令的次數(可選項,缺省設置為 1 )。
d - 代表刪除。
object - 代表命令所要操作的對象(下面有相關介紹)。
一個簡短的對象列表︰
w - 從當前光標當前位置直到單字/單詞末尾,包括空格。
e - 從當前光標當前位置直到單字/單詞末尾,但是不包括空格。
$ - 從當前光標當前位置直到當前行末。
撤销命令
- u来撤销最后一次执行的命令
- U修正本行
- ctrl + u撤销掉撤销
替换命令
- p 在使用d命令删除后,删除的内容会进入缓冲区,在你准备插入的位置*上方输入p,会将缓冲区内容粘贴
- r 输入后替换当前光标所在的字符
- cw 改变单词的全部
- c 和d指令一样,变为插入
- o在光标下插入新的一行
- a 在光标之后插入字符
- A 在hang末插入
定位及文件状态
- ctrl + g显示当前文件的状态(行号)
- 行号+shift + g 跳到文件中的指定行
- /'string' 搜索当前字符 n为下一个 shift+n为上一个
- ?‘string’反向查找
- % 识别括号),],}
- :s/old/new/g 可以当前行内替换 old 为 new
- :%s/old/new/g 文中全部 old 替换为 new
运行命令
- :#,# w documentMane 保存指定位置为新文件
- :r documentNme 提取文件
设置命令的选项
:set xxx
技巧
:E = vim一个文件
:pwd - 查看当前目录
缓冲区buffer
其实,你用:E 浏览打开的文件都没有被关闭,这些文件都在缓冲区中。你可以用下面的命令来查看缓冲区:
:ls 可以用:buffer x切换文件
vim分屏
启动分屏
- 使用大写的O参数来垂直分屏。
vim -On file1 file2 ... - 使用小写的o参数来水平分屏。
vim -on file1 file2 ... - 上下分割当前打开的文件。
Ctrl+W s - 上下分割,并打开一个新的文件。
:sp filename - 左右分割当前打开的文件。
Ctrl+W v
关闭
Ctrl + W c
移动光标
- 把光标移到右边的屏。
Ctrl+W l - 把光标移到左边的屏中。
Ctrl+W h - 把光标移到上边的屏中。
Ctrl+W k - 把光标移到下边的屏中。
Ctrl+W j - 把光标移到下一个的屏中。.
Ctrl+W w
屏幕尺寸
- 让所有的屏都有一样的高度。
Ctrl+W = - 增加高度。
Ctrl+W + - 减少高度。
Ctrl+W -
分屏浏览
:Te
-
gt – 到下一个页
-
gT - 到前一个页
-
{i} gt – i是数字,到指定页,比如:5 gt 就是到第5页
代码补全
- 【Ctrl +N】 - 当你按下这它时,你会发现Vim就开始搜索你这个目录下的代码,搜索完成了就会出现一个下拉列表
- 【Ctrl + P】 – 接下来你可以按这个键,于是回到原点,然后你可以按上下光标键来选择相应的Word。
其他
字符相关
【guu 】 – 把一行的文字变成全小写。或是【Vu】
【gUU】 – 把一行的文件变成全大写。或是【VU】
按【v】键进入选择模式,然后移动光标选择你要的文本,按【u】转小写,按【U】转大写
【ga】 – 查看光标处字符的ascii码
【g8】 – 查看光标处字符的utf-8编码
【gf】 - 打开光标处所指的文件 (这个命令在打到#include头文件时挺好用的,当然,仅限于有路径的)
【*】或【#】在当前文件中搜索当前光标的单词
缩进相关
【>>】向右给它进当前行 【<<】向左缩进当前行
【=】 - 缩进当前行 (和上面不一样的是,它会对齐缩进)
【=%】 – 把光标位置移到语句块的括号上,然后按=%,缩进整个语句块(%是括号匹配)
【G=】 或是 【gg=G】 - 缩进整个文件(G是到文件结尾,gg是到文件开头)
复制粘贴相关
按【v】 键进入选择模式,然后按h,j,k,l移动光标,选择文本,然后按 【y】 进行复制,按 【p】 进行粘贴。
【dd】剪切一行(前面加个数字可以剪切n行),【p】粘贴
【yy】复制一行(前面加个数字可以复制n行),【p】粘贴
光标移动相关
【Ctrl + O】向后回退你的光标移动
【Ctrl + I 】向前追赶你的光标移动
这两个快捷键很有用,可以在Tab页和Windows中向前和向后trace你的光标键,这也方便你跳转光标。
读取Shell命令相关
【:r!date】 插入日期
上面这个命令,:r 是:read的缩写,!是表明要运行一个shell命令,意思是我要把shell命令的输出读到vim里来。