关于开发使用 VIM 编辑的一些问题,有老大哥指点一下吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
jsan
V2EX    程序员

关于开发使用 VIM 编辑的一些问题,有老大哥指点一下吗?

  •  
  •   jsan 2022-07-17 21:20:08 +08:00 2710 次点击
    这是一个创建于 1251 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近听了一个播客讲了编辑器故事,准备使用 Vim 一段时间。

    但是在开发时候发现了几个问题。

    背景:开发使用 IDEA 和 VS Code:

    1. 正常开发使用 IDEA ,出现问题的时候,一般情况下会复制 log 日志问题,去游览器搜索,这个就很魔性,就要从选中 Y ,变成 Ctrl+C 这个就感觉有点割裂,连贯性有点差。VS Code 也是同理。

    2. 经常会用到多行编辑,类似于 IDEA 编辑器的搜索多行选中,或者 VS Code 鼠标中键多行编辑,这个功能感觉在 Vim 也没有什么可代替的操作。

    用了 1 周之后感觉还是有点想换回正常文本编辑器。 有什么视频可以让我加强一下入教吗。

    21 条回复    2022-07-18 09:46:40 +08:00
    ampedee
        1
    ampedee  
       2022-07-17 21:24:47 +08:00 via iPhone
    问题 1 你去学习下怎么使用 vim 里面的寄存器
    ampedee
        2
    ampedee  
       2022-07-17 21:27:01 +08:00 via iPhone
    问题 2 找找插件吧,实在不行换 neovim ,应该是小菜一碟
    wd
        3
    wd  
       2022-07-17 21:29:36 +08:00 via iPhone
    vim 里面你按 ctrl v 就可以列编辑了
    ho121
        4
    ho121  
       2022-07-17 21:30:20 +08:00 via Android
    搜索+编辑,是不是可以直接利用替换?
    adrianzhang
        5
    adrianzhang  
       2022-07-17 21:30:26 +08:00
    搜索多行选中是为了编辑替换吗? VIM 本身有%s 命令。如果是复制粘贴的话 yXy, p ,其中 X 是行数。
    imycc
        6
    imycc  
       2022-07-17 21:37:38 +08:00
    我还是混着用的。vim 可以用块模式做多行操作,但 vscode/sublime 这类编辑器有多行光标,操作上比 vim 直观多了,没得搞。
    angelface
        7
    angelface  
       2022-07-17 22:36:11 +08:00
    1. "+y 拷贝到系统剪切板(须要在编译的时候添加 clipboard 支持,查看是否支持:vim --version| grep "clipboard")
    2. vim-multiple-cursors, 安装好后 Ctrl-N 可以多选。
    sora2blue
        8
    sora2blue  
       2022-07-17 23:06:29 +08:00
    用了半年原生 vim+coc.nvim 插件,也用过 jetbrains 的 vim 插件。现在 vim 用着编辑单个文件很舒服,但是它全键盘操作,就是没办法很好结合鼠标的便利和常用的 Ctrl-C/V (尽管在 jetbrains 可以设置成 IDE 快捷键),自带的剪贴板和系统不通用也很蛋疼,用到多行编辑、复制粘贴这种我也是在 IDE 直接关掉一段时间。MIT missing course 专门有一节讲 vim 的各种操作,可以参考一下。
    Suddoo
        9
    Suddoo  
       2022-07-17 23:12:08 +08:00
    都是为了干活而已,习惯了图形化的文本编辑器,如果实在没有不可抗拒的原因,没必要花费时间熟悉另一套字符界面的文本编辑器
    gouflv
        10
    gouflv  
       2022-07-17 23:26:12 +08:00 via iPhone
    不习惯也别强求
    另外,毕竟学习曲线摆在那里,一周还远不算入门
    yagamil
        11
    yagamil  
       2022-07-18 00:25:26 +08:00
    只有只全 ssh 环境下才有魄力用好 vim 。 只要碰回 ide ,就又不想用 vim 了
    agagega
        12
    agagega  
       2022-07-18 00:36:30 +08:00
    Vim 有多行编辑的插件,不过更推荐用 Range: https://vim.fandom.com/wiki/Ranges
    fpure
        13
    fpure  
       2022-07-18 00:48:00 +08:00
    使用 vim 有两种流派,一种是使用 vim 的按键的,一种是完全依赖 vim 进行软件开发的。如果仅仅是前者的话建议 vscode/idea 里面装 vim 插件就可以了,后者的话 emmm 是条不归路
    sentoisuzu2020
        14
    sentoisuzu2020  
       2022-07-18 09:00:29 +08:00
    普通人建议还是用主流编辑器吧,有时间可以多钻研技术,而不是学习编辑器
    hikarugo
        15
    hikarugo  
       2022-07-18 09:12:00 +08:00
    看下这个,能解答你的所有问题
    简明 VIM 练级攻略: https://coolshell.cn/articles/5426.html
    jsan
        16
    jsan  
    OP
       2022-07-18 09:24:18 +08:00
    @fyxtc 好的 谢谢。
    jsan
        17
    jsan  
    OP
       2022-07-18 09:25:22 +08:00
    @ampedee 容我了解一下,现在本质问题在于,在同一环境下 快捷键不一致导致的一些问题,使用上会有割裂感,如果是单纯在 vim 感觉还是如鱼得水的。
    jsan
        18
    jsan  
    OP
       2022-07-18 09:26:32 +08:00
    @ho121 嗯,确实,但是比如多行编辑类似于 我再每行最后一个单词前增加一个 where or 别的 就会用到。
    jsan
        19
    jsan  
    OP
       2022-07-18 09:27:38 +08:00
    @yagamil 现在就是有点劝退的意思 很多情况还是要使用鼠标
    jsan
        20
    jsan  
    OP
       2022-07-18 09:28:22 +08:00
    @sentoisuzu2020 确实,不应该在编辑器浪费太多时间,但是还是想进去了解一下。
    FYFX
        21
    FYFX  
       2022-07-18 09:46:40 +08:00
    @jsan vim 多行编辑挺强的啊,要是每一行最后一个单词开头对齐的话就 Ctrl-v 然后编辑就行了,要是最后一个单词不对齐也可以用宏在每一行重复相同的操作实现啊
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1026 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 38ms UTC 18:27 PVG 02:27 LAX 10:27 JFK 13:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86