您的位置:首页 > 其它

vim编辑器使用详解

2015-09-05 11:00 387 查看
文件编辑器类别: 1)全屏文本编辑器: nano vi,vim emacs 2)行文本编辑器: sedvi--->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,N8、文本替换 有部分内置命令用于编辑操作,此时可使用地址定界法进行
地址定界: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 noic11、vim的配置文件 全局:/etc/vimrc 个人:~/.vimrc12、在vi中执行命令和导入文件 在末行模式下: 导入文件: r FILENAME 执行命令: !COMMAND 导入执行命令的结果: r!COMMAND13、定义快捷键和替换 在末行模式下: 替换:ab mymail magedu@qq.com #文中后面所写的所有mymail将被替换为mageedu@qq.com 快捷键: map CRTL+p I#<ESC> #按Ctrl+p键就会在光标所在行行首插入#并返回编辑模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  vim