博客主页:【夜泉_ly】
本文专栏:【Linux】
欢迎点赞👍收藏⭐关注❤️
文章目录
- 📚 前言
- ⚙️ 基本模式
- 📝 命令模式常见操作
- 📄 底行模式常见操作
- 🛠️ 自定义 Vim 配置
- ✨ 补充点
📚 前言
本文主要内容:
Vim是一个文本编辑器,
比nano的功能多了亿点,但也比nano麻烦亿点。
首先,Vim的模式特别多,常见的就有三种:命令模式、插入模式、底行模式。
其次,Vim的相关指令也特别多,常见的有几十条。
本文将挑选一些有代表性的内容,以方便初学者快速入门。
⚙️ 基本模式
首先,来看看刚刚说的三个常见模式:
- 命令模式(默认模式):用于输入命令,不直接编辑文本。
- 插入模式:用于输入和编辑文本。
- 底行模式:用于输入更复杂的命令,例如保存、退出、搜索等。
下面通过一段具体的操作,
简单的演示一下三种模式:
创建和打开文件
先创建一个 .c
文件,然后 vim test.c
:
打开后就是这样的:
此时,你处于命令模式,也叫默认模式。
在这一模式下,所有的输入都会被视为命令,而非文本输入。
所以现在你输 Hello
之类的并没有什么用,不会在文件中显示。
切换到插入模式
输入 i
进入插入模式:
接下来可以输入代码:
保存并退出
想要保存并退出,有很多方法,这里先讲一个:
首先,需要从 插入模式 回退到 命令模式:按键盘左上角的 Esc
。
此时,屏幕左下角的 -- INSERT --
不见了:
然后,需要从 命令模式 进入 底行模式:按 Shift :
(其实就是敲冒号)
最后,在底行模式输入 wq
,这代表你要保存退出:
具体而言:
w
是保存。q
是退出。wq
则是同时保存并退出。
退回命令模式
如果进入了底行模式,想要退回命令模式,怎么办?
还是按键盘左上角的 Esc
:
注意事项
切换模式时,
需避免直接在插入模式与底行模式之间切换。
需要切换时,请先 Esc
,即回到命令模式。
📝 命令模式常见操作
-
光标定位
箭头所指的就是光标目前的位置gg
定位光标到整个文本的开始位置shift g
定位光标到文本的末尾n shift g
定位光标到第n
行
-
复制与粘贴
- (
n
)y y
复制光标所在行(以及之后的n-1
行) - (
n
)p
粘贴(n
行)到光标所在行的下一行 y y p
复制并粘贴一行y y n p
复制并粘贴n
行n1 y y n2 p
复制n1
行并粘贴n2
次
- (
-
撤销与重做
u
撤销Ctrl R
撤销撤销
-
剪切与删除
- (n)
dd
剪切、删除光标所在行(及后续的n-1
行)
- (n)
-
行内导航
shift $
定位光标到行末shift ^
定位光标到行首w
/b
光标按照单词进行行内 / 跨行移动h
左,j
下,k
上,l
右
-
替换与删除字符
shift ~
快速大小写转换- (n)
r
替换 shift r
进入替换模式,Exc
退出- (n)
x
删除光标之后的(n个)字符
-
搜索
/内容
在文件中搜索指定内容n
跳转到下一个匹配项N
跳转到上一个匹配项
📄 底行模式常见操作
-
:%s/旧内容/新内容/g
全局替换文件中的内容 -
:w
保存文件 -
:q
退出 Vim -
:wq
或:x
保存并退出 -
:w!
强制保存 -
:q!
强制退出 -
:wq!
强制保存并退出 -
:set nu
显示行号 -
:set nonu
去掉行号 -
:!
后可以跟指令,
可以实现不退出Vim就运行外部的指令,比如 pwd
🛠️ 自定义 Vim 配置
在家目录下,
通过自定义 .vimrc
文件,
可以设置 Vim 的默认行为和外观。
touch .vimrc
vim .vimrc
打开后输入 set nu
或 set number
:
再次使用Vim时就会默认带上行号。
示例 .vimrc 文件
下面是我到处CV的,参考价值不大:
syntax on " 启用语法高亮
set number " 显示行号
set autoindent " 自动缩进
set ignorecase " 搜索时忽略大小写
set tabstop=4 " 设置 Tab 宽度为4个空格
set shiftwidth=4 " 设置缩进宽度为4个空格
set hlsearch " 高亮搜索结果
set mouse=a " 启用鼠标支持
set incsearch " 增强搜索体验
set confirm " 提示保存更改
set ruler " 显示光标位置
set background=dark " 设置背景为暗色
filetype plugin on " 启用文件类型插件
set matchtime=5 " 设置匹配括号的时间
set encoding=utf-8 " 设置编码为UTF-8
set langmenu=zh_CN.UTF-8 " 设置语言菜单为中文
set autowrite " 自动写入
set autoread " 自动读取文件变化
✨ 补充点
-
多文件编辑
vim code1.c code2.c
或在 Vim 中打开
code1.c
后,
通过底行模式使用:vs code2.c
。
Ctrl ww
切换光标所在文件 -
批量注释(修改):
命令模式Ctrl V
h
\j
\k
\l
选区Shift I
切换模式:
双斜杠注释:
最后按Esc
:
-
取消注释(批量删除):
选区后按D:
希望本篇文章对你有所帮助!并激发你进一步探索编程的兴趣!
本人仅是个C语言初学者,如果你有任何疑问或建议,欢迎随时留言讨论!让我们一起学习,共同进步!