老实说之前有人让我学习用vim编程我是不肯的,原因有以下:
- 有GUI的Text Editor太香了
- 只有editor功能,想要当作IDE用还要自己装插件
- 快捷键繁多,不记就无法使用vim
- ……
但是在终端敲vim实在太帅了,所以我还是屁颠屁颠的来学了
Vim的核心目标好像就是抛弃鼠标来着,学会vim以后我能拿vim打游戏吗(胡言乱语中)
Environment
不管是服务器还是本地WSL,我使用的都是ubuntu系统,ubuntu也是很常用的linux系统之一,有很强大的社群。ubuntu官网
这样报错就可以很容易找到解决方案虽然系统有中文,但是官网似乎没有中文支持
安装了来自amix/vimrc的插件,功能很强大,等我摸索完了再开篇文章讲一下用了哪些插件怎么用哪些插件
具体安装方法在库中有写,且作者做了一键式处理,具体可以看库中描述。应该不会有人看不懂英文吧
代码如下:
git clone --depth=1 https://github.com/amix/vimrc.git ~/.vim_runtime
sh ~/.vim_runtime/install_awesome_vimrc.sh
git clone
就是从库中克隆整个项目~/.vim_runtime
指将该项目放入你的主目录~
的./vim_runtime
文件夹下- 后面一段就是执行一键式sh脚本,安装完以后就可以轻松使用啦
Vim Learning
说来惭愧键位太多一下子记不全,只能先记一些常用的。
Vim Modes
- 输入模式,在正常模式(Normal Mode)中按下 下列键即可进入
- i: 在输入指针前进入输入模式
- a: 在输入指针后进入输入模式
- I: 在输入指针行的行头进入输入模式
- A: 在输入指针行的行尾进入输入模式
- s: 删除输入指针后一格进入输入模式
- S: 删除输入指针行进入输入模式
:
-> 进入 命令模式(Command Mode)- 在vim下方会出现一行指令行,以
:
开头 - 注意 指令有没有
:
表示了模式的不同,在装了插件后正常模式指令也会显示在下方千万不要弄错
- 在vim下方会出现一行指令行,以
Esc
-> 进入 正常模式v
-> 进入 浏览模式(View Mode)
Direction
要学会vim,首先得记住:
- h: 对标左方向键,向左一格
- j: 对标下方向键,向下一行
- k: 对标上方向键,向上一行
- l: 对标右方向键,向右一格
有方向键当然用方向键操作方便啊kora
Command Mode
注意!!!我所有的列出的子项指令,皆需跟上其本身指令,例如w为保存,wq为保存并退出。
- w: 保存当前更改
- q: 保存并退出vim
- x: 保存并退出vim
- saveas
filename
: 另存为filename
文件 - e: 重新加载该文件
- !: 重新加载该文件并无视警告
- %s/word1/word2/g: 找到所有word1 并替换为 word2
Insert Mode
你能指望输入模式有啥指令???
- ctrl + p: 进行名字的补充
Normal Mode
- ZZ: 保存并退出vim
- d: 删除指令的开端,后面跟的指令有
- d: 删除该行的所有内容
- 1G: 删除从开头到该指标的所有内容
- G: 删除从该指标到结尾的所有内容
- 0: 删除从行头到指标的所有内容
- $: 删除从指标到行尾的所有内容
num
hjkl: 删除num
数量的 对应行/格
- D: 删除从该指标到结尾的所有内容
- Ctrl + f: 向上一页
- Ctrl + b: 向下一页
- Ctrl + u: 向上半页
- Ctrl + d: 向下半页
- H: 去往当前屏幕下的首行
- M: 去往当前屏幕下的中间行
- L: 去往当前屏幕下的尾行
- 0: 去往行头
- $: 去往行尾
number
: 在输入指标处做出:-
: 去往 后 number
格
- 该指令为: 输入数字后按下空格 -
: 去往 后 number
行
- 该指令为: 输入数字后按下回车 - x: 删掉后面
number
格 - X: 删掉前面
number
格 - dd: 删掉后面
number
行 - yy: 复制后面
number
行 - hjkl: 跳转指 对应的 之前/之后的
number
行/格
-
- y: 复制指令开头
- y: 复制该行
- 1G: 从开头复制到输入指标
- G: 从输入指标复制到结尾
- 0: 从行头复制到输入指标
- $: 从输入指标复制到行尾
- aw: 复制所有内容
num
hjkl: 复制 对应的num
行/格
- p: 在输入指标之后粘贴内容
- P: 在输入指标之前粘贴内容
- .: 执行前一个操作
- x: 删除指标后的一格
- X: 删除指标前的一格
- w: 去向下一个单词
- b: 去向前一个单词
- gg: 返回至开头
- G: 去向结尾
- f
char
: 找到并去向下一个char
Searching & Replacing
- /
word
: 找到 下一个word
- ?
word
: 找到 前一个word
在进行查找后,可用下面指令继续进行查找 - n: 找到 下一个
word
- N: 找到 前一个
word
Conclusion
其实如果认真的学下来,会发现很多键位都是combination,所以只要熟练起来打代码速度就会很快,一起加油吧!
Comments | 1 条评论
好耶