vim编辑器:;
全屏幕的编辑器:vim:vi improved(vi增强版)
vi:visual interface
vim:只是文本全屏幕编辑器
模式化:
编辑模式:也叫命令模式对文本进行复制,删除等操作
输入模式:也就是向文本中输入内容
末行模式:
编辑模式-->输入模式:
i:insert 在当前光标所在位置插入
a:在光标所在的后方插入
o:在光标所在行的下方添加新的一行
I:在光标所在行行首插入
A:在光标所在行行尾插入
O:在光标所在行的上方添加新的一行
输入模式-->编辑模式
ESC
编辑模式-->末行模式
:
末行模式-->编辑模式
ESC
打开vim:
vim /PATH/TO/SOMEFILE
+#:#为行号:打开 vim后光标处在#行行首
+/PATTERN::打开vim后光标处在第一个符合匹配PATTERN的行处
关闭vim
:q
:q!
:wq
光标跳转:
字符间跳转:
h:向左跳转一个字符
l:向右转转一个字符
j:向下跳转一个字符
k:向上跳转一个字符
#COMMAND
单词间跳转:
w:跳转至后一个单词的词尾
e:当前或后一个单词的词尾
b:当前或前一个单词的词首
#COMMAND
行内跳转:
^:跳转至行首的第一个非空白字符
0:跳转至绝对行首
$:跳转至绝对行尾
行间移动:
#G:跳转至第#行行首
编辑命令:
字符编辑:
x:删除光标所在处的字符
#x:删除光标所在处的开始向后#个字符
xp:
r:替换光标所在处的字符
删除命令
d:删除光标移动经过的字符(常与光标跳转命令结合使用)
d^,d$,d0,dw,de
dd:删除光标所在行的整行
注意:删除的内容会被vim编辑器保存在缓冲区中
粘贴:
如果此复制或删除的内容不是一个完整行
p:粘贴至当前光标所在处后面:
P:粘贴至当前光标所在处的前面:
如果此复制或删除的内容是一个完整行(不止一行)
p:粘贴至当前光标所在处下一行:
P:粘贴至当前光标所在处的上一行;
复制命令:
y用法与删除一样
改变命令
撤销此前的编辑命令
u:undo
撤销此前的编辑操作:
ctrl+r恢复此前的撤销u操作
翻屏操作:
ctrl+f向后一屏
ctrl+b向前一屏
ctrl+d向后半屏
ctrl+u:向前半屏
vim的末行模式
(1)地址:定界
:start_pos,end_pos
# :第#行
#,# 绝对行数
#,+# 绝对行数起,配合相对行数
.:当前行
$:最后一行
%:全文
/part1/:第一次被匹配到的行
后可跟编辑命令:
d,y
w,r
(2)查找
/PATTERN:向尾部进行查找
?PATTERN:向首部进行查找
n:表示命令同方向查找下一个
N:表示命令同方向查找上一个
(3)查找替换
s:在末行模式下,在地址定界的范围内完成查找替换操作;
s/要查找的内容/替换为的内容/修饰符
要查找的内容:可使用正则表达式,可功后面《替换为的内容》用“&”全部引用,
替换为的内容:不能使用正则表达式,但可以使用后向阴影符号
修饰符:
i:查找时不区分字符大小写
g:全局替换
/:用作分隔符,用于分割“要查找的内容”和“替换为的内容”此分隔符可使用其他符号如:@,#。
多文件模式:
vim file1 file2。。。
:next
:first
: prev
: last
多个窗口分割模式:
vim -o水平分割多个窗口
-O垂直分割多个窗口
单文件窗口分割:
ctrl+w s:水平分割
ctrl+w,v垂直分割
定制vim的某些工作特性:
1行号
显示:set nu
禁用:set nonu
2括号匹配
显示:set sm
禁用:set nosm
3自动缩进
set ai
set noai
4高亮搜索
set hlsearch
set nohlsearch
vim的配置文件
全局:/etc/vimrc
个人:~/.vimrc
在vim中执行命令和导入文件
在末行模式下:
导入文件: r FILENAME
执行命令: !COMMAND
导入执行命令的结果: r!COMMAND
原文地址:http://5489884.blog.51cto.com/5479884/1691396