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

求助[vim]:有什么快捷键可以自动的在句尾添加分号;

  •  
  •   charlesliu · 315 天前 · 1784 次点击
    这是一个创建于 315 天前的主题,其中的信息可能已经有所发展或是发生改变。

    A;ESC还是不太方便, google 了,但是由于是刚学 vim,还不太懂,就来这里向老哥先讨个答案,回头再慢慢了解

    13 条回复    2022-06-12 21:43:52 +08:00
    byzf
        1
    byzf  
       315 天前
    句号
    korokke
        2
    korokke  
       315 天前   ❤️ 2
    加到.vimrc 里面,可以在句尾添加分号同时光标位置不变。再怎么样也要两个键,只用一个键的话没啥好办法,分号本身有自己的作用。
    nnoremap <Leader>; m'A;<ESC>`'
    Goooogle
        3
    Goooogle  
       315 天前   ❤️ 2
    #2 2 楼给是的正确的姿势,我稍微解释一下吧
    这一行是在 normal mode 下,将 "<leader>;" 也就是 ",;" 映射成为 后面那堆按键。
    其中 "m'" 和 "`'"分别是将当前位置标记为 "'",然后在执行完对应的操作后返回该位置。

    上面提到的所有信息都可以在<<Learn Vimscript the Hard Way>>中找到,可以作为进阶资料
    andy2415
        4
    andy2415  
       315 天前
    只有一次这种操作: A;ESC
    重复几次: .
    重复很多次: 宏录制 q
    经常需要: nnoremap
    2i2Re2PLMaDnghL
        5
    2i2Re2PLMaDnghL  
       315 天前
    如果要为连续的若干行都作此处理,可以 <c-v> 块状选中多行再 A;<ESC>,这样的话就是多行都这么处理。
    或者<s-v> 选中以后 :s/$/;/ (按 : 后会自动补 '<,'> 表示选中范围,在那之后继续打 s 就成)
    stimw
        6
    stimw  
       315 天前 via Android   ❤️ 1
    可以看看 practical vim,中文书是 vim 实用技巧,可以对 vim 有个比较详细的了解。

    之后遇到问题就可以自己摸索了。折腾 neovim 配置之类的。

    现在不太想折腾了直接 vscode vim 和 ideavim 完事...
    nickchenyx
        7
    nickchenyx  
       315 天前   ❤️ 1
    @korokke nnoremap <leader>; A;<ESC>`^ 这样比较好,不会使用标记字段,`^ 会跳到上一次 insert mode 离开的地方
    namelosw
        8
    namelosw  
       315 天前
    A ; 还不方便?一般 VIM 的操作都要三个键,这两个都已经算比较方便的了。

    如果你说要给多行加分号不方便,靠 . 就可以:
    1. A ; Esc 先加上
    2. j . j . j . j . j . 循环然后就把下面几行都加上了
    Leviathann
        9
    Leviathann  
       315 天前 via iPhone
    写 ts/js 的话一般是靠 eslint prettier 自动补上
    配置一下 run on save 就行
    liangch
        10
    liangch  
       315 天前
    如果是新写代码,都自己句尾敲的。
    DrakeXiang
        11
    DrakeXiang  
       314 天前
    粗暴批量的话用搜索替换最快,不过要根据需求写好正则,如果需要词法解析的话可能就不行
    ruidoBlanco
        12
    ruidoBlanco  
       314 天前
    perrot
        13
    perrot  
       24 天前
    :%s/$/;/g
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2797 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:25 · PVG 21:25 · LAX 06:25 · JFK 09:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.