【Linux】Linux编辑器--vim

目录

前言

【Linux】Linux软件包管理器yum/apt详情请点击,今天继续介绍【Linux】Linux编辑器--vim的使用

  • 从代码编写、编译、调试、运行功能集成到一款软件里,我们叫IDE(集成开发环境)

Linux中开发工具是独立的

  • 写代码----编辑器----vim、vi
  • 编译代码---- 编译器----gcc/g++
  • 调试代码----gdb、cgdb
  • 构建工具 ---- makefile、make、cmake

一、vim的基本概念

vim是多模式编辑器,本文将详细讲解最基本的三种模式:命令模式、插入模式、底行模式再另外补充两种模式:替换模式和视图模式

  • 命令模式:最初使用vim打开文件时的模式就是命令模式,控制屏幕光标的移动,字符、字或行的删除,移动复制某区段
  • 插入模式:只有在插入模式下才能进行代码的编写
  • 底行模式:文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作

二、三种模式的转换

1、我们可以创建一个.c文件或者.cpp文件,再vim 文件名打开文件。我们还可以不创建文件,直接vim 文件名,写完代码保存退出,自动就创建了文件

2、进入文件默认在命令模式下,我们要进入编写代码模式下,即插入模式下直接输入:i

3、任何模式进入命令模式都是按下Esc

4、命令模式进入底行模式:(shift + ;)== :,底行模式中按下wq(w:保存,q:退出)退出

5、插入模式没有办法直接进入底行模式,底行模式不能直接进入插入模式,只能通过命令模式这个桥梁进行切换

三、命令模式命令集

命令模式下,一般使用键盘控制光标的移动,并不会使用鼠标定位光标,下面我将以下面代码为例介绍命令模式

为了方便观察,小编提前再底行模式下输入set nu 将行号显示

1、光标移动

  1. shift + g : 光标移动到最后一行
  2. gg:光标移动到第一行
  3. n + shift + g :光标移动到第n行, n = 2时,移动到第二行
  4. shift+4($):将光标定位到该行末尾
  5. shift + 6(^):将光标移动到该行开头
  1. h j k l分别将光标左、下、上、右移动,巧记方法,h在4个按键最左边,l在4个按键的最右边,j(jump)下、k(king)上

为什么有了上下左右的按键,还要hjkl?

  1. 这4个按键在右手边,方便、快
  2. 从下面这张图可以看到,早期键盘没有方向键
  1. (n + ) w:以单词为单位,向右移动n个单词
  2. (n + ) b:以单词为单位,向左移动n个单词

2、行操作

  1. yy:复制当前行(n + yy:复制n行)

  2. p:粘贴到当前一行到下一行(n+p,粘贴到当前行下n行)

  3. dd:删除当前行(n+dd:删除n行)

  4. dd+p:剪切

  5. u:撤销操作

  6. ctrl + r:按下撤销按键u后,如果反悔了,按下ctrl + r回到u撤销前

批量化注释:(批量化插入)

  1. ctrl + v:

  2. h j k l :选择区域

  3. I(shift + i):进入插入模式

  4. //

  5. Esc:进入命令模式
    批量化去注释:(批量化删除)

  6. ctrl + v

  7. h j k l :选择区域

  8. d

3、字符操作

  1. shift+ == Esc下面的~,字符大小写转换
  2. r:替换光标所在位置的一个字符(n + r:替换n个字符)
  3. shift + r == R :进入替换模式,批量化替换内容,按下Esc进入命令模式,退出替换模式
  4. x:删除光标所在字符(连续x,向右删除),n + x:向右删除n个字符
  5. shift + x == X:向左删除,n + shift + x:向左删除n个字符

四、底行模式命令集

  1. w!:【强制】保存
  2. q:退出
  3. set nu/set nonu:显示行号/取消显示行号
  4. / key:搜索功能,n:下一个
  5. !cmd:不退出vim,直接对代码进行编译和运行
  6. %s/printf/cout/g:将printf全部替换成cout
  1. 在项目中,我们一般是多个代码文件,.c、.h,在底行模式中,我们可以vs 文件名创建文件并且多文件操作
  2. ctrl+ww:文件之间进行跳转,光标在哪里就是对哪个文件做操作,这样就可以跨文件操作了
  3. 当vim退出时,光标在哪行,再次进入时光标还是在原来那行。
  • 当我们代码编写出错时,报错信息会告诉我们在哪一行,这样我们vim进入文件时直接vim code.c + 报错行号,光标直接定位到那一行

五、vim编译器的简单配置

  1. vim在写代码的时候默认是没有代码补全、高光、自动缩进等功能,我们可以进行简单配置,但是不建议root用户配置,建议给普通用户配置
  2. 在我们的家目录下创建一个.vimrc的隐藏文件
  3. 在该文件中写入我们需要的配置保存退出即可
cpp 复制代码
set nu
set tabstop=4           // 一个 Tab 键显示为 4 个空格的宽度
set softtabstop=4       // 按退格键时可以一次删除 4 个空格
set shiftwidth=4        // 自动缩进时的宽度为 4 个空格
  1. 当我们简单配置号之后,我们再使用vim进行代码编写的时候就可以有对应的功能
相关推荐
满天点点星辰5 小时前
Linux命令大全-usermod命令
linux·运维
欲掩5 小时前
Shell脚本
linux
Lynnxiaowen5 小时前
今天继续学习nginx服务部署与配置
linux·运维·服务器·学习·nginx
程序员大辉5 小时前
请卸载xshell,一款国产的终端工具,界面漂亮,功能强大,支持win,mac,linux平台,安全免费
linux·运维·macos
NetX行者5 小时前
在windows 10系统上使用WSL安装Ubuntu系统并配置开发环境
linux·windows·python·ubuntu·wsl
深思慎考5 小时前
LinuxC++项目开发日志——基于正倒排索引的boost搜索引擎(3——通过cppjieba库建立索引模块)
linux·c++·搜索引擎
心随雨下6 小时前
Liunx系统下出现“Could not resolve host: mirrorlist.centos.org; 未知的错误”地解决方案
linux·python·centos
Laughtin6 小时前
dolphindb vscode更改连接配置的操作步骤
ide·vscode·编辑器
?LAST6 小时前
虚拟机Ubuntu挂载共享文件夹
linux·ubuntu