代码编织梦想


1.前言

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

如果大家在命令行输入vim [文件名],没有出现编辑器,大家就先在命令行输入以下命令进行安装vim命令:

yum install -y vim

2.vim的基本概念

这篇文章我们讲解vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode)
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式;
  • 插入模式(Insert mode)
    只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
  • 底行模式(last line mode)
    文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes

这里一共有12种模式:six BASIC modes(6种基础模式)和six ADDITIONAL modes(6中附加模式)。

3.vim的基本操作

  • 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面: vim test.c
    不过有一点要特别注意,就是你进入vim之后,是处于[正常模式],你要切换到[插入模式]才能够输入文字
  • [正常模式]切换至[插入模式]输入a或输入i或输入o
  • [插入模式]切换至[正常模式]
    目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。
  • [正常模式]切换至[末行模式]「shift + ;」, 其实就是输入「:」
  • 退出vim及保存文件,在[正常模式]下,按一下「:」冒号键进入「底行模式」,例如:
    : w (保存当前文件)
    : wq (输入「wq」,保存并退出vim)
    : q! (输入q!,不保存强制退出vim)

4.vim正常模式命令集

1.插入模式

按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

2.从插入模式切换为命令模式

按「ESC」键。

3.移动光标

1.vim可以直接用键盘上的光标来上下左右移动,
但正规的vim是用小写英文字母「h」、「j」、「k」、「l」,
分别控制光标左、下、上、右移一格

2.G(shift+g) :光标直接移到文章的最后,n+G跳到指定行
3.按gg :光标直接移到文本开始
4.按$(shift+4) :移动到光标所在行的“行尾”
5.^(shift+6) :移动到光标所在行的“行首”
6.按w :光标跳到下个字(单词)的开头,支持nw(一次性移动n个单位)
7.按b :光标跳到上个字(单词)的开头, 支持nb
8.按e :光标跳到下个字的字尾
9.按nl :光标移动到该行的第n个位置
10.按「ctrl」+「b」:屏幕往“后”移动一页
11.按「ctrl」+「f」:屏幕往“前”移动一页
12.按「ctrl」+「u」:屏幕往“后”移动半页
13.按「ctrl」+「d」:屏幕往“前”移动半页

4.删除文字

1.按x :每按一次,删除光标所在位置的一个字符
2.按nx :例如,6x,表示删除光标所在位置的后面(包括字节在内)的6个字符
3.按X :删除光标位置所在字符前面一个字符
4.按nX :删除光标所在位置前面的n个字符
5.按dd :删除光标所在行(会进行自动复制)
6.按ndd :从光标所在行开始删除n行

5.复制

1.按yw :将光标所在之处到字尾的字符复制到缓冲区(支持nyw)
2.按yy :复制光标所在行(支持nyy,复制n行)
3.按p :粘贴(支持np,粘贴n行)
4.按ndd+p :剪切

6.替换

1.按r :替换光标所在处的字符(支持nr替换多个字符)
2.按R :切换到替换replace模式,进行字符替换,按Esc键退出到正常模式
3.按shift+~ :大小写切换

7.撤销操作

1.按u :进行一次撤销操作
2.按Ctrl+r :取消上次的撤销操作

8.vim底行模式命令集

在使用底行模式之前,请记住先按Esc键,确认您现在已经处于正常模式,再按shift+;,即:键即可进入底行模式

1.输入set nu/nonu :会在文件的每一行前面列出/取消行号
2.[#] :[#]号表示一个数字,在冒号后输入一个数字,再按回车键就可以直接跳到该行,如输入数字15,再回车,就会跳到文章第153. /关键字 :一个下划线+你要查找的关键字,如果第一次不是你要查找的关键字,可以按n,会往后寻找到你要的关键字为止。
4. ?关键字  :功能和第3点一样
5. 输入 vs 文件名 :在当前界面再创建一个文件,会自动进行分屏
6. Ctrl+ww :光标跨屏,注意光标只有一个,在哪个屏就编辑哪个屏,退出编辑器(wq)之后,会发现目录中多了一个文件
7. 在底行输入%s/printf/cout/g 可以将文件中的printf都替换成cout
8. !command 在底行输入命令

9.保存文件

「w」: 在冒号输入字母「w」就可以将文件保存起来

10.离开vim

「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

5.简单vim配置

配置文件位置

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

常用配置选项,用于测试

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

使用插件

  • 安装TagList插件,下载taglist_xx.zip ,解压完成,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
  • 在~/.vimrc 中添加:
    let Tlist_Show_One_File=1
    let Tlist_Exit_OnlyWindow=1
    let Tlist_Use_Right_Window=1
  • 安装文件浏览器和窗口管理器插件: WinManager
  • 下载winmanager.zip,2.X版本以上的
  • 解压winmanager.zip,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
  • 在~/.vimrc 中添加 let g:winManagerWindowLayout=‘FileExplorer|TagList
    nmap wm :WMToggle
  • 然后重启vim,打开~/XXX.c或~/XXX.cpp, 在normal状态下输入"wm", 你将看到上图的效果。
    更具体移步:点我, 其他手册,请执行 vimtutor 命令。

参考资料:
vim从入门到牛逼(vim form zero to hero)

6.总结

以上就是Vim编辑器的一些基本命令,它们的操作会让你更加高效地完成文件编辑。Vim的功能非常强大,可以通过自定义配置文件和插件来实现更多的功能。希望本文能对你有所帮助,感谢阅读!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_63449996/article/details/129829034

linux中vim命令详解----文本编辑器_it界一股清流的博客-爱代码爱编程

1  Vim是什么 Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。   2  Vim工作模式 Vim工作模式阐述为:在Xshell(或者是Linux系统终端,Xshell只是其中一个终端软件)中输入 “ vi  文件名 ” 命令,则进入了“ 命令模式 ”;再输入“ i或a

linux vi/vim使用详解_境里婆娑的博客-爱代码爱编程

一、什么是vim Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。 连 vim 的官方网站 (welcome home : vim online

linux学习-12-vim文本编辑器使用_褚师子书的博客-爱代码爱编程

5 Vim文本编辑器 Vim 是一个基于文本界面的编辑工具,使用简单且功能强大。更重要的是,Vim 是所有 Linux 发行版本默认的文本编辑器,通过一些插件可以实现和IDE一样的功能,所以连vim官方网站 也说Vim是一

【linux】vi命令使用详解(vim编辑器)_瑾怀轩的博客-爱代码爱编程

1、三种模式以及切换         ①命令行模式            ②插入模式 (进入文件编辑,按ESC进入底行模式)         ③底行模式 2、vi模式切换命令         a    --->  [进入编辑状态,从当前光标的位置后一个插入字符]         A    ---> [进入编辑状态,从当前行尾插入字符

【linux】编辑器vim详解-爱代码爱编程

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

ubuntu如何安装mysql启用远程连接-爱代码爱编程

1、用apt-get安装mysql 先更新一下apt仓库: sudo apt-get update 顺便说一下,因为不知道你们用的都是什么账户,我也搞不清楚哪些指令权限要求比较高,所以我所有指令都加sudo了,这样不管是谁复制粘贴都能直接用,不会出现权限问题。  然后安装mysql-server: sudo apt-get instal

linux命令详解(4)-爱代码爱编程

-b选项: 使用该选项,可以启动二进制模式,编辑二进制文件。 -c选项: 格式:-c 指令 使用该选项时,读取文件后会执行-c之后的指令。 例1: vim -c /Sys anaconda-ks.cfg 如图显示,搜索到了Sys字串。 -C选项: 打开兼容模式,使用旧版vi的编辑指令和环境。 -e选项: 启动单行编辑模式。启动

linux上vim编辑器快捷键/快捷命令详解,chattr和lsattr命令介绍_linux输入什么加退出插入模式-爱代码爱编程

目录 一.vim 1.vim编辑器简介 2.vim内功能及快捷键/命令详解 (1)命令、末行、插入三种模式的切换方式 (2)命令模式下的操作 (3)插入模式下的操作 (4)末行模式下的操作    二.文件隐藏属性的含义及作用 1.chattr设置文件的隐藏权限 (1)chattr命令的参数解析 (2)charttr部分参数演示 2.