【Linux】文本编辑器Vim(Vim的操作方法、命令集,Vim插件安装配置)

本文主要是介绍【Linux】文本编辑器Vim(Vim的操作方法、命令集,Vim插件安装配置),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

00.前言

01.基本模式

02.基本操作

03.命令集

正常模式

末行模式

04.插件安装


00.前言

Vim(Vi IMproved)是一款强大的文本编辑器,是Unix系统中经典的Vi编辑器的增强版本。它在功能和灵活性方面超越了传统的Vi,并成为了许多开发者和系统管理员首选的编辑器。

vim具有以下优点:

  1. 模式驱动:Vim具有不同的工作模式,包括Normal模式、Insert模式、Visual模式等。每个模式下,按键的功能和行为都不相同。这种设计使得编辑过程更高效。

  2. 高度可定制:Vim可以通过编辑配置文件(.vimrc)来定制各种行为和快捷键。用户可以根据自己的喜好和需求进行个性化设置,以满足自己的工作习惯。

  3. 强大的编辑功能:Vim提供了丰富的编辑功能,包括正则表达式搜索、替换、自动缩进、代码折叠、语法高亮等。这些功能使得在编辑大型文件或编程时更加方便和高效。

  4. 插件生态系统:Vim拥有庞大的插件生态系统,用户可以通过安装和使用插件来扩展Vim的功能。这些插件可以提供代码补全、语法检查、版本控制集成等功能。

  5. 跨平台支持:Vim不仅可以在Unix-like系统(如Linux、macOS)上运行,还可以在Windows和其他操作系统上使用。这使得用户可以在不同的平台上保持一致的编辑体验。

Vim高度可定制、功能强大且高效,这使得其广为人喜爱。

01.基本模式

Vim具有很多工作模式,这里我们主要介绍三种,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)

正常/普通/命令模式

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

插入模式

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

末行模式

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

:help vim-modes

02.基本操作

  • 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面,进入vim之后是处于【正常模式】的,想要输入文字需要切换到【插入模式】

vim test.c

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

输入 a / i / o

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

按 [esc] 返回正常模式

  • 【正常模式】切换到【末行模式】

「shift + ;」, 其实就是输入「:」

  • 【末行模式】切换到【正常模式】

按 [esc] 返回正常模式

  • 保存并退出

在末行模式下输入w(保存当前文件)wq(保存并退出)q!(强制退出不保存)

03.命令集

正常模式

插入模式

  • 按下[i]键后,光标会停留在当前位置,你可以在当前光标位置之前插入文本。
  • 按下[a]键后,光标会移动到当前位置的下一个字符处,你可以从当前位置的下一个字符开始输入文本。这对于需要在当前字符后添加内容时非常有用。
  • 按下[o]键后,会另起一行插入新的一行,并将光标移动到新行的行首,以便你可以从新行的开头开始输入文本。这在需要在当前行下方添加内容时很方便。

切换命令模式

  • 按下【esc】键。

移动光标

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

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

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

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

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

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

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

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

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

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

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

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

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

删除文字

  • 「x 」每按一次,删除光标所在位置的一个字符。x 键用来删除光标所在位置的字符。

  • 「#x」 例如,6x 表示删除光标所在位置及其后面的 6 个字符。#x 表示删除光标后指定数量的字符。

  • 「X」大写的 X,每按一次,删除光标所在位置的前一个字符。X 命令用来删除光标前面的字符。

  • 「#X」 例如,20X 表示删除光标所在位置的前面 20 个字符。#X 表示删除光标前指定数量的字符。

  • 「dd」 删除光标所在行。dd 命令将删除光标所在行的整行内容。

  • 「#dd」 从光标所在行开始删除 # 行,不修改原文本,进行一行一行的整理。#dd 命令用于删除从当前行开始数的指定行数。

复制

  • 「yw」 将光标所在位置到字尾的字符复制到缓冲区中。yw 命令用于复制从光标当前位置到单词末尾的字符。

  • 「 #yw」 例如,3yw 表示复制光标位置开始的 # 个字到缓冲区中。#yw 表示复制指定数量的字到缓冲区。

  • 「yy」 复制光标所在行到缓冲区中。yy 命令用于复制光标所在行的整行文本到缓冲区。

  • 「#yy」 例如,6yy 表示从光标所在的该行往下数 6 行文字,并将其复制到缓冲区中。#yy 命令用于复制指定数量的行到缓冲区。

  • 「p」 将缓冲区内的字符粘贴到光标所在位置。p 命令用于将之前复制到缓冲区的内容粘贴到光标位置。

替换

  • 「r」替换光标所在位置的字符。按下 r 键后,输入你要替换成的字符,当前光标所在的字符将被替换。

  • 「R」 进入替换模式,替换光标所在处的字符。在替换模式(R 模式)下,你可以连续替换多个字符,直到按下 ESC 键为止。

撤销

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

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

更改

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

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

跳转

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

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

末行模式

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

列出行号

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

跳转

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

查找

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

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

保存

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

离开

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

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

04.插件安装

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

注意:我们不建议在root用户下进行配置,出于以下考虑:

  1. 安全性:在 root 用户下配置 Vim 可能会增加系统面临的安全风险。如果配置文件中存在漏洞或者恶意代码,攻击者可能利用这些漏洞获取 root 权限,并对系统进行破坏或者植入恶意软件。

  2. 意外操作:在 root 用户下配置 Vim 时,可能会误操作导致系统文件被修改或删除,进而影响系统的正常运行。在非 root 用户下配置 Vim 则可以减少这种风险,因为非 root 用户的权限受到限制,无法直接修改系统关键文件。

  3. 权限控制:使用普通用户配置 Vim 可以更好地控制权限。普通用户可以通过 sudo 或 su 命令获取 root 权限来执行需要特权的操作,这样既能完成任务又能保持系统安全。

普通用户下配置的vim只在当前用户生效,安装vim插件需要遵循以下步骤:

  1. 选择插件管理器:首先,你需要选择一个适合的插件管理器来帮助你管理 Vim 插件。如果是使用云服务器的就不需要考虑这个,因为厂商已经为你修改好了插件管理器。

  2. 配置插件管理器:在用户的根目录下新建一个~/.vimrc文件,首先打开用户根目录,然后创建文件,随后打开.vimrc配置文件

cd /home/user

touch .vimrc

vim .vimrc

然后就可以通过插件管理器提供的命令或配置,可以轻松地安装所需的 Vim 插件。这里推荐一个大佬配置好的vim环插件:GitHub - ma6174/vim: vim配置文件和插件(不再维护)

这篇关于【Linux】文本编辑器Vim(Vim的操作方法、命令集,Vim插件安装配置)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/792080

相关文章

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Redis Cluster模式配置

《RedisCluster模式配置》:本文主要介绍RedisCluster模式配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录分片 一、分片的本质与核心价值二、分片实现方案对比 ‌三、分片算法详解1. ‌范围分片(顺序分片)‌2. ‌哈希分片3. ‌虚

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示