Linux编辑器——vim的使用

1. 了解vim

vim是岁Linux和UNIX系统分发的vi编辑器的改进版本。vi / vim的区别简单来说,他们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。

2.vim的基本概念

vim共有12种基本模式,其中6种基本模式,6种条件模式。在这里主要链接3种模式,分别是命令/普通/正常模式(command mode)、插入模式(Insert mode)、底行模式(last line mode)。

2.1 普通模式

 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入insert mode下,或者到last line mode

2.2 插入模式

只有在insert mode下,才可以在做文字输入,按下[ESC]键可回到command mode模式下。这一模式是使用最频繁的编辑器。

2.3 底行模式

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,shift + : 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入 :help vim-modes

3. vim的基本操作

第一次打开vim时,这里的第一次不是初次使用,而是每次刚打开时的状态,vim以命令模式启动。可用于导航、剪切和粘贴,以及其他文本操作。通过单个字符几件操作进入各个其他的模式,访问特定的编辑功能。
在这里插入图片描述

  • 按 i 键进入插入模式,其中从键盘输入的所有文本变为文件的文本内容。按 ESC 键返回到命令模式。
  • 按 v 键(V、Ctrl + v)进入可视化模式,可在其中选多个字符进行文本操作。使用 v 键进行多行,使用Ctrl+v键可选择文本块。v,V,Ctrl + v也可用于退出可视化模式返回普通模式。
  • 按 : 键启动扩展命令模式,可执行的任务包括写入文件进行保存,以及退出vim编辑器。

3.1 如何进入vim

使用 vim filename,打开文件,进入vim全屏幕画面。

vim test.c

需注意,进入vim以后处于 [ 普通模式 ],要切换到 [ 插入模式 ] 才能输入文字。

3.2 从普通模式进入插入模式

提示:以下操作都必须在普通模式下才可进行操作

i   从光标当前位置开始输入,进入插入模式
I  光标回到行首开始插入,进入插入模式
a  从光标所在位置的下一个位置开始输入,进入插入模式
A  光标移动到行尾开始插入,进入插入模式
o  从光标所在行的下一行添加新行,进入插入模式
O  从光标所在行上行添加新行,进入插入模式
s  删除光标所在行,进入插入模式

3.3 从插入模式进入普通模式

直接按 [ESC] 键

3.4 从普通模式进入底行模式

[ shift + ; ],其实就是输入 [ : ]

4. vim普通模式命令集

4.1 进入插入模式

在这里推荐三种常用的按键:

i   从光标当前位置开始输入,进入插入模式
a  从光标所在位置的下一个位置开始输入,进入插入模式
o  从光标所在行的下一行添加新行,进入插入模式

4.2 移动光标

h  上
j  下
k  左
l  右
$  移动到光标所在行的“行尾”
^  移动到光标所在行的“行首”
w  光标按单词向后移动(光标跳到下一个单词的开头)
b  光标按单词向前移动(光标跳到上一个单词的开头)
e  光标调到下一个单词的尾部
#l  光标移到该行第#个位置,如:5l(跳到该行的第5个位置,这个第几个位置时以光标所在的位置开始)
gg  进入到文本开始
shift + g  进入到文本末端(最后一行的行首)
Ctrl + b  屏幕往后移动一页
Ctrl + f  屏幕往前移动一页
Ctrl + u  屏幕往后移动半页
Ctrl + d  屏幕往前移动半页

4.3 删除文字

x  每按一次,删除光标所在位置的一个单词
X  每按一次删除光标所在位置前面一个字符
dd  删除(剪切)光标所在行

注意:

  • 以上三种操作,在操作前面加上 # 都有对应操作删除 # 个/行字符
    • #x:删除光标所在位置的后面(包含自己在内)# 个字符
    • #X:删除光标所在位置前面 # 个字符
    • #dd:从光标所在行开始删除
  • dd 操作一般意义上来说起剪切作用,将光标所在行剪切到缓冲区,当配合 p (粘贴) 操作时就为剪切操作,当不配合 p 操作时就为删除操作。

4.4 复制

yw  复制一个单词(复制至缓冲区)
yy  复制光标所在行(复制至缓冲区)
p  将缓冲区内的字符粘贴至光标所在位置。

注意:

  • #yw :复制 # 个字到缓冲区
  • #yy :拷贝从光标所在行的该行往下数 # 行的文字

4.5 替换

r  替换光标所在字符
R  替换光标所到之处的字符

注意:
 所有与 y 有关的复制命令都必须与 p 配合才能完成复制与粘贴功能。

4.6 撤销上一次操作、更改、跳至指定的行

u  如果误执行一个命令,可以马上按下 u,回到上一个操作。按多次 u 可以执行多次恢复。
Ctrl + r  反撤销,如果误按了 u ,但又不想撤销,可以按 Ctrl + r 来反撤销。
cw  更改光标所在处的字到字尾处。这项操作会将光标所在出的字删除,并进入插入模式。
Ctrl + g  列出光标所在行的行号。
#G  移动光标至文本的第 # 行行首。

5. vim的底行模式命令集

使用底行模式之前,一定要先按 ESC 键确定已经处于普通模式,再按 : 冒号即可进入到底行模式

5.1 列出行号、跳到文件中的某一行

set nu  输入 ste nu 后,会在文件中的每一行列列出行号。
#  跳到文件中的第 # 行。在冒号之后输入一个数字#,再按回车键就可以跳到该行了。

5.2 查找字符

/关键字  先按 / 键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按 n 会往后寻找到要的关键字为止。
?关键字  先按?键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按 n 会往前寻找想要的关键字为止。

5.3 保存文件、离开vim

在普通模式下,按[ : ]进入到底行模式,进行一下操作可以执行以下操作,退出vim及保存文件。

:w  保存当前文件
:q  退出vim
:q!  强制退出vim,不保存文件
:wq  保存当前文件,并退出vim

6. 可视化模式执行拖拉和放置

Ctrl + v  进入列视图选中模式
v  进入行视图选中模式
=  缩进模式
gg  光标移动到文件首行
G  光标移动到文件末尾行
gg = G  全文按C语言语法风格缩进对齐

利用方向键选择多个字符进行复制。

7. 最后

在普通模式下:

  • :vnew 文件名  进入分屏模式
  • Ctrl + ww  光标在两个界面里面切换

猜你喜欢

转载自blog.csdn.net/meng_lemon/article/details/83218624