vi和vim学习笔记

Python教程_600集Python从入门到精通教程(懂中文就能学会)
vim入门教程(共3讲)
【VIM快速入门】《带你学C带你飞》(番外篇)(小甲鱼)

vi

没有图形界面的环境中编辑 文本内容vi 是最佳选择:因为手指可以保持在键盘的核心区域,就能完成所有的编辑操作,不需要鼠标,甚至不需要方向键,没有菜单,只有命令。

vim——编辑器之神

vim = vi improved
支持 代码补全、编译、错误跳转等

一、打开和新建文件

vi 文件名
vi 文件名 +行数 打开并定位到某一行
vi -o 文件1 文件2 垂直并排打开多个文件
vi -O 文件1 文件2 水平并排打开多个文件

二、三种基本工作模式

1 命令模式1

vi 的入口,进行常规编辑操作,如定位、翻页、复制、粘贴、删除……
Ctrl + g 查看信息
i 进入编辑模式
: 进入末行模式
esc 退回命令模式

2 末行模式2

vi 的出口,执行保存、退出等。

3 编辑模式3

一般需要回命令模式进行快速定位
Ctrl + n 自动补全

三、常用命令

快速定位

gg 文件开头
G 文件末尾
数字gg 数字G :数字 对应行数
0^行首
$ 行尾
b 单词起始
e 单词结尾
w 下一个单词起始 b 往回跳

上下左右

hjkl
数字h 数字j 跳多个字符
数字j 数字k 跳多行

屏幕移动

Ctrl + b 向上翻页
Ctrl + f 向下翻页
H 屏幕顶部
M 屏幕中间
L 屏幕底部

段落移动

空行区分段落
{ 上一段
} 下一段

括号切换

% 括号匹配及切换

标记

m字母 增加一个标记,在需要时跳回
'字母 回到标记
相同的标记会替换之前的标记。
删除行也会删掉标记。

可视模式4选中文本

v 可视模式
V 可视行模式 选中完整行 I进入编辑模式
Ctrl + v 可视块模式 垂直选中
可以与光标移动命令一起用

撤销和恢复撤销

u 撤销
U 撤销所有对本行的修改
Ctrl + r 恢复撤销

删除文本,本质是剪切

x 删除光标所在字符或可视模式的选中文字
数字x 删除后面的多个

d(移动命令) 删除移动命令对应的内容
c(移动命令)删除并进入INSERT(c为修改命令,等价于删除+INSERT)
dd删除光标所在行
cc删除并进入INSERT
数字dd 删除多行
c数字c 删除多行
D删除至尾行

dw 删至单词末尾
d0 删至本行起始
d'字母 删至此标记

复制和粘贴

y(移动命令) 复制
yy 复制一行
数字yy 复制多行
p 粘贴到光标之后
数字p 粘贴多次
P 粘贴到光标之前
其他软件中使用Ctrl+c复制的内容,不能在vi中通过p来粘贴,但可以在编辑模式下鼠标右键粘贴。

替换模式5

r 在命令模式替换当前字符
数字r 在光标及以后替换多次第一个输入的字符
R进入替换模式一直修改
不进入编辑模式进行轻量级修改

缩进

>> 向右增加缩进,可视模式>
<< 向左减少缩进,可视模式<
. 重复使用

查找

/字符(串) 光标向后查找字符(串)
?字符(串) 光标向前查找字符(串)
n 下一个
N 上一个
* 向后查找当前光标所在单词
# 向前查找当前光标所在单词

查找并替换

:%s///g 末行模式

全局替换

:%s/被替换/替换成/g

可视区域替换

先选中范围,再:s/被替换/替换成/g 。无%

确认替换

g改成gc会有提示,推荐使用
y 替换
n 不替换
a 替换所有
q 退出替换
l 最后一个,并把光标移到行首
^E 向下滚屏
^Y 向上滚屏

插入命令——进入编辑模式

i 当前字符前插入——常用
I 行首插入——较常用
a 当前字符后添加
A 在行末添加 ——较常用
o 当前行后插入一空行——常用
O 当前行前插入一空行——常用
s 删除光标所在字符并进入编辑模式
S 删除光标所在行并进入编辑模式

末行命令

:n 文件名 新建文件
:r 文件名 插入文件
:w 保存
:w 文件名 另存为,但仍编辑当前文件
:w! 文件名 覆盖
:q 退出。若没保存,则不退出
:q! 强行退出
:wq 保存并退出
:x 保存并退出
:e . 打开内置文件浏览器,浏览当前目录下的文件
:!shell命令 shell命令
:set nu:syntax number 显示行号
:syntax on:syntax enable 显示高亮
:sp [文件名] 横向增加分屏
:vsp [文件名] 纵向增加分屏
Ctrl + w
w 或者 方向命令 切换窗口
r 互换窗口
c 关闭窗口,但不能关闭最后一个窗口
q 退出当前窗口,最后一个则关闭vi
o 关闭其他窗口

四、设置

vimrc文件

vim ~/.vimrc 打开后设置syntax onset nu等,或者下载别人已经配置好的vimrc文件

第三方插件相关

vim plug
NERDTree
VimAwesome

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章