Linux开发工具之编辑器vim

文章目录

1.vim是啥?

1.1问问度娘







1.2自己总结

vi/vim都是多模式编辑器,vim是vi的升级版本,不仅兼容vi的所有指令,而且还有一些新的特性: 语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows

2.vim的初步了解

vim: 文本编辑器 只负责写代码 不负责编译运行 是一款多模式的编辑器

2.1进入和退出

进入: vim

退出: shift: q

进入文件: vim code.c

2.2vim的模式

vim wq: 也可以创建文件

1.介绍

命令模式(command mode)、插入模式(Insert mode)、 底行模式(last line mode)

正常/普通/命令模式(Normal mode)[vim的默认打开模式]

  1. 控制屏幕光标的移动
  2. 字符/字/行的删除
  3. 移动复制某区段
  4. 进入Insert mode/last line mode

命令模式的基础常用指令

「yw」:将光标所在之处到字尾的字符复制到缓冲区中

yy: 复制当前光标所在行 5yy: 从当前行复制5行 [windows: ctrlc]

dd: 剪切当前光标所在行 ndd [ctrlx]

p: 粘贴 10p: 粘贴10次复制的内容 [ctrlv]

u: 撤销历史操作 [ctrlz]

ctrl+r: 恢复撤销 [ctrly]

shift~: 大小写转换

x/shift x: 删除光标所指向字符 nx: 删除n个

shift r: 覆盖式替换[进入替换模式]

只按r后输入一个字符: 对光标所指向字符用输入的字符进行覆盖式替换 nr: 替换n个字符

/text: 正向查找text值

?text: 反向查找text值

/\ctext:大小写不敏感查找text

光标上下移动

shiftg: 光标定位到文件尾

gg:光标定位到文件首

数字+ shiftg :光标定位到特定行

光标左右移动

shift^: 光标定位到行首

shift$: 光标定位到行尾

w: 光标跳到下个字的开头 以单词为单位 向后移动 5w向后移动五个单词

e: 光标跳到下个字的字尾

b: 光标回到上个字的开头 以单词为单位 向前移动 5b同上

按「ctrl」+「b」:屏幕往"后"移动一页

按「ctrl」+「f」:屏幕往"前"移动一页

按「ctrl」+「u」:屏幕往"后"移动半页

按「ctrl」+「d」:屏幕往"前"移动半页

键盘上的箭头也可以移动不太便捷

hjkl: 左下上右

  1. 老式键盘无箭头
  2. hjkl效率更高
  3. 后续注释等回使用
  4. 建议使用

插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

底行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift: 即可进入该模

式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes

显示/隐藏行号

set nu/set nonu

分屏操作

进入code.c文件后在底行模式vs test.c 可以进行分屏操作

ctrl WW: 光标跳转至另一个屏

基础指令

w: 保存 w! : 强制保存

q:退出 q!: 强制退出

! cmd: 不退出vim 执行指令(命令行/编译/运行/查阅手册)

: text 跳到text行

2.使用

输入: i/a/o------>编辑/插入模式

按「i」切换进入插入模式「insert mode」,按"i"进入插入模式后是从光标当前位置开始输入文件;

按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;

按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

左下角状态变为可以进行编写代码

输入esc

退出当前模式/返回上个模式

输入: shift:

底行模式

输入esc

退出当前模式/返回上个模式

cpp 复制代码
注意: 无法从插入模式直接到底行模式  无法从底行模式直接到插入模式

3.vim的配置

3.1自己配置

首先在自己的工作路径下创建一个 .vimrc 文件 然后复制粘贴想要的配置

vim配置即.vimrc文件的配置及vim操作技巧

3.2下载插件

首先在自己的工作路径下创建一个 .vim 文件 然后按照指示下载

10款好用到爆的Vim插件,你知道几个?

3.3安装大佬配置好的文件

vim配置

4.程序的翻译

相关推荐
Lovyk12 分钟前
Linux 正则表达式
linux·运维
Fireworkitte1 小时前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos
sword devil9002 小时前
ubuntu常见问题汇总
linux·ubuntu
ac.char2 小时前
在CentOS系统中查询已删除但仍占用磁盘空间的文件
linux·运维·centos
中科米堆3 小时前
中科米堆CASAIM自动化三维测量设备测量汽车壳体直径尺寸
运维·自动化·汽车·视觉检测
淮北也生橘123 小时前
Linux的ALSA音频框架学习笔记
linux·笔记·学习
缘华工业智维4 小时前
CNN 在故障诊断中的应用:原理、案例与优势
大数据·运维·cnn
开航母的李大5 小时前
软件系统运维常见问题
运维·服务器·系统架构·运维开发
华强笔记6 小时前
Linux内存管理系统性总结
linux·运维·网络
十五年专注C++开发7 小时前
CMake进阶: CMake Modules---简化CMake配置的利器
linux·c++·windows·cmake·自动化构建