配置编辑器
git配置vim编辑器,只需一条命令,如下:
git config —global core.editor vim
修改后可以在自己的home目录下.gitconfig中可以查看;
也可以输入 $ git config —list或者 $ git config core.editor 查看。
Vim 常见的命令
- 命令模式:接受、执行 vi & vim 操作命令的模式,打开文件后的默认模式;
- 编辑模式:对打开的文件内容进行 增、删、改 操作的模式; 在编辑模式下按下 ESC 键,回退到命令模式。
创建、打开文件:$ vi [filename]
- 使用 vi 加 文件路径(或文件名)的模式打开文件,如果文件存在则打开现有文件,如果文件不存在则新建文件,并在终端最下面一行显示打开的是一个新文件。
键盘输入字母 “i”或“Insert”键进入最常用的插入编辑模式。
保存文件:
在插入编辑模式下编辑文件。
- 按下 “ESC” 键,退出编辑模式,切换到命令模式。
- 在命令模式下键入”ZZ”或者”:wq”保存修改并且退出 vi 。
如果只想保存文件,则键入”:w”,回车后底行会提示写入操作结果,并保持停留在命令模式。
放弃所有文件修改:
放弃所有文件修改:按下 “ESC” 键进入命令模式,键入 “:q!” 回车后放弃修改并退出vi。
- 放弃所有文件修改,但不退出 vi ,即回退到文件打开后最后一次保存操作的状态,继续进行文件操作:按下 “ESC” 键进入命令模式,键入 “:e!” ,回车后回到命令模式。
模式切换
| 按键 | 说明 | | —- | —- | | i | 进入插入模式;从目前游标所在处插入 | | I | 进入插入模式;从目前游标所在行的第一个非空白字元处插入 (常用) | | a | 进入插入模式;从目前游标所在处的下一个字元开始插入 | | A | 进入插入模式;从目前游标所在行的最后一个字元开始插入 (常用) | | o | 是字母,表示进入插入模式;从目前游标所在行的下一行处插入新的一行 | | O | 是字母,表示进入插入模式;从目前游标所在行的上一行处插入新的一行 (常用) | | r | 进入取代模式;只会取代游标所在的那个字元一次 | | R | 进入取代模式;会一直取代游标所在的文字,直到按下 [Esc] 为止 (常用) | | [Esc] | 从编辑模式返回到一般指令模式 (常用) |
移动游标
按键 | 说明 |
---|---|
h 或向左方向键 | 游标向左移动一个字元 |
j 或向下方向键 | 游标向下移动一个字元 |
k 或向上方向键 | 游标向上移动一个字元 |
l 或向右方向键 | 游标向右移动一个字元 |
[ctrl]+[f] | 屏幕向下移动一页,相当于[Page Down](常用) |
[ctrl]+[b] | 屏幕向上移动一页,相当于[Page Up](常用) |
[ctrl]+[d] | 屏幕向下移动半页 |
[ctrl]+[u] | 屏幕向上移动半页 |
n+[Space] | n 表示数字,按下数字后再按空格键,游标会向右移动到这一行的第 n 个字元。 |
功能键[Home]或 0 | 游标移动到这一行的第一个字元处 |
功能键[End]或 $ | 游标移动到这一行的最后一个字元处 (常用) |
H | 游标移动到这个屏幕最上方那一行的第一个字元 |
M | 游标移动到这个屏幕中央那一行的第一个字元 |
L | 游标移动到这个屏幕最下方那一行的第一个字元 |
G | 游标移动到这个档案的最后一行 (常用) |
nG | n 为数字。游标移动到这个档案的第 n 行 |
gg | 游标移动到这个档案的第一行 (常用) |
n+[Enter] | n 为数字。游标向下移动 n 行 (常用) |
搜索替换
按键 | 说明 |
---|---|
/word | 在当前游标所在位置往下寻找关键字为 word 的字符串 (常用) |
?word | 在当前游标所在位置往上寻找关键字为 word 的字符串 |
n | 这里的 n 是按键 n。代表重复前一个搜索动作 |
N | 这里的 N 是按键 N。功能与 n 相反,代表反向执行前一个搜索动作 |
:n1,n2s/word1/word2/g | n1 与 n2 都为数字,表示行数。可在第 n1 行与第 n2 行之间寻找 word1 字符串,并替换为 word2 (常用) |
:1,$s/word1/word2/g | 表示从第一行到最后一行,将 word1 字符串替换为 word2 (常用) |
:1,$s/word1/word2/gc | 表示从第一行到最后一行,也是将 word1 字符串替换为 word2,不同之处是在替换前显示提示字元,由用户确认是否最终替换 (常用) |
PS:. 代表一个任意字符 代表一个或多个字符的重复 < 指定匹配单词开头 > 指定匹配单词结尾
单词精确匹配替换::1,$s/<word1>/word2/gc
**使用 /word 的同时,配合使用 n 或者 N,搜索可以变得很方便**
编辑操作
按键 | 说明 |
---|---|
[Del] 或 x | 向后删除一个字元 (常用) |
X | 向前删除一个字元 (常用) |
nx | n 为数字,表示连续向后删除 n 个字元 |
dd | 删除游标所在的那一行 (常用) |
ndd | n 为数字,删除游标所在的那一行往下数 的 n 个行 (常用) |
d1G | 删除游标所在的那行到第一行的所有数据 |
dG | 删除游标所在的那行到最后一行的所有数据 |
d$ | 删除游标所在处到该行的最后一个字元 |
d0 | 是数字 0,删除游标所在处到该行的第一个字元 |
yy | 复制游标所在的那一行 (常用) |
nyy | n 为数字, 复制游标所在的那一行往下数 n 行 (常用) |
y1G | 复制游标所在行到第一行的所有数据 |
yG | 复制游标所在行到最后一行的所有数据 |
y0 | 复制游标所在的字元到该行行首的所有数据 |
y$ | 复制游标所在的字元到该行行尾的所有数据 |
p | 将已复制的数据粘贴在游标所在的那一行的下一行 (常用) |
P | 将已复制的数据粘贴在游标所在的那一行的上一行,原来游标所在的那一行会被推后一行 (常用) |
J | 将游标所在的行与下一行的数据合并为一行 |
u | 撤销前一个操作 (常用) |
[ctrl]+r | 重做上一个被撤销的操作 (常用) |
. | 这是小数点,表示重复前一个操作 (常用) |
* 最后三个按键乃是神器,熟悉后记得经常使用它们,会让你觉得使用 vim 是一件很快乐的事情
环境设定
按键 | 说明 |
---|---|
:set nu | 设定行号 |
:set nonu | 取消行号 |
:set hlsearch | 搜索到的关键字反白显示 (默认) |
:set nohlsearch | 搜索到的关键字取消反白显示 |
:set autoindent | 自动缩排 (默认) |
:set noautoindent | 不自动缩排 |
:set backup | 自动存储备份档(备份档名为 filename~) |
:set ruler | 显示右下角状态说明 |
:set showmode | 显示左下角状态说明(比如 INSERT) |
:set backspace=(012) | 倒退键设置;2:可以删除任意值;0 或者 1,仅可删除刚刚输入的字符,无法删除原来就存在的字符 |
:set all | 显示所有环境参数设定值 |
:set | 显示与系统默认值不同的设定值 |
:syntax on | 开启语法着色 |
:syntax off | 关闭语法着色 |
:set bg=dark | 开启语法着色深色方案 |
:set bg=light | 开启语法着色浅色方案 (默认) |