10-Vim 编辑器

2019-05-07  本文已影响0人  柠檬小暴

打开文件

vim /path/to/somefile 打开或者创建某文件
vim +# 打开后处于第n行
vim + 打开后处于最后一行
vim + /pattern 打开文件,定位第一次出现模式的行

Vim 打开默认处于编辑模式

vim模式

编辑模式(命令模式)
输入模式
末行模式(:)

模式转换

编辑-->键入

i 当前光标所在字符的前面,转换为输入模式
a 当前光标所在字符的后面,转换为输入模式
o 当前光标所在字符下一行,转换为输入模式

I 在当前光标所在行行首,转换为输入模式  
A 在当前光标所在行行尾,转换为输入模式  
O 当前光标所在字符上一行,转换为输入模式

输入 -->编辑模式 Esc键
编辑 --> 末行模式 :(冒号)
末行--> 编辑博士 Esc 键

关闭文件

1、末行模式关闭文件

:q 退出
:wq 保存并退出
:q! 不保存退出
:w!强行保存
:wq =:x

2、编辑模式下退出

ZZ 保存并退出

移动光标(编辑模式)

1.逐字符移动

h,向左移动
l ,向右移动
k,向上移动
j,向下移动
#h,移动#个字符

2.逐个单词移动

w,移至下一个单词此首
e,跳至当前或下一个单词词尾
b,跳至当前或者上一个单词词首
#w 跳#个单词

3.行内跳转:

 0:跳至行首,绝对行首
 ^: 行首的第一个非空白字符
 $:绝对行尾

4.行间跳转

 #G 跳转至#行
G 最后一行
末行模式下,直接给出行号即可

翻屏

Ctrl + f 向上翻一屏
Ctrl + b 向上翻一屏
Ctrl + d 向下翻半屏
Ctrl + u 向上翻半屏

删除单个字符

x 删除光标所在处的单个字符
#x 删除光标所在处的及向后处的#个字符

删除命令 d

d命令与跳转命令联合使用,可以
#d 跳转符,#dw,#db
dd: 删除当前光标所在行
#dd删除包括当前光标所在行内的#行

末行模式下: startADD,EndDDd 删除起始行到结束行内容
 . 表示当前行
 $表示最后一行
+#,向下的#行

删除的内容在内存,可进行粘贴

粘贴命令 p

p 如果删除或复制为正行,则粘贴在所在行的下方;非整行,则粘贴至字符后
P 如果删除或复制为正行,则粘贴在所在行的上方;非整行,则粘贴至字符前

复制命令 y

用法同d命令

修改,先删除内容,在转换为输入模式

用法同d命令

替换 ,r 替换单个字符

R 进入替换模式

撤销编辑操作

u 撤销前一次操作(最多50次)
#u 撤销最近#次编辑操作
还原最近一次撤销操作,ctrl+r

重复前一次编辑操作

 . (点命令)

可视化模式

 v:按字符选取
 V:按照矩形块选取

查找

/PATTERN
?PATTERN
n 向下跳转
N 向上查找

查找并替换

在末行模式下使用s命令,与sed命令一致
%指定全文替换

如何打开多个文件

vim file1, file2 
: next 切换至下一个文件
:prev 切换至前一个文件
:last 切换至最后一个
:first 切换至第一个
:qa 全部退出  

分屏显示一个文件

ctrl+w ,s 水平拆分窗口
ctrl+w, v 垂直拆分窗口
ctrl+w, arrow 切换光标 

分窗口显示多个文件

-o 水平显示
-O 垂直显示

将当前文件中部分内容另存为另外一个文件

末行模式下使用w命令
:w

将另外一个文件的内容填充在当前文件中

:r /path/to/somefile

与shell交互

:! COMMAND

高级话题

1.显示行号
:set number
:set nu
:set nonu
2.忽略或区分大小写
:set ignorecase
:set ic
3.设置缩进
:set autoindent
:set ai / noai
4.查找到的文本高亮显示
:set hlsearch
:set nohlsearch
5. 语法高亮
 :syntax on
 :syntax off

配置文件

 ~/.vimrc

vimtutor

非法退出时,会生成swap文件,确认内容无用时即可删除

上一篇下一篇

猜你喜欢

热点阅读