马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
如果你刚开始在 Linux 下写 C/C++,绕不开 vim、gcc、gdb 这三件套。这篇笔记从 vim 的基础操作讲起,重点说清楚它的三种模式怎么切换、命令模式里哪些快捷键最值得先记住,以及怎么把 vim 环境配置成顺手的开发工具。对正在搭建 Linux 开发环境、做嵌入式或后端选型的工程师来说,这些基础操作直接影响日常编码效率,也是后续配合 gcc 编译、gdb 调试的前提。
核心观点
vim 是 vi 的升级版,包含了更加丰富的功能。它的学习曲线陡,核心难点不在命令多少,而在于要先建立"模式"意识——命令模式、插入模式、底行模式各司其职,切换逻辑搞清楚了,剩下的快捷键才有地方挂。
先记住模式切换,再谈快捷键
很多人第一次用 vim 会懵:为什么敲键盘没反应、为什么退不出去。原因就是 vim 打开后默认停在命令模式,你敲的字符被当成指令而不是文字。我自己踩过的坑是:进去想直接打字,结果触发了一堆操作。
三种模式的定位可以这样理解:
- 命令模式:默认模式,用来移动光标、删除、复制、粘贴等,不能直接输入文字。
- 插入模式:真正能打字写代码的模式,从命令模式按 i、a、o 等键进入。
- 底行模式:用于保存、退出、查找替换等,从命令模式按 : 进入。
三种模式之间的切换关系,下面这张图说得很直观,建议对着图多练几遍形成肌肉记忆:
vim 的启动语法
启动 vim 的基本写法是:
vim [文件名]
不跟文件名就直接开一个空缓冲区,跟了文件名就打开对应文件(不存在则新建)。下面这张图是启动后的初始界面:
三种模式分别长什么样
光看文字描述容易混淆,直接对照下面三张界面图来认。
命令模式是打开文件后的默认状态,此时底部一般显示文件名等信息,按键被当作命令处理:
插入模式通常左下角会显示 -- INSERT --,这时敲什么就输入什么:
底行模式在窗口最底下一行输入命令,比如 :w 保存、:q 退出:
命令模式里先掌握这几个移动快捷键
命令模式下快捷键非常多,不建议一次全背。先记住下面几个光标定位操作,日常写代码够用一大半:
- shift + 4:光标移动到行尾。
- shift + 6:光标移动到行首。
- shift + g:定位到文本末尾。
- gg:定位到文本最开始。
这几个键位组合起来,就能在大文件里快速跳转。我的建议是先把"行首/行尾/文首/文末"四个动作练熟,再逐步扩展到删除、复制、粘贴类命令。
适用场景与选型建议
vim 适合哪些人、哪些场景,值得先想清楚再决定要不要投入时间学:
- 服务器远程运维:Linux 服务器上默认就带 vi/vim,不用装额外编辑器,改配置文件最省事。
- Linux 下 C/C++ 开发:配合 gcc 编译、gdb 调试,是很多嵌入式、后端项目的标准组合。
- 不推荐新手直接上手:如果你只是偶尔改改文本、又不熟悉命令行,图形化编辑器(VS Code、Sublime 等)学习成本更低;vim 的价值在长期高频使用中才体现出来。
选型上有个常见误区:把 vim 当成"必须会"的门槛。实际上它更像一项长期投资——前期投入大,后期在远程、无图形界面的环境里回报明显。
vim 环境配置:手动不如自动
默认的 vim 用起来并不顺手,比如没有行号、缩进不智能。配置方式有两种:
- 手动设置:每次进入 vim 后临时敲命令调整。原文明确不推荐这种方式,因为退出后就失效,下次还得重来。
- 自动设置:把配置写进配置文件,长期生效。这是原文推荐的做法,也是实际开发中通用的方式。
具体配置项原文未展开,这里不额外编造。方向是:把常用的显示、缩进、快捷键设置固化到配置文件里,避免重复劳动。
关键信息
- vim 是 vi 的升级版,功能更丰富,启动语法为
vim [文件名]。
- vim 有三种模式:命令模式(默认)、插入模式、底行模式,三者可互相切换。
- 命令模式常用定位快捷键:shift+4 行尾、shift+6 行首、shift+g 文末、gg 文首。
- vim 环境设置分手动与自动两种,原文推荐自动设置,手动设置不推荐。
qidao123.com企服评测-应用市场 编辑提示
本文是 Linux 入门笔记的一部分,聚焦 vim 基础操作。建议边看边在终端里实操,模式切换和快捷键只有动手练才记得住。后续可衔接 gcc 编译与 gdb 调试,形成完整的开发流程。
标题:vim编辑器常用命令与.vimrc环境配置实操指南
vim 是 Linux 下绕不开的文本编辑器,很多人第一次接触就被它的模式切换劝退。这篇内容整理自一篇 Linux 初阶教程的第二部分,聚焦两件事:命令模式和底行模式里真正高频用到的操作,以及怎么把 vim 配置成顺手的 C++ 开发环境。对刚上手 Linux 服务器、需要远程改配置文件的运维和开发同学来说,这份命令清单可以直接当速查表用。
命令模式:这些按键组合我每天都在用
vim 打开文件后默认在命令模式,光标移动和大部分编辑动作都靠键盘完成,手不用离开主键区。下面这些是我自己用得最多的:
- n + yy:复制当前行,前面加数字可以批量复制多行,比如
5yy 就是复制 5 行。
- n + p:粘贴,同样支持批量粘贴。
- n + dd:剪切并删除当前行,加数字批量删除,
3dd 一次删三行,改配置文件时特别省事。
- u:撤销上一步操作。手滑删错行的时候,这个键能救命。
- n + x:删除光标后面的字符,注意是「后面」,和退格键的方向相反。
- k / j / h / l:分别对应上、下、左、右移动光标。这四个键替代方向键,是 vim 老手的肌肉记忆。
- shift + ~:切换光标所在字符的大小写。
顺带说一句,刚学的时候容易把 x 和 dd 混着用,前者删字符、后者删整行,删错了先按 u 再说,不用慌。
底行模式:保存退出和分屏操作
在命令模式下输入 : 就进入底行模式,这里主要处理文件级别的操作。常用的几条:
- w:保存文件。
- q:退出。
- wq:保存并退出,改完配置最常敲的一条。
- !:强制执行的修饰符,比如
q! 就是不保存强制退出。
- set nu:显示行号。排查报错时按行号定位非常实用。
- vs 文件名:垂直分屏打开指定文件。
- ctrl + w(连按两下):在分屏的多个文件之间切换。
分屏这个功能在对比两份配置、或者一边看头文件一边写实现的时候很好用,比来回切窗口效率高不少。
配置 vim 环境:手动改不如直接用现成方案
vim 的所有环境设置,本质上都是写进 .vimrc 这个文件里。配置方式分两条路,一条是手动逐项添加,另一条是直接套用别人整理好的配置仓库。
手动设置(不推荐)
手动设置就是自己往 .vimrc 里一行行加配置。这种方式能完全掌控每一项,但缺点也明显:配置项多、语法要现查,新手很容易配到一半就放弃,而且换台机器还得重来一遍。
自动设置(推荐)
更省事的做法是直接用现成的配置仓库。原文给出的链接是:
https://github.com/askunix/VimForCpp
这是一个面向 C++ 开发的 vim 配置方案,克隆下来按说明执行安装脚本即可。装好之后的效果大致是这样:
适用场景与选型建议
这套命令和配置方案适合谁?我按几类人群说一下:
- Linux 初学者:先把命令模式那几个按键练熟,再考虑配置。配置再花哨,基础操作不熟照样卡壳。
- 需要远程改配置的运维:服务器上未必有图形界面,vim 是保底工具,
set nu 和分屏值得优先掌握。
- C++ 开发者:VimForCpp 这类现成方案能省掉大量插件调试时间,但要注意它依赖的插件版本可能随仓库更新变化,装之前最好看一眼仓库的 issue 和最近提交时间。
- 只想快速改个文件的临时用户:其实不必折腾配置,记住
i 进入插入模式、Esc 退出、:wq 保存退出,日常够用了。
风险提示一点:第三方 vim 配置仓库会往你的家目录写入文件和插件,如果在生产服务器上操作,建议先确认脚本内容,或者干脆在测试环境验证过再上。手动配置虽然慢,但可控性更强,取舍看你自己的场景。
关键信息
- 命令模式高频操作:
n+yy 复制、n+p 粘贴、n+dd 剪切删除、u 撤销、n+x 删字符、kjhl 移动光标、shift+~ 切换大小写。
- 底行模式常用命令:
w 保存、q 退出、wq 保存退出、! 强制执行、set nu 显示行号、vs 文件名 分屏、ctrl+w 连按两下切换分屏。
- vim 环境配置的实质是把设置项写进
.vimrc,手动设置可控但不推荐,自动设置推荐使用 VimForCpp 仓库:https://github.com/askunix/VimForCpp。
|