文章目录
-
- 基操
-
- # 光标移动
- # 查找
- # 可视模式
- # 范围处理
- # 替换
- # 折叠
- # 分屏
- # 后台运行
- # 命令行模式
- # 宏
- # 寄存器 register
- # vim内部执行外部命令
-
- ## 特例:提取文件
- ## 特例:Vim保存只读模式下的修改
- # VIM键盘映射
-
- ## 特例:vim - CapsLock大写锁定键映射成 Esc 建
- 配置
-
- # 配置vimrc
- # vim-plug
- 差异对比工具:vim diff
- 插件集成:NeoVim
- 搭建IDE环境(linux)
-
-
- # 使用 Vim 搭建基本开发环境(SpaceVim)
-
基操
vim的教程(非常基础)
vim tutor
-
Vim中文手册 http://www.4e00/vim-zh/usr_toc.html
-
视频
vim文本编辑器进阶(一) 复制 粘贴
vim文本编辑器进阶(二) 快捷键
vim文本编辑器进阶(三) 编辑 快捷键
vim文本编辑器进阶(四) 可视行 可视块
上古神器Vim:从恶言相向到爱不释手 - 终极Vim教程01 - 带你配置属于你自己的最强IDE -
命令总结
https://www.jianshu/p/4df654095d73
# 光标移动
-
h j k l光标移动(左下上右) -
i光标前插入字符 -
shift+i在句子的开头插入字符 -
a光标后面插入字符 -
shift+a在句子的末尾插入字符 -
o向下插入一行 -
shift+o向上插入一行 -
r替换选中 -
shift+r连续替换 esc退出 -
s删除选中,并输入模式 -
shift+s删除一整行 -
x删除光标 -
shift+x删除光标前 -
:set nu显示行数 -
ctrl+f下一页 -
ctrl+b上一页 -
{上一个空行(查找函数) 上一段 -
}下一个空行 下一段 -
^行首
0行首(推荐) -
$行未 -
%闭合符号间反复横跳 -
gg文章首行 -
shift+g文章末尾 -
数字+shift+g到第几行
:数字到第几行(同上) -
ctrl+g显示当前编辑文件中当前光标所在行位置以及文件状态信息。 -
ctrl+o上一个查找光标位置 -
cetrl+i下一个查找光标位置 -
zz文本居中
# 查找
/+单词 全局找单词
- n 下一个
- shift+n 上一个
f+字母 行内找字母
;下一个,上一个
# 可视模式
v进入可视化行(visual line)模式ctrl+V进入可视化块(visual block)模式
shift+i插入模式
# 范围处理
指定 “{…}” “[…]” … 的范围处理
-
处理+i+范围对范围内进行处理
d+i+}删除光标所在{...}的内容
y+i+}复制光标所在{...}的内容比如: “aaa” ⇒ aaa
-
处理+a+范围对范围内+范围表示进行处理比如: “aaa” ⇒ “aaa”
# 替换
# 折叠
vim 折叠的用法
z+c折叠z+o打开折叠zf创建折叠zd删除折叠
# 分屏
(ctrl+w)+v 左右分屏(先按ctrl+w,再按v,下面也一样)
:vs(命令形式)左右分屏
(:vsp)
(ctrl+w+s):sv(命令形式)上下分屏
(:sp)
ctrl+w切换屏幕hjkl上下左右:q取消当前分屏:Explore打开当前目录:ls查看打开的文件:b序号 ` 打开ls中的对应序号文件alt+回车全屏
# 后台运行
这个隐藏功能很强大,非常类似于tmux的session会话功能。 但是和自己的vim-session 保存功能不太一样。这样就可以打开多个进程开发,完了直接仍后台完事。再切换到其他的项目进行开发。
-
ctrl+z 将当前vim置于后台
-
jobs 查看所有后台vim
-
fg 1 恢复编号为1的vim到前台
# 命令行模式
按下 “:” 进入命令行模式
:1 跳到第1行
:22 跳到第1行
:set nu 开启行号
:set nonu 关闭行号
:set nowrap 关闭自动换行
:set list 显示每一行的结尾
:set nolist 关闭xxxx
:help 帮助
:↑↓ 查看历史命令
q: 打开命令行历史记录(重要)
ctrl+c退出这个模式
:set mouse=a鼠标模式
:set ic忽略大小写(:set noic关闭)set hls高亮set is匹配项
–
命令行快捷键
ctrl+a 行首
ctrl+e 行末
!! 上一个命令
# 宏
参考:vim 宏的使用
qa在a处记录脚本@a执行a处的脚本@@调用最近使用的宏.命令执行最后一次的修改命令
# 寄存器 register
http://www.4e00/vim-zh/change.html#registers
寄存器的基本使用
即时用 "{register}y 来拷贝到 {register} 中, 用 "{register}p 来粘贴 {register} 中的内容
寄存器的分类
Vim 提供了 10 类寄存器,可在 Vim 中通过 :help registers 查看帮助。
- 匿名寄存器
"" - 编号寄存器
"0到"9 - 小删除寄存器
"- - 26 个命名寄存器
"a到"z - 3 个只读寄存器
":,".,"% - Buffer 交替文件寄存器
"# - 表达式寄存器
"= - 选区和拖放寄存器
"*,"+,"~ - 黑洞寄存器
"_ - 搜索模式寄存器
"/
具体每个寄存器的作用看这里:⭐️https://harttle.land/2016/07/25/vim-registers.html⭐️
# vim内部执行外部命令
## 特例:提取文件
## 特例:Vim保存只读模式下的修改
用 vim 打开没有写权限的文件而忘记用 sudo 时,文件变成 read-only
这时候用 :w!, SHIFT+ZZ,或者 qw! 都无法保存
:w !sudo tee %
:w: Write a file.可以将文件写入,文件仍然是只读模式,通过 :q! 退出!sudo: Call shell sudo command.tee: The output of the vi/vim write command is redirected using tee.%: Triggers the use of the current filename.Simply put, the ‘tee’ command is run as sudo and follows the vi/vim command on the current filename given.<


发布评论