目录

1. vim的基本概念

2. vim的基本使用

3. vim命令模式操作

3.1 移动光标

3.2 删除

3.3 复制

3.4 替换

3.5 撤销

3.6 更改

3.7 跳转

4. vim底行模式操作

4.1 列出行号

4.2 跳到文件中的某行

4.3 查找字符

4.4 保存文件

4.5 离开vim


1. vim的基本概念

      Vim(Vi IMproved)是一个 高度可配置的文本编辑器,由 Bram Moolenaar 于 1991 年发布,是 Unix 系统经典编辑器 vi 的增强版。它以其 高效、轻量、可扩展 的特性,成为程序员、系统管理员和高级用户的必备工具。

在学习如何使用之前,我们先了解一下vim的三种主要模式(不止这三种模式):命令模式,插入模式,底行模式。

命令模式 (Command Mode) —— 用于导航、复制、粘贴、删除等操作(默认模式)。

插入模式(Insert Mode) —— 用于输入和编辑文本(类似普通文本编辑器),在命令行。

底行模式 (Last Line Mode) —— 用于执行文件操作(保存、退出)、搜索、替换等命令。

2. vim的基本使用

输入命令 vim + 文件名 之后进入vim全屏编辑画面

此时进入vim之后是命令模式,按“a”键/“o”键/“i”键进入插入模式,或者按“ shift+;"键即输入“ :”进入底行模式。无论是在插入模式还是底行模式按“Esc”键就可以重新进入命令模式。

三种模式之间的切换方法:

切换到插入模式:

按“i”键进入插入模式后,从光标位置开始输入;

按“a”键进入插入模式后,从光标位置的下一位置开始输入;

按“o”键进入插入模式后,插入新的一行,从行首开始输入。

在进入底行模式后,退出vim的几种情况:

 :w    保存当前文件

:wq  保存并退出

:q!   不保存强制退出

3. vim命令模式操作

3.1 移动光标

我们可以直接用键盘上的光标来上下左右移动,但正规的vim是用写英文字母「h」、「j」、 「k」、「l」,分别控制光标左、下、上、右移⼀格

• 按「G」:移动到文章的最后

• 按「 $ 」:移动到光标所在行的“行尾”

• 按「^」:移动到光标所在行的“行首”

• 按「w」:光标跳到下个字的开头

• 按「e」:光标跳到下个字的字尾

• 按「b」:光标回到上个字的开头

• 按「# l」:光标移到该行的第#个位置,如:5l,56l

• 按[gg]:进入到文本开始

• 按[shift+g]:进入文本末端

• 按「ctrl」+「b」:屏幕往“后”移动一页

• 按「ctrl」+「f」:屏幕往“前”移动一页

• 按「ctrl」+「u」:屏幕往“后”移动半页

• 按「ctrl」+「d」:屏幕往“前”移动半页

3.2 删除

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

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

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

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

• 「dd」:删除光标所在行

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

3.3 复制

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

• 「#yw」:复制#个字到缓冲区

• 「yy」:复制光标所在行到缓冲区。

• 「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

• 「p」:将缓冲区内的字符贴到光标所在位置。

注意:所有与“y”有关的复制命令可以与“p”配合完成复制与粘贴功能。

3.4 替换

•「r」:替换光标所在处的字符。

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

3.5 撤销

• 「u」:如果您误执行⼀个命令,可以马上按下「u」,回到上⼀个操作。按多次“u”可以执行多次回复。

• 「ctrl+r」:撤销的恢复

3.6 更改

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

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

3.7 跳转

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

• 「#G」:例如,「15G」,表示移动光标至文章的第15行首。

4. vim底行模式操作

在使用末行模式之前,请记住先按「ESC」键确定您已经处于正常模式,再按「:」冒号即可进⼊末行模式。

4.1 列出行号

• 「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。

4.2 跳到文件中的某行

• 「#」:「#」号表示⼀个数字,在冒号后输入⼀个数字,再按回车键就会跳到该行了,如输入数字 15,再回车,就会跳到文章的第15行。

4.3 查找字符

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

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

那么 / 和 ?查找有和区别?我们可以实际操作试验⼀下

4.4 保存文件

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

4.5 离开vim

• 「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟⼀个「!」强制离开vim。

• 「wq」:⼀般建议离开时,搭配「w」⼀起使用,这样在退出的时候还可以保存文件。

大家可以多多实际操作一些,去熟悉这些操作。

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

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

相关文章

《零基础掌握飞算Java AI:核心概念与案例解析》

前引:飞算科技是一家专注于企业级智能化技术服务的公司,核心领域包括AI、大数据、云计算等。其Java AI解决方案主要面向企业级应用开发,提供从数据处理到模型部署的全流程支持!飞算Java AI是一款基于人工智能技术的Java开发辅助工…

Chrome腾讯翻译插件transmart的安装

文章目录一、官网地址二、安装过程1. 下载插件2. 解压crx3, chrome安装三、如何使用一、官网地址 腾讯翻译插件官网 二、安装过程 1. 下载插件 点击上面的官网地址,下拉到如图所示chrome插件位置,点击立即下载 2. 解压crx 从压缩文件中解压出crx文…

IOMMU的2级地址翻译机制及多级(2~5)页表查找

IOMMU的2级地址翻译机制及多级(2~5)页表查找 摘要:IOMMU是现代计算机系统中用于I/O设备(如GPU、NIC、网络接口卡)的地址翻译和保护机制,类似于CPU的MMU(Memory Management Unit),但专为设备DMA(Direct Memory Access,直接内存访问)设计。它支持虚拟化环境(…

C++STL标准模板库详解

一、引言STL(Standard Template Library)是 C 标准库的核心组成部分,其中容器(Containers) 作为数据存储的基础组件,为开发者提供了丰富的数据结构选择。本文将聚焦 STL 容器的核心类型,结合具体…

神经网络 常见分类

📚 神经网络的常见分类方式可以从不同角度来划分,以下是几种主流思路,帮你快速梳理清晰:1️⃣ 按网络结构分类前馈神经网络(Feedforward Neural Network, FNN) 数据从输入层→隐藏层→输出层单向传递&#…

生产环境Redis缓存穿透与雪崩防护性能优化实战指南

生产环境Redis缓存穿透与雪崩防护性能优化实战指南 在当下高并发场景下,Redis 作为主流缓存组件,能够极大地提升读写性能,但同时也容易引发缓存穿透、缓存击穿及缓存雪崩等问题,导致后端依赖数据库的请求激增,系统稳定…

【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)

🔥个人主页:艾莉丝努力练剑 ❄专栏传送门:《C语言》、《数据结构与算法》、C语言刷题12天IO强训、LeetCode代码强化刷题、洛谷刷题、C/C基础知识知识强化补充、C/C干货分享&学习过程记录 🍉学习方向:C/C方向 ⭐️人…

嵌入式硬件篇---常见的单片机型号

以下是目前常用的单片机型号及其应用场景、优劣势的详细解析,结合最新行业动态和技术特性,帮助你精准匹配需求:一、经典 8 位单片机:低成本入门首选1. 51 系列(代表型号:AT89C51、STC89C52)应用…

windows下ArcGIS 10.8.2下载安装教程

ArcGIS是由美国环境系统研究所(Esri)开发的一款功能强大且应用广泛的综合性地理信息系统(GIS)软件平台,在空间数据的采集、管理、分析、可视化和共享等方面表现出色,是GIS领域的标杆产品。它拥有丰富的功能…

防御保护15

混合密码体系 --- 数字信封 逻辑 --- 先用快速的对称密钥来对消息进行加密,保证数据的机密性。然后只需要保证对称密钥的机密性即可,使用公钥密钥体系来对对称秘钥消息进行加密。身份认证和数据认证技术 Hash散列 指纹 ---> 单向散列函数 Hash --->…

Linux上管理Java的JDK版本

1.alternatives简介alternatives是 Linux 系统(尤其是 ​​RHEL/CentOS/Fedora​​ 等基于 RPM 的发行版)中用于管理​​同一软件多个版本​​的系统工具。它通过维护符号链接(软链接)的层级结构,帮助用户在不冲突的情…

webrtc编译arm/arm64

webrtc版本 m125版本 编译arm sudo apt install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf //下载失败,需要多次尝试 python3 build/linux/sysroot_scripts/install-sysroot.py --arch=arm //python3 bui

【读论文】医疗AI大模型:百川开源Baichuan-M2

1. 引言 最新百川开源了一个可以和openai新模型掰手腕的医疗垂直大模型:Baichuan-M2在HealthBench基准上取值60.1的高分,超过了gpt-oss-120b。这次一起回顾下百川给的技术报告。 2. Baichuan-M2概览:“模型+系统” Baichuan-M2的成功源于一套精心设计的、端到端的训练与优…

OBOO鸥柏丨75寸/86平板企业办公会议触控一体机核心国产化品牌招投标参数

OBOO鸥柏整机参数要求:55寸/65寸/75寸/85-86寸/98寸/100寸/110寸/115寸智能会议平板教学触控一体机/智慧黑板触摸屏参数要求。系统可灵活选择如:支持安卓(Android),Windows可选择。并在KylinOS银河麒麟操作系统、统信U…

DCT域信息隐藏中超参数影响的深度解析:从理论到实践的完整指南

摘要 随着数字媒体技术的飞速发展,信息隐藏技术在版权保护、内容认证和隐私保护等领域发挥着越来越重要的作用。离散余弦变换(DCT)域作为信息隐藏的经典载体,因其与JPEG压缩标准的天然兼容性而备受关注。然而,DCT域信息隐藏的效果很大程度上取决于各种超参数的精心调节,…

YOLOv8环境配置命令

【YOLOv8】一小时掌握,从0开始搭建部署YOLOv8系列教程,安装推理自定义数据集训练与搭建_哔哩哔哩_bilibili【YOLOv8】一小时掌握,从0开始搭建部署YOLOv8系列教程,安装推理自定义数据集训练与搭建共计10条视频,包括&…

Maven私服配置模版

参考课程: 【黑马程序员 JavaWeb开发教程】 [https://www.bilibili.com/video/BV1m84y1w7Tb] ZZHow(ZZHow1024)Maven 的 settings.xml 配置文件中(从私服下载项目到本地) 在 servers 标签中,配置访问私服的个人凭证(访问的用户名和…

《智能体(Agent)速记指南》

《智能体(Agent)速记指南》 📘 一句话核心:智能体 会判断 会用工具,能独立完成任务的系统。一、智能体到底是什么? ✅ 一句话定义:能独立跑完一个完整任务,不用人盯着。 ⚠️ 别搞…

BERT模型引入及详解

BERT模型引入及详解 参考 视频: ELMo 模型(双向 LSTM 模型解决词向量多义问题 博客: BERT模型BERT详解:概念、原理与应用一文读懂BERT ELMo模型 参考: 视频: ELMo模型(双向LSTM模型解决词向量多义问题) 博客: 【…

开源 Arkts 鸿蒙应用 开发(十六)自定义绘图控件--波形图

文章的目的为了记录使用Arkts 进行Harmony app 开发学习的经历。本职为嵌入式软件开发,公司安排开发app,临时学习,完成app的开发。开发流程和要点有些记忆模糊,赶紧记录,防止忘记。 相关链接: 开源 Arkts …