【linux】如何优雅的使用vim编辑器

基本指令

【linux】详解linux基本指令-CSDN博客

【linux】详解linux基本指令-CSDN博客

vim的基本概念

vim有很多模式,小编只介绍三种就能让大家玩转vim了, 分别是:
正常/普通/命令模式  插入模式   末行/底行模式
命令模式
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段
插入模式
文字输入,编制文本
低行模式
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下, shift+:(输入冒号)  即可进入该模式。

vim的基本操作

进入vim

vim+文件名:vim test.c

进入 vim 之后,是处于 命令模式
[命令模式]切换至[插入模式]
输入 a
输入 i
输入 o
[插入模式]切换至[命令模式]
目前处于 [ 插入模式 ] ,就只能一直输入文字
[命令模式]切换至[底行模式]
shift + ; , 其实就是输入「 :
[命令模式]下,按一下「:」冒号键进入[底行模式]
: w (保存当前文件)
: wq ( 输入「 wq , 存盘并退出 vim)
: q! ( 输入 q!, 不存盘强制退出 vim)
如下图

vim正常模式命令集

移动光标

vim 可以直接用键盘上的光标来上下左右移动,但正规的 vim 是用小写英文字母 h j k l 分别控制光标 左下上右 移一格
按「 G 」:移动到文章的最后
按「 $ 」:移动到光标所在行的 行尾
按「 ^ 」:移动到光标所在行的 行首
按「 w 」:光标跳到下个字的开头
按「 e 」:光标跳到下个字的字尾
按「 b 」:光标回到上个字的开头
按「 #l 」:光标移到该行的第 # 个位置,如: 5l,56l
按[ gg ]:进入到文本开始
按[  shift+g  ]:进入文本末端
按「 ctrl + b 」:屏幕往 移动一页
按「 ctrl + f 」:屏幕往 移动一页
按「 ctrl + u 」:屏幕往 移动半页
按「 ctrl + d 」:屏幕往 移动半页

删除文字

x 」:每按一次,删除光标所在位置的一个字符
#x 」:例如,「 6x 」表示删除光标所在位置的 后面(包含自己在内) ”6 个字符
X 」:大写的 X ,每按一次,删除光标所在位置的 前面 一个字符
#X 」:例如,「 20X 」表示删除光标所在位置的 前面 ”20 个字符
dd 」:删除光标所在行
#dd 」:从光标所在行开始删除 #

复制

yw 」:将光标所在之处到字尾的字符复制到缓冲区中
#yw 」:复制 # 个字到缓冲区
yy 」:复制光标所在行到缓冲区。
#yy 」:例如,「 6yy 」表示拷贝从光标所在的该行 往下数 ”6 行文字
p 」:将缓冲区内的字符贴到光标所在位置。注意:所有与 “y” 有关的复制命令都必须与 “p” 配合才能完成复制与粘贴功能

替换

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

撤销上一次操作

u 」:如果您误执行一个命令,可以马上按下「 u 」,回到上一个操作。按多次 “u” 可以执行多次回复。
ctrl + r : 撤销的恢复


更改

cw 」:更改光标所在处的字到字尾处
c#w 」:例如,「 c3w 」表示更改 3 个字

跳至指定的行

ctrl + g 」列出光标所在行的行号。
#G 」:例如,「 15G 」,表示移动光标至文章的第 15 行行首

vim底行模式命令集

列出行号

set nu : 输入「 set nu 」后,会在文件中的每一行前面列出行号。
跳到文件中的某一行
# : # 」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字 15, 再回车,就会跳到文章的第15 行。

查找字符

/ 关键字」 : 先按「 / 」键,再输入您想寻找的字符,如果第一次找的关键字不是想要的,可以一直按
n 」会往后寻找到要的关键字为止
? 关键字」:先按「 ? 」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n 」会往前寻找到您要的关键字为止。

保存文件

w : 在冒号输入字母「 w 」就可以将文件保存起来

离开vim

q 」:按「 q 」就是退出,如果无法离开 vim ,可以在「 q 」后跟一个「 ! 」强制离开 vim
wq 」:一般建议离开时,搭配「 w 」一起使用,这样在退出的时候还可以保存文件

配置vim

配置文件的位置
在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
可在根目录下查看
可以进入该目录查看通用配置文件
添加额外配置
通用的配置再插入模式下就像一个记事本一样,如果要写代码,写文本会很不舒服,而用户可以额外的为vim添加其他配置
用户可以在自己的家目录下查看是否有名字为  .vimrc 的文件(该文件为隐藏文件),没有的话可以自行创建
相关指令如下:
cd ~ :回到家目录
ls -a :查看隐藏文件
touch .vimrc : 创建配置文件
过程如下图
所谓的添加额外的配置就是在  .vimrc文件中保存一些配置选项,小编用如下选项让大家感受一下。
显示行号: set nu
先查看文件,如下图
进入 .vimrc 配置选项
再次查看文件

配置选项

如何配置出舒适的vim呢,只要将下面的所有配置拷贝到 .vimrc 即可

如果是CentOS7 可尝试如下方法一键配置

把下面的指令粘贴到命令行,一定要让它显示在一行上

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

粘完后回车,输入root密码即可

如下图

效果展示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/16709.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

obsidian Excalidraw 更换字体 最新版 手写字体

背景 Excalidraw 是 obsidian 中最厉害的插件之一,长期霸占插件排行榜第一。以其强悍的性能和灵活的可塑性受到大家的喜爱,可默认的字体对中文并不友好,网上大多数教程要不是过时了,要不是错的,还有就是太复杂&#x…

二、OpenWebUI 使用(.Net8+SemanticKernel+Ollama)

OpenWebUI的github上安装部署已经很详细,直接照着敲命令即可 GitHub:https://github.com/open-webui/open-webui 一、使用配置 1、访问:http://Ip:3000,打开如下OpenWebUI界面。 2、先点击“注册”,注册一个管理员帐号…

信息化赋能:干部监督工作的创新与实践

随着信息技术的迅猛发展,信息化手段在干部监督工作中的应用越来越广泛,为提升监督工作的效率和精准度提供了有力支持。以下是如何利用信息化手段扎实推进干部监督工作的几点建议: 一、搭建信息化平台,实现数据统一管理 要扎实推…

springboot带颜色的日志输出

话不多说直接贴全部代码在作解释 <?xml version"1.0" encoding"utf-8"?> <configuration><property name"pattern" value"%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg %n"/><propert…

Xinstall地推效果大揭秘:洞察用户需求,创新营销策略不再是难题

在互联网流量红利逐渐衰退的今天&#xff0c;企业如何快速搭建起满足用户需求的运营体系&#xff0c;成为了亟待解决的问题。特别是在地推领域&#xff0c;如何在多变的互联网环境下&#xff0c;迅速、有效地触达用户&#xff0c;扩大目标用户基数和流量池&#xff0c;成为了企…

一文了解ai问答机器人:特点、应用、影响

很多人都听过ai问答机器人这个词&#xff0c;也许对于大部分人来说&#xff0c;对它的印象就是智能&#xff01;这是不可置疑的。你在生活中肯定也接触了不少的ai问答机器人。但是关于ai问答机器人&#xff0c;你是否了解它的特点、应用领域和对人类未来的影响呢&#xff1f;Lo…

棱镜七彩荣获2024数字中国创新大赛两大奖项!

5月24日&#xff0c;供应链成熟度与开源技术主题活动暨数字中国创新大赛信创赛道全国总决赛颁奖仪式在福建福州成功举办。棱镜七彩“FOSSEye产品”&#xff0c;凭借在国产化支持、供应链成熟度、核心技术、功能体系、以及作品前景等多个维度的优异表现&#xff0c;荣获2024数字…

Pytorch深度学习实践笔记8(b站刘二大人)

&#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;pytorch深度学习 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibi…

视频汇聚管理安防监控平台EasyCVR程序报错“create jwtSecret del server class:0xf98b6040”的原因排查与解决

国标GB28181协议EasyCVR安防视频监控平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;平台支持7*24小时实时高清视频监控&#xff0c;能同时播放多路监控视频流…

java调用科大讯飞在线语音合成API --内附完整项目

科大讯飞语音开放平台基础环境搭建 1.用户注册 注册科大讯飞开放平台账号 2.注册好后先创建一个自己的应用 创建完成后进入应用可以看到我们开发需要的三个参数&#xff1a;APPID&#xff0c;APISecret&#xff0c;APIKey 3.因为平台提供的SDK中只支持了简单的中英两种语言语音…

Redis 可视化工具 RedisInsight 的保姆级安装以及使用(最新)

Redis 可视化工具 RedisInsight 的保姆级安装以及使用 一、下载 RedisInsight二、安装 RedisInsight三、使用 RedisInsight四、新建 Redis 连接 一、下载 RedisInsight 官网 https://redis.io/insight/填写基本信息之后点击 DOWNLOAD 二、安装 RedisInsight 双击安装包 点击下一…

cad角度如何精确到0.1

可以通过更改角度精度的方式把角度的标注精确到小数点后几位&#xff0c;具体方法如下&#xff1a; 1、打开一个CAD文档&#xff0c;在文档中画一个角&#xff0c;如下图&#xff1a; 文章源自设计学徒自学网-https://www.sx1c.com/47920.html 2、给此角进行角度的标注&#…

Java锁的策略

White graces&#xff1a;个人主页 &#x1f649;专栏推荐:Java入门知识&#x1f649; &#x1f649; 内容推荐:<多线程案例(线程池)>&#x1f649; &#x1f439;今日诗词:"你我推心置腹, 岂能相负"&#x1f439; 目录 锁的策略 乐观锁和悲观锁 轻量级锁…

[数据集][目标检测]森林火灾检测数据集VOC+YOLO格式362张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;362 标注数量(xml文件个数)&#xff1a;362 标注数量(txt文件个数)&#xff1a;362 标注类别…

四川音盛佳云电子商务有限公司铸就抖音电商新高度

在数字经济的浪潮中&#xff0c;抖音电商以其独特的魅力迅速崛起&#xff0c;成为新时代消费潮流的引领者。四川音盛佳云电子商务有限公司&#xff0c;作为抖音电商领域的佼佼者&#xff0c;凭借专业的团队和创新的理念&#xff0c;致力于为广大消费者提供优质、便捷的购物体验…

和可被k整除的子数组 ---- 前缀和

题目链接 题目: 分析: 补充知识 1. 同余定理: (a-b) % p 0即a-b能被p整除, > a % p b % p 2. c, java中 [负数 % 正数] 的结果是负数, 想要得到正确结果 > (a%pp)%p这道题和<和为k的子数组>类似, 利用前缀和的思想, 计算以i结尾的所有子数组, 前缀和为sum[i] …

探索编程逻辑中的“卡特牛(continue)”魔法

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、引言&#xff1a;卡特牛逻辑的魅力 二、卡特牛逻辑的解析 三、卡特牛逻辑的应用实例 …

sqlserver——查询(四)——连接查询

目录 一.连接查询 分类&#xff1a; 内连接&#xff1a; 1. select ... from A&#xff0c;B &#xff1b; 2. select ..from A&#xff0c;B where ..&#xff1b; 3.select ...,... from A join B on... 4. where 与 join...on 的区别 5. where位置的先后 导语&#xff1…

每日5题Day11 - LeetCode 51 - 55

每一步向前都是向自己的梦想更近一步&#xff0c;坚持不懈&#xff0c;勇往直前&#xff01; 第一题&#xff1a;51. N 皇后 - 力扣&#xff08;LeetCode&#xff09; class Solution {public List<List<String>> solveNQueens(int n) {List<List<String>…

如果查看svn的账号和密码

一、找到svn存放目录&#xff08;本地默认存放SVN用户信息的目录为&#xff1a;C:\Users\Administrator\AppData\Roaming\Subversion\auth\svn.simple&#xff09;每个人的电脑环境不一样&#xff0c;因人而异。 如果找不到直接搜索svn.simple 二、下载密码查看工具 链接: 百…