【Linux】vim(工具篇)

文章目录


什么是vim


Vim 是一种高度可配置的文本编辑器,最初由 Bram Moolenaar 在 1991 年基于 vi 编辑器创建。Vim 是"Vi IMproved"的缩写,意为"改进版的 Vi"。以下是一些关于 Vim 的关键特点和信息:

  1. 模式编辑:Vim 有多种操作模式,包括普通模式、插入模式、可视模式和命令模式。用户可以通过不同模式进行文本编辑、选择和命令输入。

  2. 高度可定制:Vim 允许用户通过配置文件(如 .vimrc)进行个性化设置,可以添加插件、映射快捷键、调整显示和行为等。

  3. 强大的文本处理功能:Vim 提供了丰富的文本处理命令和功能,如多行选择、查找和替换、自动补全、宏录制与播放等。

  4. 跨平台支持:Vim 可以在多种操作系统上运行,包括 Unix/Linux、Windows 和 macOS。

  5. 轻量且快速:Vim 以其启动速度快、占用资源少而闻名,适合在资源有限的环境中使用。

  6. 广泛的社区支持:由于其开源性质,Vim 有着活跃的用户和开发者社区,提供了丰富的文档、教程和插件。

  7. 插件系统:Vim 有一个强大的插件系统,可以通过各种插件扩展其功能,如语法高亮、代码片段、版本控制集成等。

vim的使用


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

普通模式(Normal Mode)

普通模式是 Vim 的默认模式。在这个模式下,你可以进行文本浏览和基本编辑操作,而不需要进入插入模式。普通模式的操作包括移动光标、删除文本、复制粘贴等。

常见操作

命令模式(Command Mode)

在普通模式下按 shift+;:) 进入命令模式。在这个模式下,你可以输入命令来执行文件级别的操作,如保存文件、退出 Vim、查找替换等。

批量化注释/批量化去注释

vim的配置


配置 Vim 主要是通过修改 Vim 的配置文件来实现的。这个配置文件通常叫做 .vimrc 文件,在不同操作系统中的位置可能略有不同。以下是配置 Vim 的一些基本方法和步骤:

  1. 创建或打开 .vimrc 文件
cpp 复制代码
vim ~/.vimrc
  1. 基本配置示例
cpp 复制代码
" 设置行号
set number

" 启用语法高亮
syntax on

" 启用自动缩进
set autoindent
set smartindent

" 设置缩进宽度
set tabstop=4
set shiftwidth=4
set expandtab

" 显示匹配的括号
set showmatch

" 启用行高亮
set cursorline

" 设置搜索时忽略大小写
set ignorecase
set smartcase

" 高亮搜索结果
set hlsearch

" 实时搜索
set incsearch

" 启用鼠标
set mouse=a

" 设置颜色方案
colorscheme desert

大家可以点击快速打造vim配置,可以快速的在云服务器环境中配置好一个不错的快发环境。

操作好以后,我们可以打开用户家目录下的.vimrc文件

cpp 复制代码
vim ~/.vimrc

大概在第50行的位置可将缩进调整到自己喜欢的大小。

相关推荐
人猿泰飞38 分钟前
在Ubuntu-22.04.5中安装ONLYOFFICE DocSpace(协作空间)【注意:安装失败,谨慎参考!】
java·linux·运维·python·ubuntu·项目管理·onlyoffice
CAE虚拟与现实39 分钟前
修改wsl中发行版Ubuntu的主机名
linux·运维·ubuntu·wsl·wsl2·修改主机名
开发小能手-roy42 分钟前
Ubuntu服务器性能调优指南:从基础工具到系统稳定性提升
linux·运维·服务器·ubuntu
潘yi.1 小时前
Shell编程之正则表达式与文本处理器
linux·运维·正则表达式
涛涛讲AI1 小时前
wkhtmltopdf 实现批量对网页转为图片的好工具,快速实现大量卡片制作
linux·服务器·windows·windows效率工具
破刺不会编程1 小时前
什么是进程?
linux·运维·服务器
大数据魔法师2 小时前
Redis(一) - Redis安装教程(Windows + Linux)
linux·windows·redis
Y1anoohh2 小时前
驱动学习专栏--字符设备驱动篇--2_字符设备注册与注销
linux·c语言·驱动开发·学习
.R^O^3 小时前
计算机知识
linux·服务器·网络·安全
卡戎-caryon3 小时前
【Linux网络与网络编程】11.数据链路层mac帧协议&&ARP协议
linux·服务器·网络·笔记·tcp/ip·数据链路层