oeasy教您玩转vim - 29 - # 垂直翻页

赋料扬雄敌,诗看子建亲。这篇文章主要讲述oeasy教您玩转vim - 29 - # 垂直翻页相关的知识,希望能为你提供帮助。
垂直翻页 回忆上节课内容????

  • 我们上次了解了横向滚动的相关信息
    • 横滚幅度 - sidescroll
    • 横滚留位 - sidescrolloff
    • 自动换行 - wrap
  • < kbd> g< /kbd> < kbd> j< /kbd> 、< kbd> g< /kbd> < kbd> k< /kbd> 可以逐行上下移动
  • 可以控制切换行的控制键 whichwrap
  • 这就是横向移动的内容
  • 不过程序中一般一行不会超过80个字符
  • 纵向移动更为普遍
  • 纵向移动有什么好玩的吗?????
  • 我们先下载个长点的文档
    • http://users.csc.calpoly.
    • git clone http://github.com/overmind1980/vimtutorial.git
  • 然后用无模式的方式打开他
  • vi -u NONE tomsawyer.txt
边缘移动
  • 首先设置非兼容 :set nocompatible
  • 然后设置显示行号 :se nu
  • < kbd> 2< /kbd> < kbd> 3< /kbd> < kbd> G< /kbd> 到 23 行
  • < kbd> j< /kbd> 再向下的时候
  • 屏幕发生滚动,光标位置如图
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

上下留边
  • 上下留边的话就要用 :set scrolloff=2
  • 这样的话上下翻动的话,都会有 2 行的预留
  • :h scrolloff 查看帮助
  • s[croll]o[ff] 管的纵向保留边距
  • 俗称留天留地
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

留边细节
  • scrolloff 是一个 option
  • 可以设定最小值
  • 还可以查询细节 :h \'scrolloff\'
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

  • scrolloff 管的是 纵向 留天留地
  • sidescrolloff 管的是 横向 留天留地
  • 也可以用 HML 命令测试一下
    • < kbd> H< /kbd> 到当前屏幕能到的最上行 High
    • < kbd> M< /kbd> 到当前屏幕正中 Middle
    • < kbd> L< /kbd> 到当前屏幕能到的最下行 Low
上下翻页
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

  • scroll.txt 可以找到 :h CTRL-F
    • 使用 < kbd> ctrl< /kbd> + < kbd> f< /kbd> 可以向下走
    • f 的含义是 forward 向下走
    • 同理b 的含义是 backward 向上走
    • < kbd> ctrl< /kbd> + < kbd> b< /kbd> 可以向上走
  • 在翻页之前加上数字 [count] 可以实现一次翻 10 页
    • 如< kbd> 1< /kbd> < kbd> 0< /kbd> < kbd> ctrl< /kbd> + < kbd> f< /kbd>
    • 或< kbd> 1< /kbd> < kbd> 0< /kbd> < kbd> ctrl< /kbd> + < kbd> b< /kbd>
    • 注意观察cmd的位置
向上 N 行
  • 我们可以用 < kbd> ctrl< /kbd> + < kbd> e< /kbd> 向下 1 行
  • < kbd> ctrl< /kbd> + < kbd> e< /kbd> 和 < kbd> j< /kbd> 的不同是
    • < kbd> ctrl< /kbd> + < kbd> e< /kbd> 光标所在文件位置不变,整个屏幕向上,除非到了边缘,光标位置才改变
    • < kbd> j< /kbd> 是屏幕整个位置不变,光标位置向下,除非到了边缘,屏幕位置才改变
【oeasy教您玩转vim - 29 - # 垂直翻页】
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

  • 同理可以< kbd> ctrl< /kbd> + < kbd> y< /kbd> 屏幕向下移动
  • 他们都可以使用 [count] 来翻倍
翻过半屏
  • < kbd> ctrl< /kbd> + < kbd> d< /kbd> 可以向下走 翻半屏 d 代表 Down
  • < kbd> ctrl< /kbd> + < kbd> u< /kbd> 可以向上走 翻半屏 u 代表 Up
  • 默认翻的是半屏,但是也可以通过 scroll 来设置
  • :set scroll=5 来明确翻的行数
  • 翻页的时候,光标在屏幕的相对位置不变,屏幕整体向上或向下移动
oeasy教您玩转vim - 29 - # 垂直翻页

文章图片

总结
  • 这次我们主要讲的翻页
  • :set scrolloff=2 控制留天留地
  • 上下翻页(这个最常用)
    • < kbd> ctrl< /kbd> + < kbd> f< /kbd> 屏幕向上走一屏
    • < kbd> ctrl< /kbd> + < kbd> b< /kbd> 屏幕向下走一屏
  • 上下移屏一行
    • < kbd> ctrl< /kbd> + < kbd> e< /kbd> 屏幕向上走一行
    • < kbd> ctrl< /kbd> + < kbd> y< /kbd> 屏幕向下走一行
  • 上下移屏一段
    • < kbd> ctrl< /kbd> + < kbd> u< /kbd> 向上走半屏
    • < kbd> ctrl< /kbd> + < kbd> d< /kbd> 向下走半屏
    • 移动数量和 scroll 相关
  • 上述翻页都可以用 [count] 翻倍
  • 如果想屏幕相对文件位置不动
    • 只移动光标
  • 可以么?????
  • 下次再说 ????
    vimtutorial是oeasy制作的的一套关于vim的教程
    Github地址→https://github.com/overmind1980/vimtutorial
    Gitee地址→https://gitee.com/overmind1980/vimtutorial
    蓝桥实验楼地址→https://www.lanqiao.cn/teacher/courses/2840 邀请码FJWYIMGB

    推荐阅读