您的位置:首页 > 其它

vim编辑器使用详解

2015-05-15 21:52 281 查看
vim:全屏、模式化编辑器

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

模式转换:
编辑――>输入
i:在当前光标定位的字符前面,转为输入模式
a:在当前光标定位的字符后面,转为输入模式
o:在当前光标所在行的下面新建一行,转为输入模式

I:在当前光标定位的行首,转为输入模式
A:在当前光标定位的行尾,转为输入模式
O:在当前光标所在行的上面新建一行,转为输入模式

输入――>编辑:
ESC

编辑――>末行:
:

末行――>编辑:
ESC

vim命令使用:
1、打开文件:
vim +12 file ――>直接打开定位到文件的第12行
vim + file ――>直接打开定位到文件的尾部
vim +/PATTERN file ――>打开文件,定位到第一次被PATTERN匹配到的行的行首

2、关闭文件:
w:保存
q:退出
wq:保存并退出
q!:不保存退出
w!:强行保存
:wq ――> :x
编辑模式下关闭文件
ZZ:保存并推出 ――> shift+z,

3、移动光标(编辑模式):
逐字符移动:
h:向左
l:向右
j:向下
k:向上
#h:移动#个字符...
...

以单词移动:
w:跳到下一个单词的词首
e:跳到当前或下一个单词的词尾
b:跳到当前或前一个单词的词首
#w:跳到下#个单词的词首
...

行内跳转:
0:跳到绝对行首
^:跳到行首的第一个非空白字符
$:绝对行尾

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

4、翻屏跳转:
Ctrl+f:向下翻一屏
Ctrl+b:向上翻一屏
Ctrl+d:向下翻半屏
Ctrl+u:向上翻半屏

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

6、删除命令
d:该命令需跟跳转命令组合使用
example:d$
#d跳转符:删除#个跳转符
dd:删除当前光标所在行
#dd:删除包括当前光标所在行的#行

末行模式下:
.:表示当前行
$:表示最后一行
+#:表示向下#行
$-1:表示倒数第二行
example:.,$-1s/he/HE/g――>从当前行到倒数第二行将he全局替换为HE

7、粘贴命令
p:如果删除或复制为整行内容,则粘贴到光标所在行的下方;如果复制或删除的内容为非整行,则粘贴到光标所在字符的后面
P:如果删除或复制为整行内容,则粘贴到光标所在行的上方;如果复制或删除的内容为非整行,则粘贴到光标所在字符的前面

8、复制命令
y用法同d命令

9、修改:先删除内容,再转换为输入模式
c:用法同d命令

10、替换:
r:常用于替换单个字符(光标定位rx)
R:替换模式

11、撤销编辑:
u:撤销前一次编辑操作
#u:直接撤销最近#次操作
Ctrl+r:撤销最近一次撤销操作

12、重复前一次编辑操作
.

13、可视化模式(选取文本)
v:按字符选取
V:按矩形选取

14、查找
/PATTERN
?PATTERN
n:查找下一个
N:查找上一个

15、查找并替换
在末行模式下使用s命令
:ADDR1,ADDR2s/PATTERN/string/gi
1,$
%:表示全文
%s:全文搜索

16、编辑多个文件
vim file1 file2 ...
:next:切换后一个文件
:prev:切换前一个文件
:last:切换到最后一个文件
:first:切换到第一个文件
:qa:全部退出

17、分屏显示
Ctrl+w,s:水平拆分窗口
Ctrl+w,s,上下箭头:切换窗口
Ctrl+w,v:垂直拆分窗口
Ctrl+w,s,左右箭头:切换窗口
:qa:关闭所有窗口

18、分窗口编辑多个文件
vim -o:水平分割编辑
vim -O:垂直分割编辑

19、将当前文件中的部分内容另存为另一个文件
末行模式下使用w命令
:w 路径
:ADDR1,ADD2w /home

20、将另一个文件中的内容填充在当前文件中
:r /home/file

21、跟shell交互
:! COMMAND

22、高级话题
显示或取消显示行号
:set nu
:set nonu

忽略或区分字符大小写
:set ignorecase
:set ic
:set noic
:set noignorecase

设定自动缩进
:set autoindent
:set ai
:set noai

查找到的文本高亮显示或取消
:set hlsearch
:set nohlsearch

语法高亮
:syntax on
:syntax off

23、配置文件
/etc/vimrc
~/.vimrc
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: