文章目录
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的默认打开模式]
- 控制屏幕光标的移动
- 字符/字/行的删除
- 移动复制某区段
- 进入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
: 左下上右
- 老式键盘无箭头
- hjkl效率更高
- 后续注释等回使用
- 建议使用
插入模式(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
文件 然后复制粘贴想要的配置
3.2下载插件
首先在自己的工作路径下创建一个 .vim
文件 然后按照指示下载
3.3安装大佬配置好的文件
vim配置