向上向下

回忆上节课内容

  • f 相关的是跳到

    • 跳到是 f
    • 跳到是 F
  • t 相关的是贴靠

    • 贴靠是 t
    • 贴靠是 T
  • 小写 相关的是 向前

    • 向前 跳跃是 f
    • 向前 贴靠是 t
  • 大写 相关的是 向后

    • 向后 跳跃是 F
    • 向后 贴靠是 T
  • 和继续 查找方向 相关的是 ;、,

    • 保持方向 是 ;
    • 改变方向 是 ,

向上向下

  • 本次启动的时候还是无参数模式
  • :set nocompatible 设置为不兼容 vi

    • 意思是使用 vim的方式处理命令
  • motion左右移动 之后是 上下移动

    • 可以使用 回车 换行
    • 也可以使用方向键向上或向下
    • 更常见的还是 j、k,因为他们基于基本位置

      • j 是向下
      • k 是向上
      • 5 j 就是让光标向下 5 行
      • 5 k 就是让光标向上 5 行
    • 继续向下翻

上下行首

  • 加号 plus 对应 +

    • 对应键盘 shift + =
  • 减号 minus 对应 -
  • 上下行跳到行首

    • + 向 并且到行 非空字符
    • - 向 并且到行 非空字符
  • 对应关系

    • + 相当于 j ^
    • - 相当于 k ^

首行尾行

  • g g 对应 首行
  • G 对应 尾行
  • 如果文章很长的话,直接跳就很方便
  • 一个 G 直接就到了 Ground
  • 想回开头的话可以用 g g

    • 不知道为什么这两个字母格外熟练
    • 熟练的让人心痛!
  • 另外还有一个组合 Go
  • 比如追加一个很长的配置文件的话 G o

    • G 直接到最后
    • o 在下面一行插入
  • 两个按键 Go 起来
  • ctrl+c回到正常模式
  • gg 就回开头

    • 重来一局

自动缩进

  • 当然也不都是痛苦回忆
  • g g 配 G 是我见过最方便的自动缩进方式

    • g g = G 从首行到尾行自动缩进
    • 这个文件可能有 500 行,
    • 但是一把就全都缩进好了
  • 不只是程序、网页、css、配置文件都可以自动缩紧

    • 这样整理代码就非常迅速了
  • 程序员更多的时候工作在 normal 模式

    • 浏览、搜索、跳跃、复制、粘贴
    • 真正聚焦下来写代码再切换到插入状态。
    • 其他编辑器永远只有一个插入状态
    • 其实是浪费了很多键盘功能的
    • 这也是 Normal 模式被称作 Normal 正常模式

      • 被当作默认模式的原因。
  • g g = G这非常爽!!!

总结

  • 上下行

    • 是 j
    • 是 k
  • 上下行首

    • 到行首非空字符 +
    • 到行首非空字符 -
    • 这些 motion 都可以加上 [count] 来翻倍
  • 首尾行

    • 首行是 g g
    • 尾行是 G
    • g g = G 是全部自动缩进
    • G 好像还有其他用法?
  • 什么用法呢?
  • 下次再说

oeasy教您玩转vim - 17 - # 向上向下的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. oeasy教您玩转linux010105详细手册man

    详细手册 回忆上节课 我们上节课学习了使用命令来了解命令 whatis 我们通过他来发出灵魂之问 whatis到底是干什么的?

  5. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  6. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  7. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  8. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  9. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  10. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

随机推荐

  1. 基于FPGA的4x4矩阵键盘驱动设计---第一版

    欢迎各位朋友关注"郝旭帅电子设计团队",本篇为各位朋友介绍基于FPGA的4x4矩阵键盘驱动设计---第一版 功能说明: 1. 驱动4x4矩阵键盘:按下任意一个按键,解析出对应按键信 ...

  2. VSCode 圈复杂度插件 CodeMetrics

    前言 圈复杂度(Cyclomatic Complexity)是一种代码复杂度的衡量标准.它可以用来衡量一个模块判定结构的复杂程度,数量上表现为独立现行路径条数,也可理解为覆盖所有的可能情况最少使用的测 ...

  3. C# WPF 坦克大战

    wpf写的.主要是Canvas做画布 和类似的Rectangle的自定义类 采用了画面帧的思想,子弹 坦克移动 效果 都是 在主界面用一个定时器 循环,每秒60帧,这样做的好处,对比我之前做的炸弹人游 ...

  4. Python并行运算——threading库详解(持续更新)

    0. 写在前面:进程和线程 博文参考: Python的并行(持续更新)_python 并行-CSDN博客 <Python并行编程 中文版> 一些相关概念请见上一篇博文. 1. 在Pytho ...

  5. 自动化测试在 Kubernetes Operator 开发中的应用:以 OpenTelemetry 为例

    背景 最近在给 opentelemetry-operator提交一个标签选择器的功能时,因为当时修改的函数是私有的,无法添加单测函数,所以社区建议我补充一个 e2e test. 因为在当前的版本下,只 ...

  6. GPT-4o和GPT-4有什么区别?我们还需要付费开通GPT-4?

    GPT-4o 是 OpenAI 最新推出的大模型,有它的独特之处.那么GPT-4o 与 GPT-4 之间的主要区别具体有哪些呢?今天我们就来聊聊这个问题. 目前来看,主要是下面几个差异. 响应速度 G ...

  7. UML建模工具Astah Pro 8破解教程2022最新最详细版

    (2022最新最详细版)UML建模工具Astah Pro 8破解教程 本文作者严正声明:拒绝盗版行为,打击盗版,痛恨吃白食的家伙,我一直都是坚定思想,有钱了一定要支持正版,所以此文档贡献,只为学习交流 ...

  8. 后端返回html字符串 样式覆盖全局必须用 iframe嵌套显示才行

    后端返回html字符串 样式覆盖全局必须用 iframe嵌套显示才行 $.axios({          method: "POST",          url: progre ...

  9. sse 与 编译器自动优化

    direct x 形式的矩阵和向量计算代码在编译的时候是自动汇编为 sse汇编的 何时使用手写sse 指令呢,当你的应用程序需要写一些物理运算时候 可以使用自己编写的sse计算函数来为 3维运算加速 ...

  10. .NET Core WebAPI项目部署iis后Swagger 404问题解决

    .NET Core WebAPI项目部署iis后Swagger 404问题解决 前言 之前做了一个WebAPI的项目,我在文章中写到的是Docker方式部署,然后考虑到很多初学者用的是iis,下面讲解 ...