vim文本编辑器


文本编辑器

   行编辑器:sed(流编辑器)

   全屏幕编辑器:nano,emacs,vi,vim

vim(vi):模式化编辑器

   编辑模式(命令模式):

   输入模式:

   末行模式:

vim启动:

   vim [option] FILE……   例如:vim /tmp/a.txt

   option:

       +# 打开时光标定位在第#行第一个字符

       + 打开时光标定位在最后一行第一个字符

vim退出:

   :q

   :q! 强制退出

   :wq 保存退出 等同于:x

   :w! 强制保存

模式转换:

   编辑模式 --> 输入模式

       i:当前光标所在字符前面插入

       a:当前光标所在字符后面插入

       o:当前光标所在行的下方新增空白行并输入

       I:当前光标所在行的行首插入

       A:当前光标所在行的行尾插入

       O:当前光标所在行的上方新增空白行并输入

   输入模式 --> 编辑模式

       Esc

   编辑模式 --> 末行模式

       :

   末行模式 --> 编辑模式

       Esc

光标跳转:

   h 左

   j 下

   k 上

   l 右

词间跳转:

   w 下个单词的词首

   e 跳转至词尾

   b 和e相反

行首、行尾:

   ^行首的第一个非空白字符

   0 绝对行首

   $ 绝对行尾

行间跳转:

   #G 跳转到#行 gg跳转到第一行

   G 跳转至文件尾部(最后一行)

   末行模式下跳转:

       :# 跳转到#行

翻屏操作:

   ctrl+f 向文件尾部跳一屏

   ctrl+b 和ctrl+f相反

   ctrl+d 向文件尾部跳半屏

   ctrl+u 和ctrl+d相反

删除:

   x 删除光标前的一个字符

   dd 删除当前所在行

   #dd 删除从光标所在行开始的#行内容

   d^ 删除光标之前到行首

   d$ 删除光标到行尾

复制:

   yy 复制当前行

   #yy 复制从光标所在行开始的#行

   y^ 复制光标之前到行首

   y$ 复制光标到行尾

粘贴:

   p 粘贴到光标所在位置之后

   P 粘贴到光标所在位置之前

可视化模式:(选定)

   v 按字符选取

   V 按行选取

撤销编辑操作:

   u 撤销上一次编辑操作

   #u 撤销最近的#次操作

   ctrl+r 对最近一次的撤销操作进行撤销

   U 撤销对当前行所做的所有编辑

查找:

   /搜索的词 向后搜索

   ?搜索的词  向前搜索

查找并替换:

   末行模式下使用s命令格式:

       :定界s/查找的内容/替换成的内容/gi

   定界

   % 全文查找

   n,m

   查找的内容

   支持正则表达式

   替换成的内容

   不支持正则表达式,但可使用前向引用

   g 全局替换

   i 忽略大小写

   & 用于引用查找到的整个字符串

   注意:在查找时遇见和分隔符相同的字符必须用转义符进行转义

和shell交互:

   末行模式下:

   !shell command例如::!ls /var/spool/mail

   将某些行进行另存为,例如::n,m /tmp/a.txt

   水平拆分窗口:ctrl+w然后松开按s

   垂直拆分窗口:ctrl+w然后松开按v

   拆分窗口来回切换:ctrl+w然后松开按方向键

   关闭某个窗口:ctrl+w然后松开按q

   同时打开多个文件时,在末行模式下切换:

       :next 切换至后一个文件

       :prev 切换至前一个文件

       :first 切换至第一个文件

       :last 切换至最后一个文件

       :wall  保存所有

       :qall退出所有

       :q!qll 强制退出所有

       :e 新文件   打开新的文件

       :r 新文件读入新文件

打开多个文件并拆分显示:

   -o

   -O

定制vim的工作属性:(末行模式下)

   :set nu 显示行号

   :set nonu 关闭行号

   :set ai 自动缩进

   :set noai 关闭缩进

   :set 显示帮助

   :set all显示所有属性

   :set ic 忽略大小写

   :set noic 关闭ic

   :syntax on|off开启关闭语法高亮显示

   :set hlsearch 打开查找高亮

   :set nohlsearch关闭查找高亮

vim配置文件:

   全局 /etc/vimrc

   个人 ~/.vimrc(不存在,自己创建)

vimtotur:vim的练习题