共计 1766 个字符,预计需要花费 5 分钟才能阅读完成。
程度挪动
回顾上节课内容🤔
- 依据扩展名咱们能够设置某些特定类型文件的配置
- 相干文件类型的设置放在相应的文件夹里
-
文件类型缩进文件夹
/usr/share/vim/vim81/indent/
-
文件类型语法高亮文件夹
/usr/share/vim/vim81/syntax/
-
文件类型插件文件夹
-
零碎通用文件夹
/usr/share/vim/vim81/ftplugin/java.vim
/usr/share/vim/vim81/ftplugin/java_xxx.vim
/usr/share/vim/vim81/ftplugin/java/xxx.vim
-
用户专用插件文件夹
~/.vim/ftplugin/java.vim
~/.vim/ftplugin/java_def.vim
~/.vim/ftplugin/java/header.vim
-
-
在 文件夹
~/.vim/ftplugin
中 的html.vim
的设置- 只针对
html
- 包含文件的缩进、配色、语法高亮、行号、状态栏等
- 只针对
:filetype indent on
文件类型缩进失效:filetype syntax on
文件类型语法高亮失效:filetype plugin on
文件类型插件失效
素材文件
-
首先咱们关上一个绕口令
git clone http://github.com/overmind1980/vimtutorial.git
vi -u NONE raokouling.txt
- 关上绕口令
- 须要单行的长度超过 80 个字符
-
设置不换行
:set nowrap
-
设置状态条
:set statesline=%f-[%l,%c]
:set laststatus=2
-
把模式设置为非兼容
:set nocompatible
横向滚动
- 一路l 到屏幕的止境
- 到 [1,80] 时候再按下 l
- 整个屏幕产生横向滚动
- 而后光标挪动到屏幕核心地位
- 光标坐标显示为 [1,81]
- 如果要回来的话也须要挪动到左边缘
- 而后再按 h️
- 整个屏幕滚动回来了
- 重复横跳
横滚幅度
-
横滚的幅度能够通过
sidescroll
来管制- 默认 0 是横向屏幕 80 字符的一半 40 字符
- 如果我设置为 10 的话
- 在最右边缘再向右的话,屏幕地位滚动 10 个字符
- 从 [1,80] 到 [1,81] 的时候产生
:h sidescroll
- 咱们如果把
sidescroll
变成 1,屏幕横滚就会很柔和🤪 - 还是设置回 10 吧
- 重复横跳
横滚留位
- 每次咱们的横滚都是在屏幕边缘产生的
- 是否达到边缘之前就能看见那边有什么?
-
:h sidescrolloff
- 默认是 0,到边缘才滚动
- 如果咱们设置为 20
- 到 [1,60] 的时候, 间隔有边缘有 20
- 这个时候 l️整个屏就会向右
滚动幅度
- 也就是
sidescroll
所对应的10
- 把
sidescrolloff
设置成 99,光标在横向总在核心地位🤪
横滚屏快键
- 其实横向滚动咱们用的比拟少
- 但在一屏中滚动比拟常见
屏内跳转
- 能够参照全屏跳转
-
后面加个 g
- g0 就是跳到屏幕第一个字符
- g^ 就是本屏幕内第一个非空字符
- gm 跳到屏幕两头
- gM 跳到整个文本两头
- g$ 跳到屏幕开端
主动换行
- 如果一行太长了咱们能够让他
:set wrap
主动换行 :h wrap
能够查看帮忙手册📕:set nowrap
能够勾销主动换行
向上一行
- 咱们个别用 j、k 高低挪动
- 然而如果主动换行之后,这高低就不只是一行了
- 先把行号显示进去
:set nu
- 咱们能够通过 g j、g k 来主动换行的一行内高低挪动
换行字符
- 我在行头句尾的时候
-
如果我想按方向键 h、l 换行
- 后果是无效的
-
如果我用 BackSpace
- 后果是无效的
- 然而有的机器上,却有效
- 为什么呢?
-
这是一个属性 option
whichwrap
-
先看看这个货色当初的值
:set whichwrap?
-
把他设置回默认的值
:set whichwrap&
&
示意设置为默认值- 而后再察看现状
- b,s 是什么意思呢
选项细节
:h 'whichwrap'
-
默认只有两个
- b 是 <BackSpace> 退格
- s 是 <Space> 空格
- 实践上h、l 不好使
-
vi oeasy.java
- 从新用 vi 关上
- h、l 好使
- 那他是在那里设置了 h、l 呢?
查找本源
vim ~/.vimrc
/whichwrap
总结
-
咱们这次理解了横向滚动的相干信息
- 横滚幅度 –
sidescroll
- 横滚留位 –
sidescrolloff
- 主动换行 –
wrap
- 横滚幅度 –
- g j、g k 能够逐行高低挪动
- 能够管制切换行的控制键
whichwrap
- 这就是横向挪动的内容
- 不过程序中个别一行不会超过 80 个字符
- 纵向挪动更为广泛
- 纵向挪动有什么好玩的吗?🤔
- 下次再说 👋
正文完