VIM编辑器常用功能整理笔记

时间:2022-03-15 00:12:11

vim编辑器
vi : visual Inertface 可视化接口
vim : vi improved 扩展版
语法着色

模式化编辑器:
  编辑模式(命令模式): 默认模式
  输入模式:
  末行模式:
    等待输入命令
    10d 删除第十行
    10,20d
    set nu 显示行号
    ! ls /etc 不用退出文件输入 系统shell命令

模式转换
编辑--> 输入

      小写
      i:在当前光标位置前面输入
      a:在当前光标位置后面输入
      o:在当前光标下一行新建一行 输入内容
      大写
      I 行首
      A 行尾
      O 上一行新建一行

输入--> 编辑   ESC

编辑-->末行: 必须得从编辑模式进入 只需要输入:冒号

末行--> 编辑: esc esc
               VIM编辑器常用功能整理笔记  

功能介绍:

一、 打开文件
    vim +12 光标到12行
    vim + 打开光标到末尾
    vim +/PATERN 打开文件定位到第一次匹配的位置

二、关闭文件
末行模式关闭文件 : wq ==:x
编辑模式关闭文件 : 大写ZZ 保存退出 就是 shift+zz

三、移动光标(编辑模式)
1. 逐个字符移动(手的位置)
  h
  l
  j 下
  k 上

  8l 向左移动8个字符
2.逐单词移动
  w 移到下一个单词的词首
  e 移到当前或者下一个单词的词尾
  b 移到当前或者前一个单词的词尾
  3w 向后跳3个单词
3.行内跳转
  0(零) 绝对行首
  ^ 行首的第一个非空白字符
  $ 绝对行尾
4.行间跳转
  #G 跳转至第#行
  G 跳转到最后一行
  末行模式下: 直接给行号回车

四、翻屏
  crtl+f:向下翻一屏
  crtl+b:向上翻一屏
  crtl+d:向下翻半屏
  crtl+u:向上翻半屏
五、删除单个字符
#x 删除 光标所在处后面#个字符 x删除单个

六、删除命令:d
d命令和跳转命令组合使用 3dw
  #dw, #de #db
  dd: 删除当前光标所在行 3dd
  #dd 删除包括当前光标所在行在内的#行
末行模式下:
  starAdd,EndAdd . , +5 表示删除当前行到后面五行
  支持相对表示法:
  . 当前行
  $ 最后行 $-3
  +# 向下的#行
七、粘贴命令:p

删除的东西不会立即删除,删除的内容保存在缓冲区中
最后一次删除的内容 可以粘贴到指定地区 可以粘贴n次
小p: 如果删除或复制为整行,则粘贴至所在行的下方;非整行,则粘贴至所在行的下方
大P: 相反

八、复制命令 y
用法同d

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

十、替换单个字符
r
R 替换模式

十一、撤销编辑undo
u:撤销前一次操作 连续使用
只能在缓存中保存50次
3u 至倒数第三次
后悔撤销操作了,就有Crtl+r 撤销的撤销,还原最近一次的撤销操作
类似于window下的crtl+z Crtl+y
十二、重复前一次编辑操作
  点命令 .
十三、可视化操作
v:按字符选取
V: 矩形选取(整行选中)

十四、查找
/PATTERN 往后查找
?PATTERN 向前查找
n 下一个
N 上一个

十五、查找并替换
用法同set
在末行模式下使用s命令
startadd,endadd @ pattern @string @gi
: .,$-1 s/hello/HELLO @g
1,$ == % 表示全文

十六、使用vim打开多个文件
多个文件间复制粘贴
vim file1 file2 file3
:next 切换至前一个文件
:prev 切换至前一个文件
:last 切换至最后一个
:first切换至第一个文件
:qa 全部退出 q只能退出当前

十七、分屏显示一个文件(word里面的窗口拆分)

Crtl+w,s :水平拆分窗口
Crtl+w,v :垂直拆分窗口
在窗口间切换
Crtl+w,APROW(方向键) 或者两次Crtl+w也能向下一个切换
:qa 关闭所有窗口

十八、分窗口多个文件
vim -o file1 file2 水平分割
vim -O file1 file2 垂直分割

切换 也是 crtl+w

十九、将当前文件中部分内容另存为另外一个文件
末行模式下使用w命令
:w
:addr1,addr2 w /path/to/somewhere

二十、将 另外一个文件的内容填充在当前文件中
:r /root/inittal
直接在后面添加另一个文件的内容

二十一、和shell交互
:!commen
然后回车后 会再返回到vi编辑界面

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

2.显示忽略或区分字符大小写 :set ignorecase
:set ic
: set noic

3.设定自动缩进 :set autoindent
写脚本编程的时候很重要
:set ai
:set noai
4、查找到的文本高亮显示 或者取消掉
:set hlsearch
:set nohlsearch

5.语法高亮
:syntax on
:syntax off

二十三、配置文件
/etc/vimrc
单用户家目录下 自己新建.vimrc
~/.vimrc

vim 进程强行被退出 网络断开的时候 经常会报错
vim -r inittab
file.swp 文件要手动删掉 备份文件 rm -f .inittab.swp

If this is the case, use ":recover" or "vim -r inittab"
to recover the changes (see ":help recovery").
If you did this already, delete the swap file ".inittab.swp"