V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Newyorkcity
V2EX  ›  Vim

请问有 V 友研究过 vim 普通模式里 (,),{,},[[,]],[],][ 这些移动具体的粒度是怎么回事儿有什么不同吗?

  •  
  •   Newyorkcity · 2021-08-08 16:48:11 +08:00 · 1602 次点击
    这是一个创建于 1203 天前的主题,其中的信息可能已经有所发展或是发生改变。
    或者分享一下看到过的好的资料?

    多谢
    IgniteWhite
        1
    IgniteWhite  
       2021-08-08 17:05:07 +08:00 via iPhone   ❤️ 1
    请在 Vim 输入
    :h object-motions
    即可以看到以下关于 text object motions 的帮助文档:
    http://vimdoc.sourceforge.net/htmldoc/motion.html#object-motions

    里面写的很清楚。简单的说,小括号大括号方括号分别对应句子段落小节。

    有些插件,比如 VimTeX,会根据 TeX 的 section 来魔改方括号的定义,方便在 TeX 里面前后移动。这些知识统称 text object,在 Vim 里你甚至可以自定义 text object 的样子(或者用别人做好的插件),实现最适合自己的功能。
    IgniteWhite
        2
    IgniteWhite  
       2021-08-08 17:10:00 +08:00 via iPhone   ❤️ 1
    补充一下,Vim 默认的方括号跳转的“小节 section”是用大括号括起来的 section,就是说会跳转到方括号上。这个默认选项是为了 C 语言设计的。
    IgniteWhite
        3
    IgniteWhite  
       2021-08-08 17:10:52 +08:00 via iPhone
    @IgniteWhite 纠正 2 楼,应该是“就是说会跳转到大括号上”
    Newyorkcity
        4
    Newyorkcity  
    OP
       2021-08-08 18:23:05 +08:00
    @IgniteWhite 不过这个用在代码里,几乎没有,和.的场景是不是都一样或者有些畸变?我按网上的一些中文资料的说法在代码里试了试,就感觉很怪。
    IgniteWhite
        5
    IgniteWhite  
       2021-08-08 19:31:34 +08:00 via iPhone
    @Newyorkcity 你把一楼的文档看一下,里面说的很清楚。我展开说无非是给你翻译了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2444 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 02:25 · PVG 10:25 · LAX 18:25 · JFK 21:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.