vim键位图
一、Vim使用快捷键组合
二、Vim键盘图
三、详细应用
所有的命令都需要在Normal模式下使用,并且在Vim的Normal模式下,所有的键就是功能键.
1、入门
- i → Insert 模式,按 ESC 回到 Normal 模式.
- x → 删当前光标所在的一个字符。
- :wq → 存盘 + 退出 (:w 存盘, :q 退出,:q! 强制退出) (:w 后可以跟文件名)
- dd → 删除当前行,并把删除的行存到剪贴板里
- p → 粘贴剪贴板
- h j k l→ 移动光标, j 是向下箭头,也可以使用光标键 (←↓↑→)
- :help <command> → 显示相关命令的帮助,:help 也可以,退出帮助需要输入:q
2、感觉良好
(1).插入
- a → 在光标后插入
- o → 在当前行后插入一个新行
- O → 在当前行前插入一个新行
- cw → 替换从光标所在位置后到一个单词结尾的字符
(2).移动光标
- 0 → 数字零,到行头
- ^ → 到本行第一个不是blank字符的位置(blank字符是空格,tab,换行,回车等)
- $ → 到本行行尾
- g_ → 到本行最后一个不是blank字符的位置。
- /pattern → 搜索 pattern 的字符串(如果搜索出多个匹配,可按n键到下一个)
(3).拷贝/粘贴
- P → 粘贴
- yy → 拷贝当前行
(4).Undo/Redo
- u → undo
- Ctrl+r → redo
(5).打开/保存/退出/改变文件
- :e <path/to/file> → 打开一个文件
- :w → 存盘
- :saveas <path/to/file> → 另存为 <path/to/file>
- :x, ZZ , :wq → 保存并退出 (:x 表示仅在需要时保存)
- :q! → 退出不保存
- :qa! 强行退出所有的正在编辑的文件
- :bn 和 :bp → 同时打开很多文件时,使用这两个命令来切换下一个或上一个文件。
- :n→到下一个文件
3、更快
- . → (小数点) 可以重复上一次的命令
- N<command> → 重复某个命令N次。例如:2dd → 删除2行,3p → 粘贴文本3次,100idesu [ESC] → 会写下100个desu
- : N → 到第N行
- gg ,:1→ 到第一行
- G → 到最后一行
- w → 到下一个单词的开头
- e → 到下一个单词的结尾
- % : 把光标先移到括号上,匹配括号移动,包括 (, {, [
- * , #: 匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词
- 命令组合
4、超能力
(1).在当前行上移动光标
- 0 → 到行头
- ^ → 到本行的第一个非blank字符
- $ → 到行尾
- g_ → 到本行最后一个不是blank字符的位置
- fa → 到下一个为a的字符处
- t, → 到逗号前的第一个字符,逗号可以变成其它字符
- 3fa → 在当前行查找第三个出现的a
- F 和 T → 和 f 和 t 一样,不过是相反方向
- dt" → 删除所有的内容,直到遇到双引号"
(2).区域选择
<action>a<object> , <action>i<object>
例如有一个字符串 (map (+) ("foo")):
- vi" → 会选择 foo.
- va" → 会选择 "foo".
- vi) → 会选择 "foo".
- va) → 会选择("foo").
- v2i) → 会选择 map (+) ("foo")
- v2a) → 会选择 (map (+) ("foo"))
(3).块操作
0 <C-p> <C-d> I-- [ESC]
- ^ → 到行头
- <C-p> → 开始块操作
- <C-d> → 向下移动 (也可以使用hjkl来移动光标,或是使用%)
- I-- [ESC] → I是插入,插入“--”,按ESC键来为每一行生效
(4).自动提示
<Ctrl-p>,<Ctrl-n>
在 Insert 模式下,你可以输入一个词的开头,然后按 <Ctrl-p>或<Ctrl-n>,实现自动补齐功能
参考: