linux/linux学习笔记-vim文本编辑器(mooc)

vim文本编辑器

vim与vi的区别:( vim=vi +IMproved)

  VIM是一个Unix以及类unix文本编辑器

  特点:功能强大,高度可定制

  vim编辑器的三种模式:一般模式、编辑模式和命令行模式。

  【1】一般模式中可以进行删除、复制和粘贴的功能,但是无法编辑文件内容

  【2】一般模式切换到编辑模式可以按下i、I、o、O、a、A、r、R键。按下Esc键可以回到一般模式

  【3】一般模式中输入:、/、?三个中的任意一个可以将光标移到最下面的一行

注:编辑模式与命令行模式之间是不能互相切换的。

vim使用

移动光标的方法:

//移动光标的方法:
[Ctrl]+[f]:屏幕向下移动一页,相当于[PageDown]按键。

[Ctrl]+[b]:屏幕向上移动一页,相当于[PageUp]按键。

0或功能键[Home]:移动到这一行的最前面字符处。

$或功能键[End]:移动到这一行的最后面字符处。

G:移动到这个文件的最后一行。

gg:移动到这个文件的第一行,相当于1G.

N[Enter]:N为数字,光标向下移动N行。 //eg: 2[Enter]光标下移2行

查找和替换:

/word:向下寻找一个名称为word的字符串。

?word:向上寻找一个名称为word的字符串。

:n1,n2s/word1/word2/g:在第n1行和n2行之间寻找word1这个字符串,并且将其替换为word2.

如:[:2,3s/abc/def/g] //在第2和第3行间查找,将abc替换为def :
1,$s/word1/word2/g:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2. :1,$s/word1/word2/gc:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2.且在替换前显示提示字符给用户确认是否需要替换。

//一个一个提示是否需要替换

删除、复制和粘贴:

x,X:在一行字中,x为向后删除一个字符(相当于[Del]键),X为向前删除一个字符(相当于[Backspace])。

dd:删除光标所在的一整行。

ndd:删除光标所在的向下n行。//eg: 2dd:向下删除2行

yy:复制光标所在的一行。

nyy:复制光标所在的向下n行。

p,P:p为将已复制的内容在光标的下一行粘贴,P则为粘贴在光标的上一行。

u:复原前一个操作。

[Ctrl]+r:重做上一个操作。

.:小数点,重复前一个操作。

一般模式切换到编辑模式

i,I:进入插入模式,i为从目前光标所在处插入。I为在目前所在行的第一个非空格字符处开始插入。

a,A:进入插入模式。a为从目前光标所在处的下一个字符处开始插入。A为从所在行的最后一个字符处开始插入。

o,O:进入插入模式。o为在下一行插入。O为在上一行插入。

r,R:进入替换模式。r只替换光标所在那个字符一次。R会一直替换光标所在字符,直到按下Esc键。

一般模式切换到命令行

:w:将编辑的数据写入到硬盘中。

:q:离开vi.后面加!为强制离开。

:wq:保存后离开。:wq!为强制保存后离开。

vimrc配置:

  rc=run command

  系统级vimrc和用户级vimrc

  每一行作为一个命令执行

vimrc使用:

vim test.txt

:-h vimrc    //查看vimrc帮助文档

:version //查看版本信息

注释以''单引号方式注释

:set all "显示目前所有的环境参数设定值
:set hlsearch "高亮度反白(高亮度搜寻)
:set nohlsearch "取消高亮度反白(高亮度搜寻)
:set backspace=2 "在编辑的时候可随时用退格键删除 (0、1的时候,只针对刚输入的字符有效)
:set autoindent "自动缩排
:set noautoindent "取消自动缩排
:set ruler "可显示最后一行的状态
:set showmode "左下角那一行的状态
:set nu "显示行号
:set nonu "取消行号
:set bg=dark "显示不同的底色色调
:syntax on "进行语法检验,颜色显示
:syntax off "关闭语法检验

vim不同模式: 

基础入门:

vim寄存器

增查删改常规操作

vim组合规律

高级功能:

缓冲区与多文件编辑

多窗口与标签分组

文本对象与宏

Visual模式

原文地址:https://www.cnblogs.com/kaixinyufeng/p/9887331.html