vim编辑器使用

news2024/11/17 3:39:15

目录

vim基本概念

vim基本操作 

插入模式 

命令模式 

移动光标

删除字符 

复制+剪切 

替换 

撤销 

更改 

移动指定行 

底行模式 

命令集 

vim简单配置 


vim基本概念

      vim编辑器有三种模式:

  • 命令模式:光标移动,字符或行移动,复制,删除;切换到插入模式或底行模式
  • 插入模式:进行文字输入
  • 底行模式:文件保存退出,文件替换,找字符串,列出列号等操作。

vim基本操作 

关系概念图:

插入模式 

  • i:从光标当前位置输入
  • a:从当前光标下一个位置输入
  • o: 换行输入

命令模式 

移动光标

  • h j k l :左,下,上,右
  • gg:回到文件开头
  • shift+g:回到文件结尾
  • shift+^:移动到光标所在行行首
  • shift+$:移动到光标所在行行尾
  • w:左向右光标移动到下一个单词开头
  • b:右向左光标移动到下一个单词开头
  • e:左向右光标移动到下一个单词结尾
  • n+l:改行光标向右移动n个字符 ,例如5l
  • ctrl+b:屏幕向后移动一页
  • ctrl+f:屏幕向前移动一页
  • ctrl+u:屏幕向后移动半页
  • ctrl+d:屏幕向前移动半页

删除字符 

  • x:删除当前光标位置字符
  • shift+x:删除光标位置的前一个字符
  • n+x:从光标位置起删除n个字符 

复制+剪切 

  • yy:复制当前行到缓冲区
  • n+yy:复制当前行开始往下数的n行到缓冲区
  • p:把缓冲区字符贴到光标所在位置
  • n+p:贴n次
  • dd:剪切当前行到缓冲区,不进行p操作即是删除
  • n+dd:删n行
  • yw:光标所在位置到字尾复制到缓冲区
  • n+yw:复制n个字到缓冲区

替换 

  • r:替换光标位置字符
  • shift+r:相当于进入替换模式,替换光标所在处字符 

撤销 

  • u:撤销
  • ctrl+u:撤销撤销 

更改 

  • cw:将光标所在位置开始到字尾的字符删除,然后进入插入模式
  • cnw:光标所在位置开始删除n个字符,然后进行插入模式 

移动指定行 

  • ctrl+g :列出当前行行号
  • n+shift+g:移动到第n行行首

底行模式 

命令集 

  • set nu:列出行号
  • n:光标移动到第n行
  • /+关键字:查找关键字字符,如果第一次搜索不是想要的,按n转到下一个搜索(第一次结果为处于最上面的结果)
  • ?+关键字: 查找关键字字符,按n转到下一个搜索结果(第一次结果为光标所在位置向上最近的一个结果)按n先往上找,再往下找。
  • w:保存文件
  • q:退出文件
  • wq:保存并退出
  • w!:强制保存
  • q!:强制退出
  • wq!:强制保存并退出
  • vs + 文件名:多文件编辑,使用ctrl+w+w进行屏幕切换

vim简单配置 

要想将vim配置的很好需要花费不小的时间,对于现阶段而言没有必要。

下面这行指令可以帮助我们简单配置vim

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

直接使用即可

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

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

相关文章

iTOP-RK3568开发板Android kernel移植-单独编译内核

此方法常用于 kernel 的开发和调试,以下的方法既编译 kernel 部分时, 同 时打包成 boot.img, 这样加快了我们开发的速度; 进入内核目录下, 输入以下命令: cd kernel make ARCHarm64 CC../prebuilts/cla…

Vue:axios

1、 第三方库方式, 基于 Promise 的 HTTP 库:axios (对 XMLHttpRequest进行的封装) 即: axios.get().then() 2、跨域访问 定义:在 a 页面中想获取 b 页面中的资源,如果 a 页面和 b 页面所处的协…

Java基础从入门到精通系列(一)

1、Java简介 Java语言是一种高级、并发、面向对象的计算机编程语言,由Sun Microsystems公司于1995年推出。Java广泛应用于Web应用程序开发、移动应用程序开发以及大型企业级应用程序的开发中。Java语言具有跨平台、安全性好、可移植性强、易学易用等优点&#xff0…

JavaSE学习进阶day04_01 Date类

第一章 Date类 首先对时间的几个补充有必要知道: 时间起点: 心得: 如果以后我们仅仅要展示时间,那么可以用Date和SimpleDateFormat(格式化) 如果我们要拿着两个时间进行计算,用Date和SimpleD…

【C++升级之路】第十二篇:模板进阶 | 非类型模板参数 模板特化 类模板的分离编译 模板优缺点总结

🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【C学习与应用】 ✒️✒️本篇内容:非类型模板参数,函数模板特化,类模板特化(全特化,部分特化&a…

【系统集成项目管理工程师】信息系统集成专业知识

信息系统集成专业技术 一 信息系统建设 1 信息系统生命周期 立项阶段:即概念阶段或需求阶段,这一阶段根据用户业务发展和经营管理的需要,提出建设信息系统的初步构想,然后对企业信息系统的需求进行深入调研和分析,形…

K8s结合docker部署

原生安装步骤 安装必要的环境依赖与工具 sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg \lsb-release下载证书更新 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-key…

Linux基础命令-seq打印数字序列

Linux基础命令-sed流编辑器 前言 seq命令通常是用来打印一串有规律的数字,常与其他命令搭配使用,一起来看下它的用法。 一. 命令介绍 在doc文档中查看seq命令的含义 NAMEseq - print a sequence of numbers DESCRIPTIONPrint numbers from FIRST to…

4.14-4.16学习总结

多线程: 线程: 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。 进程: 进程是程序的基本执行实体 举个例子:360运行之后,它就可以看做是一个进程,但…

【UE4】关卡流送的demo

关卡流送功能可以将地图文件加载到内存中,或者从内存中卸载,并在游戏过程中切换地图的可视性。 这样一来,场景便能拆分为较小的地图块,并且只有相关部分才会占用资源并被渲染。 正确设置后,开发者便能创建大型、无缝衔…

c++STL容器之序列式容器

目录 vector容器 vector对象的默认构造 vector的初始化 vector的遍历 vector的增删改查 vector末尾的添加移除操作 vector的数据存取 deque容器 deque对象的默认构造 deque末尾的添加移除操作 deque的数据存取 stack容器 stack对象的默认构造 stack的push()与po…

Midjourney科普介绍

Midjourney是啥? Midjourney是一个由Midjourney研究实验室开发的人工智能程序,可根据文本生成图像,于2022年7月12日进入公开测试阶段,使用者可通过Discord的机器人指令进行操作,可以创作出很多的图像作品。 以下这些…

ROS2中将octomap发布到Moveit中作为碰撞物体

1.安装准备 这里假设你已经装好了ROS2以及Moveit2(都用二进制安装就行,不用从源码安转),没有安装好的,可以按照鱼香ROS的教程安装,两三行命令就搞定了。 我的ROS2版本为humble,请根据你使用的实…

银行数字化转型导师坚鹏:银行同业核心产品与营销策略解读

数字化背景下银行同业核心产品与营销策略解读课程背景: 数字化背景下,很多银行存在以下问题: 不清楚银行同业核心产品发展现状? 不清楚如何银行同业产品营销策略? 不知道如何更好地挖掘他行优质客户? 课…

国产化系统改造实践(未完)

一、项目背景 2020 年,红帽公司宣布,将在 2021 年 12 月 31 日和 2024 年 6 月 30 日分别终止对 CentOS 8 和 CentOS 7 的服务支持,把 CentOS 项目的工作和投资集中在CentOS Stream 上。 CentOS Linux 8已于2021年12月31日停止维护,CentOS Linux7也 将于2024年6月停服。s所…

技术创业者必读:从验证想法到技术产品商业化的全方位解析

导语 | 技术创业之路往往充满着挑战和不确定性,对于初入创业领域的人来说,如何验证自己的创业想法是否有空间、如何选择靠谱的投资人、如何将技术产品商业化等问题都需要认真思考和解决。在「TVP 技术夜未眠」第六期直播中,正马软件 CTO、腾讯…

【《C Primer Plus》读书笔记】第17章:高级数据表示

【《C Primer Plus》读书笔记】第17章:高级数据表示17.1 研究数据表示17.2 从数组到链表17.3 抽象数据类型(ADT)17.4 队列ADT17.5 用队列进行模拟17.6 链表和数组17.7 二叉查找树17.8 其他说明17.1 研究数据表示 在开始编写代码之前&#xf…

【2023】前端JWT详解

概述 回顾登录的流程: 接下来的问题是:这个出入证(令牌)里面到底存啥? 一种比较简单的办法就是直接存储用户信息的JSON串,这会造成下面的几个问题: 非浏览器环境,如何在令牌中记录…

C/C++每日一练(20230416)

目录 1. 求数列第n项值 ※ 2. 整数转换英文表示 🌟🌟🌟 3. 数组中找出最大值及索引位置 ※ 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 求数…

微信小程序引入骨架屏

骨架屏的使用越来越广泛。在微信小程序中使用骨架屏如果自己实现,不同的页面对应不同的骨架屏,会有一定难度;不过,微信小程序已经提供生成骨架屏功能,使得我们在开发中非常方便,下面介绍如何生成 在生成骨架…