您的位置:首页 > 其它

vim编辑器使用详解

2015-08-24 18:02 232 查看
一、文本编辑器:vim
ASCII:
UTF:
字符编码相关的详细解释

文件编辑器类别:
全屏文本编辑器:
nano
vi,vim
emacs
行文本编辑器:
sed
vi--->vim
模式化的编辑器:多种不同模式
编辑模式:命令模式
输入模式:插入模式
末行模式:vim有许多内置命令,此模式即为其命令的接口
1、打开VIM

vim
vim [OPTIONS] [FILE]...
+#: 快速定位至第#行
+:快速定位至最后一行
+/PATTERN: 快速定位至被模式第一次匹配的行2、模式间转换: 默认为编辑模式--->输入模式: i:insert,在当前光标处,转换为输入模式 I:在当前光标所在行行首,转换为输入模式 a:append,在当前光标所在出字符后方,转为为输入模式 A:在当前光标所在行行尾,转换为输入模式 o:在当前光标所在行的下方新建一个空白行,并转换为输入模式 O:在当前光标所在行的上方新建一个空白行,并转换为输入模式 输入模式--->编辑模式:按ESC键 编辑模式--->末行模式: : 末行模式--->编辑模式:按ESC键
3、退出vim

末行模式:
q 退出
w 另存为 w /tmp/test
q! 强制退出,不保存编辑的内容直接退出
wq 保存退出
x 保存退出
wq!,x! 强制保存退出
编辑模式:
ZZ:保存退出

4、编辑命令
①、光标移动:
字符间移动:h,j,k,l 左,下,上,右 #[h,j,k,l]:一次移动N个字符间距
单词间移动:w 下一个单词的词首
e 当前或下一个单词的词尾
b 当前或前一个单词的词首 #[w,e,b]
行首行尾间跳转:
0:跳转至绝对行首
^: 行首的第一个非空白字符
$: 跳转绝对行尾
行间快速跳转:#G 第#行 末行模式:# 跳转至第#行
G 文尾
gg 文首
句间移动:
)
(
段落间移动:
}
{
②、编辑操作:
x:删除光标所在出字符 #x: 删除光标所在处及向后的公#个字符
d:删除命令
dd:删除光标所在行 相当于D
#dd:删除光标所在行及下的共#行
与跳转命令一同使用:
d$:删除光标所在处至行尾的内容
d0,d^
dw,db,de
r:替换命令 R
p:粘贴,
行级别:
p:粘贴在光标所在行下方
P:粘贴在光标所在行上方
小于行级别:
p:粘贴在光标所在出的后方
P:粘贴在光标所在出的前方
y:复制命令
yy:删除光标所在行 相当于Y #yy:删除光标所在行及下的共#行 与跳转命令一同使用: y$:删除光标所在处至行尾的内容 y0,y^ yw,yb,ye c:修改 删除后进入输入模式
C cc c$ c^ c0

u:撤销 #u 一次撤销最近的#次操作
ctrl+r 撤销此前的撤销
. 重复前一条命令

附:

VimTutor中文版

5、可试化模式
v:选择光标所在行的光标左侧的内容
V:光标所在行整行都被选定
6、编辑模式下的翻屏命令
Ctrl+f:向文件尾部翻一屏
Ctrl+b:向文件首部翻一屏
Ctrl+d:向文件尾部翻半屏

Ctrl+u:向文件首部翻半屏

末行模式:

7、文本查找
支持正则表达式
/PATTERN 向尾部进行 n,N
?PATTERN 向首部进行 n,N
8、文本替换
有部分内置命令用于编辑操作,此时可使用地址定界法进行

地址定界:startline[,endline]
#:第#行
.:当前行
$:最后一行
%:全文
相对定界:
+#:从指定位置向下#个行 10,+5
-#:从指定位置向上#个行 10,-5
文本替换:“s”
s/要查找的内容/替换为的内容/修饰符
/:用作分隔符,用于分割“要查找的内容”和“替换为的内容”此分隔符可使用其他符号如:@,#。
要查找的内容,可使用正则表达式,可以在后面“替换为的内容”部分使用“&”全部引用
替换为的内容,不可使用正则表达式,一般为正常文本但可以使用正则表达式中\1,\2...保存的内容
修饰符:
i:查找时不区分字符大小写
g:全局替换



9、多文件模式
打开文件:vim [OPTIN]...[FILE]...

多文件:
末行模式:
next,prev,first,last
保存并退出所有文件:
wqall,,wall,qall
多窗口:
-o:上下分割窗口
-O:左右分割窗口
Ctrl+w,ARROW
注意:单个文件也可以分割为多个窗口进行查看
Ctrl+w,放开再按s 上下分割
Ctrl+w,v 左右分割
10、界面显示特性
末行模式:
显示行号:默认没开启
set number,set nu
set nonumber,set nonu
语法高亮:

syntax on
syntax off
搜索高亮
set hlsearch
set nohlsearch
自动缩进:默认没开启
set autoindent,set ai
set noauntoindent,set noai
区分字符大小写的开启和关闭
set ignorecase,set ic
set noignorecase,set noic
高亮显示匹配的符号对儿:默认开启
set showmatch,set sm
set noshowmatch,set nosm
忽略字符大小写
set ic
set noic
11、vim的配置文件
全局:/etc/vimrc
个人:~/.vimrc
12、在vi中执行命令和导入文件
在末行模式下:
导入文件: r FILENAME
执行命令: !COMMAND
导入执行命令的结果: r!COMMAND
13、定义快捷键和替换
在末行模式下:
替换:ab mymail magedu@qq.com #文中后面所写的所有mymail将被替换为mageedu@qq.com
快捷键: map CRTL+p I#<ESC> #按Ctrl+p键就会在光标所在行行首插入#并返回编辑模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: