06 vim工具

目录

  1. 概念
  2. 模式
  3. 基本操作
  4. 配置

1. 概念

vim是一个历史悠久的,多模式的编辑器,是vi的升级版。和ide不同,编辑器仅能编写文本,不能运行代码,现阶段的代码编译的各个过程会分开按步骤执行

2. 模式

vim有很多种模式,想要编写代码需要掌握三种模式,分别是命令模式(command mode)、插入模式(insert mode)、底行模式(last line mode),模式区别如下:

  • 正常/普通/命令模式:

控制屏幕光标移动,字符或行的删除,移动赋值某段进入insertmode下,或者到last line mode

  • 插入模式(insert mode)

只有在insert mode下,才可以文字输入,按esc键回到命令模式,这个是使用最频繁的

  • 末行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作,命令模式下,shift+:进入该模式,打开vim,底行输入: help vim-modes

一共有12种模式:six BASIC modes和six ADDITIONAL modes

3. 基本操作

输入vim [文件名]就可以进入vim编辑页面,刚进入会处于正常模式,需要切换到插入模式,左下角显示的是模式

【正常模式】切换【插入模式】

插入模式可以正常输入文字

输入a 或 i 或 o

【插入模式】切换【正常模式】

按esc键回到正常模式

【正常模式】切换【底行模式】

shifit+:

退出vim和保存文件,在末行模式输入:wq 保存并退出

正常模式命令

  • 插入模式

    按 i 进入插入模式,是从光标当前位置开始输入

    按 a 进入插入模式,是从目标光标所在位置下一个位置开始输入

    按 o 进入插入模式,是插入新的一行,从行首开始输入

  • 从插入模式改为命令模式

    按esc键

  • 移动光标

    可以用上下左右键移动,正规的是h j k l 分别是左下上右

    按 [G]: 移动到文章的最后
    常用 按 [$]: 移动到光标所在行的行尾
    常用 按 [^]: 移动到光标所在行的行首

    按 [w]: 光标到下个单词的开头

    按 [e]: 光标到下个单词的结尾

    按 [b]: 光标回到上个单词的开头

    按 [#l]: 光标移动到第#个位置

    按 g:移动到文章的最后
    常用 按 [gg] : 光标到文本开始
    常用 按 [shift+g] : 光标到文本末尾
    常用 n+shift+g: 光标定位文件的任意行

    按「ctrl」+「b」:屏幕往"后"移动一页

    按「ctrl」+「f」:屏幕往"前"移动一页

    按「ctrl」+「u」:屏幕往"后"移动半页

    按「ctrl」+「d」:屏幕往"前"移动半页

  • 删除文字

    「x」:每按一次,删除光标所在位置的一个字符

    「#x」:例如,「6x」表示删除光标所在位置的"后面(包含自己在内)"6个字符

    「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符

    「#X」:例如,「20X」表示删除光标所在位置的"前面"20个字符

    「dd」:删除光标所在行

    「#dd」:从光标所在行开始删除#行

  • 复制
    常用 [dd]: 光标所在行,剪切(删除) ,也可以ndd,删除几行

    「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

    「#yw」:复制#个字到缓冲区
    常用 「yy」:复制光标所在行到缓冲区。可以配合nyy,输入数字复制几行

    「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。
    常用「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。可以配合np,输入数字复制几次

  • 替换
    常用 「r」:替换光标所在处的字符。支持nr

    「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

    shift + ~: 大小写替换

  • 撤销
    常用 「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次回

    复。
    常用「ctrl + r」: 撤销的恢复

  • 更改

    「cw」:更改光标所在处的字到字尾处

    「c#w」:例如,「c3w」表示更改3个字

  • 跳转到指定行

    「ctrl」+「g」列出光标所在行的行号。

    「#G」:例如,「15G」,表示移动光标至文章的第15行行首。
    常用 x: 删除光标所在字符,也可以nx,之后几个

shift+r: 进入替换模式,退出按esc,替换模式替换光标所在的字符

末行模式命令

  • 列出行号

    set nu\],取消行号 \[set nonu

  • 跳转到文件某一行

    #\]: 表示数字,按回车键就会跳转

    /关键字\]: 先按/键,再输入想寻找的字符,如果这一次不是,可以这一会按n会往后查找 \[?关键字\]: 先按?号,再输入想寻找的字符,如果第一次不是想找的,按n会一直往后找

    w\]: 保存,可以加! \[q\]: 退出,加!号的意思是强制退出 \[wq\]: 保存并退出,可以加!号

底行模式再次打开一个文件,可以分屏操作,也可以创建不存在的文件

vs 文件名

输入 !cmd

不退出vim执行命令 (执行命令行,编译,运行,查看man)等

4. 配置

配置文件的位置

在目录/etc下面,有个名为vimrc的文件,这个是系统公共的vim配置文件,对所有用户都有小

而在每个用户的根目录下,都可以自己建立一个.vimrc的文件,不存在创建

常用配置选项

语法高亮: syntax on

显示行号: set nu

设置缩进的空格数4:set shiftwidth=4

使用插件

要配置好看的vim,原生的配置可能功能不全,可以选择 安装插件。

安装TagList插件,下载taglist_xx.zip ,解压完成,将解压出来的doc的内容放到~/.vim/doc, 将解压出来

的plugin下的内容拷贝到~/.vim/plugin

在~/.vimrc 中添加: let Tlist_Show_One_File=1 let Tlist_Exit_OnlyWindow=1 let

Tlist_Use_Right_Window=1

安装文件浏览器和窗口管理器插件: WinManager

下载winmanager.zip,2.X版本以上的

解压winmanager.zip,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到

~/.vim/plugin

在~/.vimrc 中添加 let g:winManagerWindowLayout='FileExplorer|TagList nmap wm :WMToggle

然后重启vim,打开~/XXX.c或~/XXX.cpp, 在normal状态下输入"wm", 你将看到上图的效果。

更具体移步:点我, 其他手册,请执行 vimtutor 命令。

也可以直接输入命令,按回车自动安装别人上传的配置
点此转到

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

该脚本是git用户Hgtz222创建

需要输入root密码

卸载输入下面命令

bash ~/.VimForCpp/uninstall.sh

打开生成的.vimrc,修改缩进为4,将50-52行的2改为4

vim配置参考文档
vim从入门到精通

相关推荐
AI进化营-智能译站10 小时前
Jazzy ROS2入门指南系列05-配置VsCode实现ROS2项目开发
ide·vscode·ai·编辑器
小短腿的代码世界17 小时前
Qt量化策略编辑器深度解析:从DSL解析到可视化编排的完整架构
qt·架构·编辑器
咬人喵喵18 小时前
五一劳动节 SVG 交互图文案例大全
低代码·微信·编辑器·交互·svg
啾啾啾66618 小时前
VScode用cookie登录时,输入cookie值后按回车没反应
ide·vscode·编辑器
fqbqrr18 小时前
2604,vim可定制对话框
vim
Misnice19 小时前
Cursor 常用快捷键总结
编辑器
望眼欲穿的程序猿2 天前
苹果系统使用VsCode开发QT
ide·vscode·编辑器
其实防守也摸鱼2 天前
带你了解与配置phpmyadmin
笔记·安全·网络安全·pdf·编辑器·工具·调试
Rsun045512 天前
Oracle中常用语法
编辑器
非黑皆白2 天前
配置Vscode Claude Code 插件使用deepseek-v4-pro模型
ide·vscode·编辑器