当前位置: 首页 > article >正文

VIM的下载使用与基本指令【入门级别操作】

VIM——超级文本编辑器

在这里插入图片描述

在当今时代,功能极其复杂的代码编辑器和集成开发环境(IDE)有很多。

但如果只想要一个超轻量级的代码编辑器,用于 Unix、C 或其他语言/系统,而不需要那些华而不实的功能,该怎么办呢?

这个时候,VIM就闪亮登场了!

Vim 的全称是 Vi IMproved(增强版Vi)。由 Bram Moolenaar 编写,它是一款免费开源的文本编辑器。Vim 最早于 1991 年发布,用于 UNIX 系统,其主要目的是改进 1976 年发布的 Vi 编辑器。

Vim 是 Vi 的最新且最受欢迎的版本,支持文本界面和图形界面,并能够运行在几乎所有已知平台上。

它很显著的特征便是它可以在终端运行,且可以完全通过键盘操作,无需鼠标或菜单(当然它也有图形化的界面)

VIM官网

VIM 的特点

  • 轻量级:占用资源少,启动速度快。
  • 跨平台:支持几乎所有操作系统,如 Linux、macOS 和 Windows
  • 高度扩展:丰富的插件支持
  • 命令优先形式:通过几个简单的命令就能完成复杂的文本操作
  • 低内存占用:Vim 对系统资源的需求非常少

Vim 的核心操作

基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)

命令模式

用户刚刚启动 vi/vim,便进入了命令模式。

这个状态下打下的所有字,都不是编辑文本内的内容,而是在写命令。

以下是普通模式常用的几个命令:

i – 切换到输入模式,在光标当前位置开始输入文本。
x – 删除当前光标所在处的字符。
: – 切换到底线命令模式,以在最底一行输入命令。
a – 进入插入模式,在光标下一个位置开始输入文本。
o:在当前行的下方插入一个新行,并进入插入模式。
O – 在当前行的上方插入一个新行,并进入插入模式。
dd – 剪切当前行。
yy – 复制当前行。
p(小写) – 粘贴剪贴板内容到光标下方。
P(大写)-- 粘贴剪贴板内容到光标上方。
u – 撤销上一次操作。
Ctrl + r – 重做上一次撤销的操作。
:w – 保存文件。
:q – 退出 Vim 编辑器。
:q! – 强制退出Vim 编辑器,不保存修改。

输入模式

在一般指令模式下,按 “a” “i” “o” 均可进入编辑模式,使用 Esc 键可以返回到普通模式。

在输入模式中,可以使用以下按键:

ENTER – 回车键,换行
BACK SPACE – 退格键,删除光标前一个字符
DEL – 删除键,删除光标后一个字符
方向键 – 在文本中移动光标
HOME/END – 移动光标到行首/行尾
Page Up/Page Down – 上/下翻页
Insert – 切换光标为输入/替换模式,光标将变成竖线/下划线
ESC – 退出输入模式,切换到命令模式

底线命令模式

在命令模式下按下 :(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

:w:保存文件。
:q:退出 Vim 编辑器。
:wq:保存文件并退出 Vim 编辑器。
:q!:强制退出Vim编辑器,不保存修改。
ESC 键可随时退出底线命令模式。

VIM的下载

以下以基于 Linux 的系统(如 Ubuntu)为例:

更新系统包:
打开终端,运行以下命令更新系统包:

sudo apt update && sudo apt upgrade -y

安装 Vim:
在终端输入以下命令:

sudo apt install vim -y

验证 Vim 安装:
安装完成后,运行以下命令确认 Vim 是否安装成功:

vim --version

如果显示版本信息,则 Vim 已成功安装。


http://www.kler.cn/a/404111.html

相关文章:

  • 动作评估学习笔记
  • 一维卷积神经网络(1D-CNN)
  • 2021 年 3 月青少年软编等考 C 语言三级真题解析
  • Perl 简介
  • 将网站地址改成https地址需要哪些材料
  • 电解车间铜业机器人剥片技术是现代铜冶炼过程中自动化和智能化的重要体现
  • Java基础终章篇(10)容器类与集合操作
  • 小熊派Nano接入华为云
  • Linux环境开启MongoDB的安全认证
  • 实验室管理自动化:Spring Boot技术的应用
  • 【PostgreSQL使用pg_filedump工具解析数据文件以恢复数据】
  • springboot基于Spring Boot的古城景区管理系统的设计与实现docx
  • C# IO文件操作
  • litepal proguardFiles android studio
  • java.nio.charset.MalformedInputException: Input length = 1
  • el-input绑定点击回车事件意外触发页面刷新
  • Python数据分析NumPy和pandas(四十、Python 中的建模库statsmodels 和 scikit-learn)
  • 【数据结构】用四个例子来理解动态规划算法
  • 一天速转golang!
  • docker 相关组成
  • 网络中的TCP协议详解
  • vxe-table 打印出货单、自定义打印单据
  • 【2024APMCM亚太杯B题】空调形状优化 模型+代码+论文
  • 什么是 C++ 中的移动语义?它的作用是什么?
  • Apache Maven 标准文件目录布局
  • STM32的中断(什么是外部中断和其他中断以及中断号是什么)