vim笔记3(移动光标那点事)

Posted helloworldcoding

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim笔记3(移动光标那点事)相关的知识,希望对你有一定的参考价值。

常规移动上下左右

不要使用方向键,不要使用方向键,不要使用方向键(重要的事情说三遍)

k 往上一移动一行(5h就是往上移动5行)
j 往下移动一行
h 往左移动一个字符
l 往右移动一个字符
w 往后一定一个单词(光标在下一个单词的第一个字符位)
b 往前移动一个单词(光标也在单词的第一个字符)

两个推荐设置:
set nu 打开行号
set relativenumber 打开相对行号。这样就可以非常方便k/j跳动了。

设置位置标记

vim的位置标记允许我们记录文档中的兴趣点,以便快速跳转。
m{a-zA-Z} 用指定的字母标记当前光标所在位置。小写位置标记只在每个缓冲区(buffer)局部可见,大写的标记全局可见。(关于缓冲区,我以后会说)
'{mark} 光标跳到标记位子所在行,并把光标放在第一个非空字符上
`{mark} 光标跳动到标记的位置

vim自动位置标记
``  当前文件上次跳转之前的位置
`.  上次修改的地方   ;比如吃了个返回来,你忘记改到哪里了。
`^  上次插入的地方   ;比如产品要和你讨论一个需求,你忘记你是谁了,你在哪里了。
`[  上次修改或者复制的起始位置
`]  上次修改或者复制的结束位置
`<  上次高亮选区的开始位置
`>  上次高亮选区的结束位置

这些位置标记,会保存下来。再次打开文件,也会有。    

'' 当前位置和上一次跳转地方来回跳

超长行的移动

如果某一行非常长,在屏幕上会折行显示。k/j都会完整地跳过。 
有时候要修改其中的一些内容,这个时候如果你试一下gk/gj,
就会在折行之间跳转。

括号匹配

把光标放在括号上,然后 按下%,就会跳转到对应闭合的括号上去

查找时跳动

单行内查找:
    f 要查找的字符(向后查找,光标会跳到第一个字符的位置,如果要继续查找,就按分号(;))
    F 要查找的字符(向前查找,光标会往前跳)
全文内查找:
    /search_string 从光标所在行开始往下查找search_string;查到后,n 光标移动到下一个search_string出现的位子,N上一处。
    ?search_string 从光标所在行开始往上查找search_string;查到后,n 光标移动到上一个search_string出现的位子,N下一处。
    * 查找   把光标移动到某个单词(比如:test_word)上,然后按下* 就会再全文中显示出test_word出现的地方,再用n/N进行快速跳转

光标定位

zz 把当前行定位到屏幕的中间; 比如在定位一个bug时,要看一下报错行的上下文。 
zt 把当前行定位到屏幕顶部(top); 比如在编写代码时,希望看到一个干净的页面。(一般是G移动到最后一行,然后zt) 
zb 把当前行定位到屏幕底部(buttton)。 
gg 光标移动到第一行 
G 光标移动到最后一行 
I 光标移动到行首,并进入插入模式
A 光标移动到行尾,并进入插入摸索 
^(shift+6) 移动到行首非空字符处 
0 移动到行首
:行号 跳转到自定的行; 比如:12 就是跳转12行

滚屏翻动

ctrl+d 往下移动半屏幕(down)
ctrl+u 往上移动半屏幕(up)

以上是关于vim笔记3(移动光标那点事)的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记之Linux发行版那点事

关于重装系统那点事

几种适配器&观察者&ListView之间的那点事

程序员跳槽时关于薪水的那点事

代码提交那点事

for循环,定时器,闭包混合一块的那点事。