vim编辑器用法详解

这篇具有很好参考价值的文章主要介绍了vim编辑器用法详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


Vim(Vi IMproved)是一个功能强大的文本编辑器,是Vi(Visual Editor)的一个增强版本。它以其高度可定制性、强大的编辑功能和广泛的插件支持而闻名。这里介绍一下Vim编辑器的那些使用技巧,熟练使用这些技巧可以大大提升在Linux品台下文本编辑的效率。

Linux平台安装Vim

Linux 下安装

# 安装Vim
sudo apt install vim-gtk3

# 查看Vim的安装版本
apt list --installed | grep vim

Windows下安装包的下载地址:
https://www.vim.org/download.php#pc

Vim配置文件

Vim在Ubuntu下的配置文件地址为:/etc/vim/vimrc, Windows下的配置文件的名字是_vimrc. 文件内容如下:

# 指定编码方式为utf-8  
set enc-utf-8
# Vim 不兼容vi
set nocompatible
# 导入Vim的示例配置
source $VIMRUNTIME/vimrc_example.vim    

Vim四种模式

Vim常用的工作模式有四种:
1.普通模式(normal):Vim启动后的默认模式,用来移动光标、删除文本、覆盖输入文本、恢复操作、粘贴文本等等
2.插入模式(insert):普通模式下输入 i 或 a 进入插入模式, 相当于普通编辑器的编辑模式, 按 ESC 退出
3.可视模式(visual):按 v 进入可视模式(字符选择), 按 V 进入可视模式(行选择), 按 Ctrl + V 进入可视模式(块选择)
4.命令模式(command-line):用于执行内部和外部命令, 通过 “:” “/” “?” “:!“可以进入命令模式, “:” 执行内部命令 “/”,”?” 向上或向下搜索、执行外部命令

基本操作

文件存储

#   文件退出/存储
:w  # 保存文件
:q  # 退出编辑
:wq # 保存退出
:q! # 强制退出

:help          # 显示帮助菜单
set nu / nonu  # 显示/隐藏行号

光标跳转

# 普通模式下
v   # 进入可视化模式 w 移动光标到下一个单词的开头  b键来移动光标到前一个单词的开头
gg                 # 跳转到开头
G                  # 跳转到结尾
nG                 # 移动到该文件的第n行
xxgg               # 跳转到xx行
0  $ 或 home end   # 跳转到行首和行尾
h  j  k  l         # 对应着光标左移、下移、上移、右移  
b / w              # 跳转到上一个单词(words Backward)/下一个单词(words forwrd)
()            # 跳转到上一句/下一句
{}            # 跳转到上一段/下一段  
PageUp 和 PageDown # 翻页
zt zz zb           # 把当前行滚动到顶部(top) 滚动到中部 滚动到底部(bottom)

编辑内容
将光标移动到希望搜索的关键字上,按下*键, Vim会自动提取光标下的关键字,并自动添加 \< 和 \> 进行搜索。

# 删除
dd       # 删除整行(delete)
D        # 删除到行尾

# 插入行
o   O    # 在下方/上方插入一个新行 

# 撤销
u        # 撤销上一次操作
Ctrl + r # 重做上一次撤销的操作

# 查找
:nohlsearch                  # 设置不要高亮搜索
/word                        # 查找字符 n查找下一个 N查找上一个

# 替换
:n1,n2 s/word1/word2/       # 在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2
:%s/word1/word2/g           # 从第一行到最后一行寻找word1字符串,并将该字符串取代为word2 
:%s/word1/word2/gc          # 从第一行到最后一行寻找word1字符串,并将该字符串取代为word2,且在取代前显示提示字符给用户确认(confirm)是否需要取代

# 复制
y       # 复制选中的内容(搭配v模式来用)  
yy 或 Y # 复制当前行
nyy	    # n为数字, 复制光标所在的向下n行 
yw      # 用来复制往后面的一个词  
y3w     # 复制往后的三个词  
yiw     # 复制当前词  
y$      # 复制到行尾  
y^      # 复制到行首  
yf.     # 复制直到下一个 . 字符
ggyG 或 :%y  # 复制整个文件

# 粘贴(paste)
p,P # p粘贴到光标下一行,P粘贴到光标上一行(Paste)

多对象操作

多文件编辑

vim *.cpp       # 编辑多个文件  

# 命令模式操作  
:set autowrite     # 告诉Vim 切换文件的时候自动存盘 
:args              # 显示正在编辑的文件列表
:args filename     # 切换某个文件
:next              # 打开下一个文件
:prev              # 打开上一个文件
:frist 或 :rewind  # 回到列表中的第一个文件
:last              # 打开列表中的最后一个文件

缓存管理

:buffers 或 ls      # 显示缓冲区列表
:buffer  编号       # 跳转到固定编号的缓冲区(可以简化成:b)   
:bdelete 编号       # 删除对应的缓冲区(可缩写为:db)
:bnext   编号       # 跳转到下一个缓冲区(缩写为:bn)
:bNext / bprevious  # 跳转到上一个缓冲区(缩写成:bN 或者:bp) 
:blast              # 跳转到最后一个缓冲区
Ctrl+O  Ctrl+I      # 跳转到后一个/前一个编辑的缓冲区

常用操作流程

复制剪切/粘贴

1.normal模式下,按v来进入字符选择模式,按V进入行选择模式,Ctrl+v进入块选择模式
2.移动光标来选择对应的区域  
3.按y来进行复制, 按p/P 来进行粘贴
4.移动光标到对应位置,p粘贴到光标之后,P粘贴到光标之前(Paste 辅助记忆)

剪切命令(把上面操作中的y改成d就是剪切操作)

insert模式下粘贴(insert模式下p快捷键不可用)

Ctrl+r " 插入最近一次复制/剪切/删除的内容。" 是 Vim 的匿名寄存器
Ctrl+r 0 插入最近一次复制的内容。其中 0 属于 Vim 的编号寄存器,保存最近一次拷贝的内容  

命令行模式下粘贴
在 normal 模式按下 : 可以进入命令行模式

Ctrl+r " 插入最近一次复制/剪切/删除的内容
Ctrl+r 0 插入最近一次复制的内容
Ctrl+f   选择一条历史命令(包括当前正在键入的命令)来编辑

多窗口操作

窗口分割

:split (缩写为:sp) + 文件名 分割窗口并打开指定的文件  
:split (缩写为:sp)         不加文件名 表示把当前窗口分开
:vsplit (缩写为:vs)        表示垂直分割

Ctrl+w  + (h、j、k、l) 可以在窗口之间跳转
Ctrl+w n      打开一个新窗口
Ctrl+w c      关闭当前窗口(最后一个则无效) 
Ctrl+w q      退出当前窗口
Ctrl+w o      只保留当前窗口 关闭其它窗口  
Ctrl+w s      和:split作用相同 横向一分为二
Ctrl+w v      和:vsplit作用相同 纵向一分为二  
Ctrl+w =      使得所有窗口大小相等  
Ctrl+w _      设置窗口的高度, 命令前的数字数表示高度行数,默认为纵向占满
Ctrl+w |      设置窗口宽度, 命令前的数字表示要增加的列数 默认为横向占满
Ctrl+w +      增加窗口的高度
Ctrl+w -      减少窗口的高度
Ctrl+w >      增加窗口的宽度
Ctrl+w <      减少窗口的宽度
Ctrl+w T      将多窗口中的某个窗口切换成独立页签(是大写的T==shift+t)

对比多个文件文章来源地址https://www.toymoban.com/news/detail-664431.html

vimdiff 或 gvimdiff filename1  filename2  # 对比两个文件

在一个文件编辑窗口中输入下面的命令  
:vert diffsplit filename2                 # 分割窗口和第二个文件做对比

多标签页操作

在已有的命令前加 tab 可以在新的标签页中展示命令的结果(例如  :tab help 在新的标签页中打开帮助)  

:tab split                在新的标签页中打开当前缓冲区
:tabs                     展示所有的标签页列表   
:tabnew 或 :tabedit       打开一个空白的新标签页,后面有文件名称则打开该文件  
:tabclose                 可以关闭当前页签
:tabnext 或 Ctrl+PageDown 切换到下一个标签页  
:tabNext 或 Ctrl+PageUp   切换到上一个标签页  
:tabfirst                 切换到第一个标签
:tablast                  切换到最后一个标签

到了这里,关于vim编辑器用法详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Linux工具篇】编辑器vim

    目录 vim的基本操作 进入vim(正常模式)  正常模式-插入模式 插入模式-正常模式 正常模式-底行模式 底行模式-正常模式 底行模式-退出vim vim正常模式命令集 vim末行模式命令集 Q1Linux底下多文件操作 Q2批量化注释和去注释 Q3ctrl+z和断网的情况 Q4sudo提权 Q5vim配置  配置文件位置

    2024年01月24日
    浏览(35)
  • Linux编辑器——Vim详解

    目录 ⭐前言 ⭐vim的基本概念 ⭐vim的基本操作 ⭐vim命令模式命令集  ⭐vim末行模式命令集 ⭐简单vim配置 ⭐配置文件的位置 ⭐常用配置选项 vi/vim的区别 简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面

    2024年02月21日
    浏览(51)
  • 【Linux】编辑器vim详解

        vim是 文件编辑器 ,是vi的升级版本,兼容vi的所有指令,同时做了优化和延伸。vim有多种模式,其中最常用的模式有命令模式、插入模式、底行模式以及替换模式和视图模式。(视图模式本文暂不提及)    在使用vim编辑器进行文件的编辑之前,需要确保自己的系统已经

    2024年02月06日
    浏览(48)
  • Linux:详解(yum的使用、vim编辑器命令集合以及gcc/g++编译器的使用)

            在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.         但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这

    2024年02月05日
    浏览(81)
  • 【Linux环境基础开发工具】编辑器-vim

    vim是一个编辑器,是在Linux下编程的常用工具,如果要学习在Linux下的编程, 那学会使用vim是一个必修课,今天我就来讲解如何使用vim编辑器。 目录 写在前面 什么是vim vim的常用命令 (1)gg:定位光标到第一行第一个位置 (2)shift + g:定位光标到最后一行 (3)n + shift + g:

    2024年02月07日
    浏览(51)
  • Linux:Vim文本编辑器及其应用详解

    众多 Linux 发行版系统,通常都已经默认安装好了 vi 或 Vim 文本编辑器,Centos 也不例外,该系统就默认安装有 vi 文本编辑器,但建议大家使用 Vim。 如果在命令行模式下输入“vim”,输出结果为“Command not found”,则表示此系统中未安装 Vim。 CentOS 系统中,使用如下命令即可安

    2024年02月12日
    浏览(67)
  • Vim 是一款强大的文本编辑器,广泛用于 Linux 和其他 Unix 系统。以下是 Vim 的一些基本用法

    Vim 是一款强大的文本编辑器,广泛用于 Linux 和其他 Unix 系统。以下是 Vim 的一些基本用法: 打开文件: 基本移动: 使用箭头键或 h , j , k , l 分别向左、下、上、右移动。 Ctrl + f : 向前翻页。 Ctrl + b : 向后翻页。 gg : 移动到文件开头。 G : 移动到文件末尾。 编辑文本: i : 进

    2024年01月17日
    浏览(48)
  • 【Linux编辑器-vim使用】

    目前了解的vim有三种模式(其实有好多模式),分别是命令模式、插入模式和底行模式,各模式的功能区分如下: 命令模式(Normal mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode 插入模式(Insert mode) 只有在Insert mode下

    2024年02月10日
    浏览(43)
  • Linux编辑器-vim使用

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

    2024年02月06日
    浏览(45)
  • Linux编辑器 - vim使用

    Vim是一个广泛使用的文本编辑器,它是在Unix和Linux系统中常用的命令行文本编辑器之一。 vim的主要三种模式 ( 其实有好多模式,目前掌握这 3 种即可 ), 分别是 命令模式 ( command mode )、 插入模式 (Insert mode )和 底行模式 ( last line mode ),需要掌握每种模式的用法和差别

    2024年02月14日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包