文章目录
- vim的基本介绍
- vim的基本操作
- vim常见的命令
- 命令模式下的命令
- yy+p
- n+yy
- n+p
- u
- ctrl+r
- G
- gg
- n+G
- $
- ^
- w
- b
- h,j,k,l
- dd
- n+dd
- n+dd+p
- ~
- shift+r
- r
- n+r
- x
- n+x
- 底行模式下的命令
- set nu
- set nonu
- vs 源文件
- w
- q
- !+command(命令)
- vim配置
- 解决无法使用sudo问题
vim的基本介绍
首先vim是linux下的一款编辑器软件,只能写代码,vim是一个多模式编辑器软件。它有三种模式:
1.命令模式
2.插入模式
3.底行模式
我介绍vim的时候,大家再测试的时候可能会发现自己的vim会与我有所不同,不用担心因为我的vim是配置过的,在最后一部分会给大家讲vim如何配置。
vim的基本操作
首先要编辑代码就要先创建文件,然后用vim打开。
这里进入以后,vim会默认在命令模式
模式的切换:
上图就是vim各个模式的切换方法,命令模式相当于中间模式,要想底行模式切换到插入模式就得先切换到命令模式,
底行模式下:
vim保存:w(保存所写的代码)w!(强制保存)
vim退出:q(退出vim编辑模式)q!(强制性退出)
w和q可以合并使用,但是一定要先保存再退出。
vim常见的命令
命令模式下的命令
yy+p
yy功能:复制绿色光标所在行
p功能:从光标的下一行开始,粘贴一次复制的内容,并移动光标到复制内容的第一行
起始:
然后yy和p
n+yy
功能:从光标所在行开始向下复制n行(n在输入的时候为具体的数字例如:5yy,之后的n也是如此将不会再详细说明)
起始:
然后2yy和p
n+p
功能:从光标的下一行开始,粘贴n次复制的内容,并移动光标到复制内容的第一行
起始:
然后2yy+5p
u
功能:撤销之前的操作
起始:
然后2yy+5p
然后u撤销
ctrl+r
功能:撤销u的操作
起始:
然后2yy+5p
然后u
然后Ctrl+r
G
功能:光标直接定位到文件结尾
起始:
然后G
gg
功能:光标直接定位到文件最开始
起始:
然后gg
n+G
功能:光标直接定位到第n行
起始:
然后10G
$
功能:光标直接定位到行的最结尾
起始
然后$
^
功能:光标直接定位到行的最开始
起始:
然后^
w
功能:光标按单词为单位,向后移动
起始:
然后w
b
功能:以单词为单位向前移动
起始:
然后b
h,j,k,l
h:光标向左移动
j:光标向下移动
k:光标向上移动
l:光标右移动(小写L)
dd
功能:删除光标所在行
起始:
然后dd
n+dd
功能:从光标所在行开始删除n行
起始:
然后9dd
n+dd+p
功能:剪切
起始:
9dd+p(在return后面p)
~
功能:光标所在处进行大小写切换
起始:
然后~
shift+r
功能:进入替换模式,从光标所在位置开始替换
起始:
然后shift+r进入替换模式
按ESC退出替换模式
r
功能:替换光标所在位置的一个字符
起始:
然后r+c
n+r
功能:从光标所在处开始替换n个字符
起始:
然后5r+c
x
功能:删除光标处的一个字符
起始:
然后x
n+x
功能:从光标处开始向后删除n个字符
起始:
然后5x
底行模式下的命令
set nu
功能:调出行号
起始:
然后set nu
set nonu
功能:取消行号
起始:
然后set nonu
vs 源文件
功能:分屏打开其它文件,如果源文件不存在则自己创建一个
起始:
然后vs myfile.c
我们可以看到光标在myfile.c文件,那么如何切换到test.c文件呢?
键盘按:Ctrl+w+w即可切换
我们还可以从test.c复制或者剪切内容到myfile.c
w
功能:保存vim所编辑的内容
q
功能:退出vim
!+command(命令)
功能:在不退出vim的情况下指向命令
起始:
然!+command(命令)
退出去看我们确实多了个a.out的文件
运行
我们确实成功了
vim配置
如果vim配置过,在工作目录下会有.vimrc文件如果没有,则自己创建一个然后自己在文件里面配置vim,在文件里面不知道怎么配置的,可以在网上搜索一般都搜索的到。
给大家演示一下:
我们发现工作目录下没有./vimrc,所以自己创建一个。
然后打开.vimrc就可以开始配置了
比如:
加上行号
保存退出,并创建一个源文件,然后打开
我们会发现自动有了行号,所以vim就是这么配置的。
解决无法使用sudo问题
在这之前我们大部分初学者应该的不能使用sudo,这是因为没有添加信任关系,那么如何添加呢?
首先先切换成root用户然后用vim 打开/etc/sudoers
然后:调出行号
大概在100多行有个
我们只要在复制107行,然后粘贴在107行下面,然后把%wheel换成用户名即可,最后wq!强制退出。到这就已经可以使用了。