带你入门vim
Posted 爱敲代码的三毛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了带你入门vim相关的知识,希望对你有一定的参考价值。
文章目录
vi&vim
vi和vim的区别,简单来说它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi所有指令,而且还与一些新的特性在里面,比如语法高亮,可视化操作不仅可以在 终端运行,也可以运行于 mac os上。
vim 概念
vim是有着多种模式的文本编辑器,这里这介绍最常用的三种模式。
- 命令模式(默认模式)
控制屏幕光标的移动,字符、字和行的删除、移动复制某区段以及进入 插入模式下,或者进入 底行模式下 - 插入模式
只有在插入模式下才可以输入文字,按Esc键
就可以回到命令模式 - 底行模式
文件保存退出,也可以进行文件替换,查找字符串,列出行号等一系列操作,在命令模式下,shift+:
就可以 进入该模式,本质就是输入一个冒号。
查看所有 vim 模式 命令,进入vim 在底行模式 输入下面的命令
help vim-modes
vim共用16种模式,分为 6这种基本模式和 6种附加模式
vim的基本操作 (模式切换+保存退出)
语法:vim 文件名
注意:vim 命令 进入到 vim之后,默认是 处于命令模式的,要切换到插入模式后才能进行输入文字
-
[命令模式] 切换到 [插入模式]
-
输入a
-
输入i
-
出入o
也就是说输入 a、i、o都可以从命令模式切换到插入模式
-
[命令模式] 切换到[ 底行模式]
同时按住shift + :
,本质上就是输入冒号,就可以从命令模式切换到底行模式 -
[插入模式 或 底行模式] 切换到 命令模式
无论是在插入模式还是在底行模式下或者你不知道你在哪个模式,直接无脑按
Esc
就可以了 -
退出vim及其保存文件
在命令模式下输入:
进入底行模式
共有三个字母选项:w
:保存、q
:退出、!
:强制- 保存文件:
:w
- 不保存退出:
q
- 强制保存并退出:
wq!
- 强制退出:
q
- 强制保存:
w!
- 保存文件:
vim 命令模式操作汇总
移动光标
-
光标的移动:左
h
、下j
、上k
、右l
-
光标左右定位:
shift+^
,shift+$
,左右定位(直接将光标定位到当前行的字符
最左侧和最右侧)`空白字符不算 -
上下定位:
shift+g
定位到最后一行、gg
定位到第一行 -
指定定位:
n+shift+g
,n是数字表示 定位 到 第几行,比如 8+shift+g 定位到第八行开头 -
单词定位:
w
光标定位到下个单词的开头,e
光标定位到下个单词的结尾,b
光标定位 到上个单词的开头 -
向后定位:
数字+l
将光标移动到当前行的当前位置的后n个字符,如果是6+l
就是向后移动 6个字符 -
翻页:
ctrl+f
屏幕向后移动一页,ctrl+b
屏幕向前移动一页,ctrl+d
屏幕向后移动半页,ctrl+u
屏幕往前移动半页
删除文字
x
:每按一次,删除光标所在位置的第一个字符[#x]
:比如3x
表示删除光标所在位置的后面(包含 自己)的3个字符X
:大写X,每按一次删除光标所在位置前面的一个字符(不包括自己)#X
:大写X,比如10X
删除光标所在位置的前10个字符(不包括自己)dd
:删除光标所在的那一行#dd
:从光标所在行开始删#行,,比如4dd就上从当前行往下删4行(包括所在行)
复制剪切粘贴文字
yw
:将光标所在之处到字尾的字符复制到缓冲区(可理解为从某个单词的光标位置复制这个单词的字母,一般遇到不同类型的字符会停止复制)#yw
:复制#个单词到缓冲区(单词与单词的区分可以是单词或者字符或者中文,这可能不严谨)yy
:复制光标 所在行到缓冲区#yy
:复制光标所在行往后#行,包括当前行p
:将缓冲区的字符粘贴到光标所在位置(注意:所有于y
相关的复制命令都必须和p
配合才能 完成复制与粘贴功能)dd+p
:剪切当前行文字
替换文字
r
:替换光标所在字符,比如r+6
就是将光标所在字符替换成 6R
:不断替换光标所到之处的字符,知道按下Esc
键为止
撤销和恢复撤销
u
:立即撤回到上一次操作,类似于windows的Ctrl+zCtrl+r
:撤销恢复,恢复到撤销之前的状态
大小写切换
shirt + ~
:将光标所在处的字符小写替换成大小,大小替换成小写
底行模式命令汇总
shift + :
进入底行模式
显示行号
-
set nu
:显示行号 -
set nonu
:取消行号
保存退出
w
:保存、q
:退出、!
:强制,可以配合使用
在vim下执行Linux命令
-
!+[命令]
:不用退出vim执行Linux命令
再ls查询是否有编译成功的代码
执行编译成功的代码
vim分屏
vs 文件名
:分屏
如果文件不存在,该命令会自动创建,且要用命令保存,不保存最后退出 还是 不会在目录中出现
每个分屏都是一个vim,都可以进行vim多种模式的切换
ctrl + w
:分屏时,光标在多屏幕下进行切换
多个分屏可以用该命令进行切换,光标在哪就在哪个vim窗口里
vim配置
-
在
/etc/
下面,有个名为vimrc的文件,是系统中公共的 vim配置文件,对所有用户都有效 -
而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为
.vimrc
用vim .vimrc
打开文件就可以在里面添加一些vim配置 -
比如显示行号
set nu
配置了这个之后就不用在底行模式显示行号了
更多配置可自行百度
由于vim的配置非常麻烦,某些配置还需要安装插件。可以使用大佬在 Githup上的vim配置,只需要一条命令就可以使用齐全的vim配置
以上是关于带你入门vim的主要内容,如果未能解决你的问题,请参考以下文章