【Linux学习】Linux开发工具——vim

🔥个人主页: Forcible Bug Maker
🔥专栏: Linux学习

目录

🌈前言

前言:Linux编辑器------vim的介绍和使用

vim 是一款在 Linux、Unix 以及类 Unix 系统(比如 macOS)上广泛使用的文本编辑器。它最初由 Bram Moolenaar 在 1991 年发布,作为 vi 编辑器的改进版。vi 编辑器是 Unix 系统上最早的屏幕编辑器之一,由 Bill Joy 在 1976 年为 BSD Unix 系统编写。

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。

🔥vim的基本概念

vim编辑器有很多种模式,目前主要介绍常用的三种,分别是 命令模式(Command mode)插入模式(Insert mode)底行模式(Last line mode),这三种模式的区别如下:

  • 命令模式:
    控制屏幕光标的移动,字符,字或行的删除,移动复制某区段及进入Insert mode,或者进入Last line mode。
  • 插入模式:
    只有在Insert mode下,才可以做文字输入,按[Esc]键可回到命令模式。
  • 底行模式:
    文件保存或退出,也可进行文件替换,找字符串,列出行号等操作。在命令模式下::符号,也就是shift + ;可以切换到底行模式。

也可以在底行模式下输入:help vim-modes查看更多的模式介绍。

🔥vim的基本操作

进入vim,在系统提示符号输入vim+文件名称之后,就可以进入vim全屏幕编辑画面:

$ vim test.c


需要注意的是,进入vim之后,首先处于[命令模式],需要切入到[插入模式]才能输入文字。

  • [命令模式]切换至[插入模式]
    • 输入i
    • 输入a
    • 输入o
  • [插入模式]切换至[命令模式]
    • [Esc]
  • [命令模式]切换至[底行模式]
    • [Shift + ;],其实就是输入[:]

退出vim并保存文件:

:w	->保存当前文件
:wq	->保存并退出
:q	->退出
:q!	->强制退出
:w!	->强制写入

这时候按回车键,test.c就成功被编辑并保存了。我们可以使用gcc编译这份代码并运行它。

🔥vim命令模式的命令集

  • 移动光标
    • vim虽然可以使用键盘上的[↑][↓][←][→]键来控制移动 ,但正规的vim是用小写英文字母[h][j][k][l],分别控制光标左,下,上,右移动一个。
    • 按[G]:移动到文本末尾
    • 按[gg]:移动到文本开始
    • 按[$]:移动到光标所在行的"行尾"
    • 按[^]:移动到光标所在行的"行首"
    • 按[w]:光标跳转到下个字(单词)的开头
    • 按[e]:光标跳转到下个字(单词)的结尾
    • 按[b]:光标回到上个字的开头
    • 按[Ctrl+b]:屏幕往"后"移动一页
    • 按[Ctrl+f]:屏幕往"前"移动一页
    • 按[Ctrl+u]:屏幕往"后"移动半页
    • 按[Ctrl+d]:屏幕往"前"移动半页
  • 删除文本
    • [x]:每按一次,删除光标所在位置的一个字符
    • [#x]:删除贯标在内的的往后#个字符
    • [X]:大写的x,每按一次,删除光标所在位置之前的一个字符
    • [#X]:删除光标所在位置之前的#个字符
    • [dd]:删除光标所在行
    • [#dd]:从光标所在行开始删除#行
  • 复制
    • [yw]:将光标所在之处到字尾的字符串复制到缓冲区中
    • [#yw]:复制#个字到缓冲区
    • [yy]:复制光标所在行到缓冲区
    • [#yy]:复制所在行开始的#行到缓冲区
    • [p]:将缓冲区内的字符粘贴到光标所在位置
  • 撤销操作
    • [u]:如果误执行一个命令,可以按[u],回到上一个操作
    • [Ctrl+u]:撤销的恢复。如果误执行一个撤销,可以按[Ctrl+u],回到撤销前的状态
  • 跳跃
    • [#G]:移动光标至文章的第#行行首

🔥简单vim配置

在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:".vimrc"。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~打开自己目录下的.vimrc文件,执行vim .vimrc。

在里面可以设置常用配置,如:

  • 语法高亮:syntax on
  • 显示行号:set nu
  • 设置缩进空格数为4:set shiftwidth=4

再次用vim打开文件时,就会自动有相应的配置。给自己用户配置的不会影响别的用户。

如果想要配置好看的vim,原生的配置功能可能不全,可以选择安装插件来完善配置。在网上也可以查到更详细的配置选项。

⭐一键配置美观的vim

Gitee-配置vim

安装方法

在 shell 中执行指令(想在哪个用户下让vim配置生效, 就在哪个用户下执行这个指令. 强烈 "不推荐" 直接在 root 下执行):

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

卸载方法

在安装了 VimForCpp 的用户下执行:

bash ~/.VimForCpp/uninstall.sh

配置结果展示:

如果期间有什么配置觉得不顺手,也可以去当前用户下的.vimrc中调整相关配置。

🔥结语

本篇博客主要介绍了Linux开发工具------vim,同时讲解了其三种模式的基本使用,也简单介绍了如何配置vim。尽管 vim 的学习曲线可能比其他编辑器陡峭,但一旦掌握了它的基本操作和概念,你会发现它是一个非常强大和高效的文本编辑工具。

相关推荐
梁萌3 分钟前
Linux安装Docker
linux·运维·docker·helloworld·容器化部署
AITIME论道9 分钟前
论文解读 | EMNLP2024 一种用于大语言模型版本更新的学习率路径切换训练范式
人工智能·深度学习·学习·机器学习·语言模型
彩虹糖_haha38 分钟前
Linux高并发服务器开发 第五天(压缩解压缩/vim编辑器/查找替换/分屏操作/vim的配置)
linux·运维·服务器
旺仔学IT38 分钟前
Centos7中使用yum命令时候报错 “Could not resolve host: mirrorlist.centos.org; 未知的错误“
linux·运维·centos
qq_433618442 小时前
shell 编程(五)
linux·运维·服务器
青春男大3 小时前
java栈--数据结构
java·开发语言·数据结构·学习·eclipse
mashagua4 小时前
RPA系列-uipath 学习笔记3
笔记·学习·rpa
沐泽Mu4 小时前
嵌入式学习-QT-Day05
开发语言·c++·qt·学习
锦亦之22334 小时前
cesium入门学习二
学习·html
广而不精zhu小白5 小时前
CentOS Stream 9 挂载Windows共享FTP文件夹
linux·windows·centos