VIM 超快速导航

标签 vim navigation

使用其他编辑器时我唯一怀念的是用鼠标找到我的位置。我可以用眼睛查看文件上的特定区域,然后移动鼠标并单击一下,我就在那里。使用 VIM,我必须 jjjjjkkkkkkjjjjhhhh...几乎就到了 hhhhh 噢废话,我错过了 3 个字符,lll。

我正在学习做标记,我发现了一个很棒的书签插件,我可以创建标记并使用 <f3> 销毁它们并导航到它们,不幸的是,当文件关闭时,标记被忘记了。

你们如何 super 导航文件?我知道我也可以做 5j7k4j5h 等等,但必须有一个插件可以读取我的眼睛并将光标放在我真正需要的地方..

我还学会了使用/% 来搜索特定术语。它确实有帮助,但所有匹配的字符都会在整个文档中突出显示。

最佳答案

尝试$ vimtutor ,它将教您入门所需了解的一切。

hjkl这些只是冰山一角,很少使用,至少在我的例子中是这样。

wWEeBbgegE全部允许逐字移动:

  • we继续前进,WE考虑空格和标点符号

    " here the * marks the default location of the cursor
    " and each letter shows where you jump when you hit the key.
    
    Latin: Lorem ipsum dolor sit amet.
                       *   e   e    e
                       *   E   E     E
    *    w w     w     w     w   w   w
    *      W     W     W     W   W   W
    
  • bge向后走,BgE考虑空格和标点符号

    Latin: Lorem ipsum dolor sit amet.
    b    b b     b     *
    B      B     B     *
         ge    ge    ge*
        ge
         gE    gE    gE*
    

fFtT用于获取当前行上的特定字符和 ;,用于以相同方向重复该运动 ;, 的相反方向:

  • fm跳到下一个 m转发,F向后退

    Latin: Lorem ipsum dolor sit amet.
    *          fm    ;            ;
               ;     Fm          *
    
  • tm在下一个之前跳转 m转发,T向后退

    Latin: Lorem ipsum dolor sit amet.
    *         tm    ;            ;
              ;     Tm           *
    

/?用于从当前光标位置跳转到第一个出现的模式:

  • /pattern继续前进

    Latin: Lorem ipsum dolor sit amet.
    *            /ips
    
  • ?pattern向后退

    Latin: Lorem ipsum dolor sit amet.
    ?Lat             *
    

0$用于跳转到该行的第一个和最后一个字符。

    (whitespace)Latin: Lorem ipsum dolor sit amet.(whitespace)
    0                  *                                     $

^g_用于跳转到该行的第一个和最后一个可打印字符。

    (whitespace)Latin: Lorem ipsum dolor sit amet.(whitespace)
                ^      *                         g_

单个和组合()[]{}用于逐个短语或逐个段落或逐个代码块移动代码块。

<C-b><C-f>用于向后和向前滚动屏幕。

<C-u><C-d>用于向后和向前滚动半屏。

H , ML将光标分别移动到视口(viewport)的顶部、中间、底部。

zt , zzzb将光标下方的线分别移动到视口(viewport)的顶部、中间、底部。

等等。

:help motion.txt会让你大吃一惊。

关于VIM 超快速导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8750275/

相关文章:

css - 我的网站内容与其他与差距相关的烦恼之间存在小差距

c# - 导航和 DI

javascript - 根据子元素 href 属性将事件类设置为元素

unity-game-engine - Unity 3d 导航网格烘焙

ruby - Vim Command-T 插件错误 : could not load the C extension

vim - 如何检测 Vimscript 中是否存在特定文件?

vim - 当我输入 `:q` 或 `:qa` 时,如何使 gvim 主窗口不退出?

ios - 如何在 iOS 中使用 Wix 导航器关闭 React Native 中的当前模态后立即推送新模态?

Vim (vim + nvim) 多次源文件

vim - 如何将 grep -l 的文件名结果定向到 vim 编辑器