V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
november
V2EX  ›  问与答

vscode vim 能不能做到像 sublime text 那样的光标位置交换?

  •  
  •   november · 2023-05-10 10:54:28 +08:00 · 805 次点击
    这是一个创建于 598 天前的主题,其中的信息可能已经有所发展或是发生改变。

    举个栗子就是,

    1. 我的光标目前所在位置(比如第 2 行第 10 列)打个“标记”,通过快捷键 A
    2. 然后任意方式移动光标到其他位置(比如第 10 行第 5 列),
    3. 之后通过快捷键 B,将光标跳转到 1 中标记的位置,此时自动将 2 的位置进行标记,
    4. 移动光标到另一个位置,然后通过快捷键 B ,来跳转到 2 的位置,同时自动对新位置进行标记,

    简单说就是,快捷键 A 用于标记,快捷键 B 用于跳转到标记的位置,同时对跳转前的位置进行标记,作为下次跳转时的位置。

    8 条回复    2023-05-14 00:51:21 +08:00
    november
        1
    november  
    OP
       2023-05-10 15:22:32 +08:00
    是没有类似的功能吗?都没人的。

    你们都是怎么处理跳转到上次编辑地方的需求的啊?
    TravisMtg
        2
    TravisMtg  
       2023-05-10 15:56:07 +08:00 via iPhone
    为什么不用 c-o c-i 呢
    november
        3
    november  
    OP
       2023-05-10 16:08:03 +08:00
    @TravisMtg

    control + o / i 吗?试了下,它会跳到其他标签页。即使,我在同一个标签页进行多次编辑操作,它也是马上就跳其他标签页。

    我希望是在同一个标签页内跳转。
    Uanti
        4
    Uanti  
       2023-05-13 17:29:11 +08:00   ❤️ 1
    C-i, C-o 是在 jumplist 中进行跳转,jumplist 是跨 buffer 的。哪些操作被记录为 jump ,详情请看:h jumplist
    op 的要求如果是在新旧编辑位置中跳转,那就用 g;与 g,,这个是在 changelist 中跳转,changelist 应该是只对当前 buffer 有效(记忆中应该是)

    如果只是浏览中跳转——那为什么不打 mark 呢,打了 mark 就可以用''或者 C-o 跳回去了
    november
        5
    november  
    OP
       2023-05-13 19:57:42 +08:00
    @Uanti 怎么打 mark ?有相关的文档或教程吗?
    Uanti
        6
    Uanti  
       2023-05-13 20:41:42 +08:00   ❤️ 1
    @november :help mark
    Uanti
        7
    Uanti  
       2023-05-13 20:43:29 +08:00   ❤️ 1
    @november
    m+一个按键标记,按`+一个按键来跳回。不过似乎根据描述,g;与 g,可能更符合你的需求
    november
        8
    november  
    OP
       2023-05-14 00:51:21 +08:00
    @Uanti thx 我自己摸索摸索。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2693 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 12:37 · PVG 20:37 · LAX 04:37 · JFK 07:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.