● 跳跃
○ 向前跳跃是 f
○ 向后跳跃是 F
● 继续
○ 保持方向是 ;
○ 改变方向是 ,
● 可以加上 [count] 来加速
● ^ 是到本行第一个非空字符
● 0 是到本行第一个字符,不管是不是空格
● g_ 是到本行最后一个非空字符
● 两个按键要依次按下
● $ 跳到本行最后一个字符,即使他是空格
● I
○ 相当于^i
● A
○ 相当于$a
● w
● 意思是 word
● 还学习了向后一个单词
● b
● 意思是 backward
● 配合d有删除的效果
● dw 会删到下一个单词的头 所以如果下个单词前面有空格的话会被删掉
● de会删除到这个单词的末尾 如果这个单词到下个单词直接有空格的话会停在这个空格上
● db 也是有效果的
W 真的就是跳一个字符串了 w只是一个单词 会在“ -等字符前停下
大词和小词的区别
● 从插入模式到正常模式要用 esc
● 但是 esc 距离基本起手势太遥远了
● 可以用 ctrl + c 来替代
● 可这仍然很慢
● 有没有更有效率的方法呢?
● 可以自定义配置
● i、I和a、A 都可以进入插入模式
○ i 在光标前插入
○ I 在本行最前插入
○ a 在光标后插入
○ A 在本行最后插入
● ctrl+c退回到正常模式
● 现在又加了 o、O
○ o 本行下方插入一个新行
○ O 本行上方插入一个新行
● 再练练重复、撤销、重做
○ 按几次 . 重复插入操作
○ u 可以撤销
○ ctrl+r 可以重做
如果不显示行号,就输入 :set nu
● 反悔是重做
● 就在 u 的帮助下面有介绍
● ctrl+r
● 在正常状态下按 ctrl+r 可撤销撤销操作
● 就是重做
○ 按一次 u 撤销一步
○ 再 ctrl+r 再撤销撤销
○ 按一次 u 撤销一步
○ 再 ctrl+r 再撤销撤销
○ 好像可以来回来去拉锯
想在 vim 中使用鼠标控制,我们先需要进行基本的配置:
● 首先我们在 vim 中搜索帮助,输入 :h mouse
● vim 提示我们执行 :set mouse=a,就可以用鼠标了!!!
○ 我们可以使用鼠标移动光标
○ 使用滚轮可以翻页
○ 还可以使用鼠标点击相关的主题链接
这些现代科技真的很不错,使用鼠标后操作更便捷了,但是鼠标其实会更影响效率,因为鼠标会让我们的手离开键盘。
然而 vi 就是想让用户可以实现,手不离开键盘核心区域就完成所有的编辑工作:
● 方向移动是最常用的操作
● 他想让你相对灵活的右手位置在键盘核心区完全不动
● 只需要按下手指就完成相应的移动操作
● 而且比鼠标还快速
● 正常模式 (Normal mode)
○ 也叫默认模式。
○ 进入 vim 时默认的模式所有输入的键都直接对应着命令
○ 也被叫做命令模式.
● 插入模式 (Insert mode)
○ 任何键盘录入都会插入到当前文档中
● 可视模式 (Visual mode)
○ 很像正常模式
○ 但是移动命令会改变选中的一块高亮区域
○ 执行的命令会对选定范围进行
● 选择模式 (Select mode)
○ 可以用鼠标或光标键高亮选择文本
○ 任何输入都会替换选择的高亮文本
○ 并进入插入模式
● 命令行模式 (Command-Line mode)
○ 可以窗口下方执行一条命令
○ 一般是通过 : 执行单行命令
○ 通过 / 和 ? 进行搜索
● Ex mode (多行命令执行模式)
○ Ex 指的是 Execute
○ 在 Normal 正常模式下使用 gQ 进入
○ 使用 :visual 退出