【Linux】linux系统VIM简介_使用

1、简介

1.1定义

  • VIM(Vi IMproved)是 Vi 编辑器的增强版本,提供了更多的功能和改进的用户界面。
  • 它被广泛认为是程序员的编辑器首选之一,特别适用于代码编辑和文本处理。
  • VIM 拥有多种模式,每种模式都有其特定的功能和操作方式。

1.2常用模式

  • 命令模式(Normal Mode):默认模式,用于执行复制、粘贴、剪切、查找、替换等操作。
  • 插入模式(Insert Mode):从命令模式进入,用于插入和编辑文本。
  • 可视模式(Visual Mode):选择文本块,以便进行复制、剪切等操作。
  • 底行模式(Command-Line Mode):从命令模式通过输入冒号(:)进入,用于保存文件、退出 VIM、查找替换等操作。

2、使用

2.1基本模式分类

  • 命令模式(正常模式,一般模式)
    • 直接用vim打开文本时,默认进入此模式。
    • 在此模式下,可以移动光标、复制粘贴、删除、替换、模式切换等操作,但不能直接编辑文本。
    • 光标移动可以使用如h(左)、j(下)、k(上)、l(右)等命令。
    • 撤销、恢复、重复等操作可以通过u(撤销)、Ctrl + r(重做)等命令实现。
  • 插入模式(编辑模式)
    • 从命令模式进入编辑模式,需要按下iIoOaArR等键之一。
    • 屏幕左下方会出现INSERTREPLACE等字样,表示已进入编辑模式。
    • 在此模式下,可以插入和删除文本。
    • 要回到命令模式,按Esc键。
  • 底行模式(尾行模式,命令行模式)
    • 在命令模式下输入:/可以将光标移到末行。
    • 在此模式下,可以执行如保存退出(:wq)、查找(/后接搜索内容)、替换(如:s@要查找的内容@替换的内容@g)等操作。

2.2常用快捷键

  • 移动光标
    • 字符间跳转:h(左)、j(下)、k(上)、l(右)。
    • 单词间跳转:w(下一个单词)、b(上一个单词)。
    • 行首行尾跳转:^(行首非空白字符)、0(行首)、$(行尾)。
    • 行间跳转:nG(跳转到第n行)、gg(跳转到第一行)、G(跳转到最后一行)。
    • 翻屏操作:Ctrl + f(向前翻页)、Ctrl + b(向后翻页)。
  • 编辑命令
    • 插入文本:i(当前字符前)、a(当前字符后)、o(当前行下方新开一行)。
    • 删除文本:x(删除当前字符)、dd(删除当前行)。
    • 复制粘贴:yy(复制当前行)、p(粘贴)。
    • 替换文本:r(替换当前字符)、cw(更改当前单词)。
  • 其他命令
    • 撤销操作:u(撤销)、Ctrl + r(重做)。
    • 保存退出::wq(保存并退出)、:q!(不保存强制退出)。
    • 查找替换:/(开始查找)、:s(替换命令)。

2.3多文件与多窗口操作

  • 使用:vs 文件名命令可以在当前窗口右侧打开一个新窗口并加载指定文件。
  • 使用Ctrl + w + w可以在不同窗口间切换。
  • 使用:wqall可以保存所有文件并退出vim。

2.4定制vim的工作特性

  • 在底行模式下,可以通过设置选项来定制vim的工作特性,但这些设置仅对当前vim进程有效。
  • 要使设置永久生效,需要修改vim的配置文件(通常是~/.vimrc)。
相关推荐
HLC++11 小时前
Linux的进程间通信
android·linux·服务器
华清远见IT开放实验室13 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
groundhappy15 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕16 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
张小姐的猫17 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
栩栩云生17 小时前
AI 写代码犯的错,早被写进了错题集
linux·安全·ai编程
imc.1119 小时前
linux基础IO
linux·运维·服务器
BelongPanda20 小时前
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
linux·nginx
酷可达拉斯21 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983421 小时前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器