Linux开发工具--vim

Linux开发工具--vim

一、vim的基本概念

vim编辑器,只负责写代码,vim是一款多模式的编辑器

vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下

1.正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进去Insert mode下,或者到last line mode

2.插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按[ESC]键可回到命令行模式。该模式是后面用的最频繁的编辑模式。

3.底行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入。

二、常见命令

cpp 复制代码
yy   //将当前光标所在行,复制  nyy  //n表示具体的数字
p   //将复制行进行粘贴  np     //n表示具体的数字
u   //撤销操作
ctrl+r   //撤销u操作
shift+g   //光标定位到文件的结尾
gg      //光标定位到文件的最开始
n+shift+g   //光标定位到文件的任意行
shift+6(^)  //将光标定位到当前行的最开始
shift+4($)    //将光标定位到当前行的最结尾
w,b          //以单词为单位进行光标的前后移动
h,j,k,l     //左,下,上,右
dd     //将当前光标所在的行,剪切(删除)ndd
shift+~   //大小写切换
shift+r   //进入替换模式
r     //替换光标所在的字符,支持nr
x or X (shift)  //删除光标所在的字符,包括之前或者之后  nx

底行模式

cpp 复制代码
set no/nonu    //打开行号,或者取消行号
vs            //文件名:分屏操作
w             //写入,w!(强制写入)
q             //退出,q!(强制退出)
:!cmd         //(cmd表示要执行的命令),不退出vim执行对应的命令(执行命令行,编译,运行,查看man)等
ctrl按着不动,w快速按两下    //进行左右分屏切换

三、简单配置vim

配置文件的位置

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

2.而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:".vimrc"。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。

3.切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~

4.打开自己目录下的.vimrc文件,执行 vim .vimrc

常用配置选项,用来测试

1.设置语法高亮: syntax on

2.显示行号: set nu

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

使用插件

要配置好看的vim,原生的配置可能功能不全,可以选择安装插件来完善配置,保证用户是你要配置的用户。

如果自己不想配置,可以进入下面这个网站一键进行配置,其中包含了常用的一些操作。

链接: https://gitee.com/HGtz2222/VimForCpp?_from=gitee_search

相关推荐
卡比巴拉—林9 分钟前
Linux SSH免密登录配置(双向免密)
linux·运维·ssh
NineData13 分钟前
NineData 5.0 产品发布和生态伙伴大会,圆满举办!
运维·数据库·人工智能
薛定猫AI20 分钟前
【技术干货】AI Agent 自动化业务流程实战:从零构建智能营销系统
运维·人工智能·自动化
香蕉鼠片23 分钟前
Docker
运维·docker·容器
环流_1 小时前
【多线程初识】
linux·运维·服务器
CAAS_IFR_zp1 小时前
vConTACT3: 机器学习实现可扩展和系统的病毒层级分类
linux·运维·服务器
一个人旅程~1 小时前
Linux Mint(Ubuntu)如何在没有网卡驱动情况下利用手机上网安装旧电脑网卡驱动程序指导书
linux·windows·经验分享·电脑
Lugas Luo1 小时前
DVR 存储工具深度分析报告 (测试与产品视角)
linux·嵌入式硬件·测试工具
杨云龙UP1 小时前
ODA-Oracle实践记录:通过Navicat导出导入表CSV文件并清理重复数据,处理OA待办延迟刷新问题_20260416
linux·运维·服务器·数据库·sql·mysql·oracle
Oliver_LaVine2 小时前
java项目启动报错:CreateProcess error=206, 文件名或扩展名太长
java·linux·jenkins