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

新手该如何入门 vim 达到能基本使用它作为生产力

  •  1
     
  •   Comyn · 2023-04-23 23:17:44 +08:00 · 11837 次点击
    这是一个创建于 369 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是从 vim 开始还是直接使用大佬们的 nvim 配置,有没有大佬觉得不错的教程,预期想使用它进行前端代码编写
    124 条回复    2023-11-25 18:52:53 +08:00
    1  2  
    hongchends1
        101
    hongchends1  
       2023-04-24 18:13:09 +08:00
    买个快捷键鼠标垫
    izzy27
        102
    izzy27  
       2023-04-24 19:16:29 +08:00
    我的建议是先使用 vim 的编辑模式,用几个月之后自然而然的就会掌握更进阶的写法。idea 和 vscode 都有 vim 插件。
    macha
        103
    macha  
       2023-04-24 19:32:02 +08:00
    当年苦练 vim ,现在还是 vscode 加鼠标走起。
    dustynight
        104
    dustynight  
       2023-04-24 19:34:01 +08:00 via Android
    如果是为了好玩,楼上有很多很好的建议;如果是为了提高生产力,那我建议直接放弃,这是一个投入产出比对大部分人都很低的选择。
    imkerberos
        105
    imkerberos  
       2023-04-24 19:38:59 +08:00
    最值得投资的两项技能:vim/emacs + 双拼
    LuffyWong
        106
    LuffyWong  
       2023-04-24 19:39:35 +08:00
    看 vimtutor ,看 pratical vim ,重点还是坚持使用,坚持下来一两个月肌肉记忆基本就差不多了 youtube 也有很多学习资源
    LuffyWong
        107
    LuffyWong  
       2023-04-24 19:40:30 +08:00
    @imkerberos 确实, 之前学生时期强迫自己坚持下来发现很受益,一劳永逸~
    zhuangzhuang1988
        108
    zhuangzhuang1988  
       2023-04-24 20:25:10 +08:00
    放弃吧。
    bashbot
        109
    bashbot  
       2023-04-24 21:52:58 +08:00
    前端的话想清楚为什么要用 vim 。vscode 和 webstorm 挺好用的。
    vim 用了十几年了,是因为经常要上服务器和设备改代码和脚本。
    没有图形界面没有项目环境的时候用 vim ,有图形界面有项目配置时 vim 就没多少优势了。

    配过各种 vim 插件,后来只留了常用的 taglist ,这个是其他机器上最可能默认安装了的。
    xiaopanzi
        110
    xiaopanzi  
       2023-04-24 22:24:39 +08:00
    推荐使用 lazyvim ( https://www.lazyvim.org/)配置 nvim ,这个模版做到了开箱即用和高可扩展性。从 VSCode 切换过来几个月了,非常舒适。

    ![img]( https://ibb.co/d4pWmwL)
    xiaopanzi
        111
    xiaopanzi  
       2023-04-24 22:25:52 +08:00
    jh623
        112
    jh623  
       2023-04-25 06:02:23 +08:00
    有幸折腾过几个月,如今劝你珍惜生命。
    直接 IDE 就好了,就算学 vim 学基础操作就好了,就算非要折腾 vimrc ,直接用大神的配置就好了。。。
    千万别花太多精力在配置和插件上,就算配置得很完美之后,回头又会觉得还是 IDE 香。🤣🤣🤣
    acctv2
        113
    acctv2  
       2023-04-25 08:51:56 +08:00
    如果已经熟练使用了 IDE 的快捷键,我的建议是:完全没必要。

    Vim 就是折腾好玩,其他的没啥明显优势。
    linvaux
        114
    linvaux  
       2023-04-25 09:13:18 +08:00
    别浪费时间了,vscode 足矣
    c3de3f21
        115
    c3de3f21  
       2023-04-25 09:32:53 +08:00
    lunarvim + 1
    Biluesgakki
        116
    Biluesgakki  
       2023-04-25 09:44:28 +08:00
    我现在基本只在服务器 vim 文件用用。。感觉平时开发还是得用鼠标
    CSM
        117
    CSM  
       345 天前
    > 能坚持下来原因是 vim 的宏和快捷键太香了

    @11232as #10 您好,我打算写一个和宏有关的插件,能问一下您平时是怎么使用宏的,都在哪些场景使用吗?
    11232as
        118
    11232as  
       344 天前
    @CSM 需要写很复杂的正则来满足一些简单替换的场景下,我会尝试用宏来解决批量替换。
    hauzerlee
        119
    hauzerlee  
       344 天前
    最初是先看了一遍 vimturtor ,后来闲暇的时候把(当时版本的)自带帮助过了一遍,大概知道有哪些功能,记下来随时练练,这样就差不多可以满足大多数情况使用了,需要用熟练还得长时间使用形成肌肉记忆,有时候跟人说一个功能怎么用,我得开个 vim 按一遍看是哪几个键。

    再后来从功能、美化角度上进阶,是找了个 vimrc (时间太久,十好几年了,不记得来源了),在此基础上增删改形成自己的版本,我放在 https://github.com/hauzerlee/ghost-rider-skeleton/blob/master/vimrc 了(插件需要初始化,在这个项目的 deploy.sh 里有)

    上面也有兄弟说,看学这个是要干啥,浅尝辄止的体验可能品不到味儿,不是对自己有帮助的话,也有些费时间。当时我遇到的情况大概是这么几种:

    1. 安装 linux ,只有命令行界面,想要个全屏编辑器只能用它。( nano 是后来的,ex 是行编辑)
    2. 不依赖鼠标位置,机器慢的时候也可以继续敲,总会反应过来的。有时候是远程登录服务器操作,网速慢也是一样的情况。感觉按错了就 ESC 三连,然后重新输入。
    3. 任何能接触到的 *nix 发行版中几乎都有,有的可能是简化版的 vi (这个其实才是原版,VIM = Vi IMproved ),对于搞后端或运维的,学会这一个等于到哪儿都能用。

    GUI 的 Vim 版本我还真不习惯……terminal 连远程,或者 mac 本地,学会一个就用了这么多年……
    CSM
        120
    CSM  
       344 天前
    @11232as #118 明白了,我也觉得搜索替换和宏是等价的,不过在使用体验上有区别。再问一个问题,这些场景下的文本是结构化的吗,即是否有 treesitter parser ?(比如编程语言或者 JSON, csv 有 ts parser ,但日志文件可能就没有。我是想写一个结构化的宏插件。)
    11232as
        121
    11232as  
       343 天前   ❤️ 1
    @CSM 是结构化得,我遇到的很多需要用宏的场景是正则完全没法做或者很难做得多行文本替换,基本也都是结构化的文本。不了解宏之前我会写很麻烦包含换行符的正则,或者写在一行替换然后使用编辑器的格式化工具,了解宏之后这类场景下就都是在用宏操作了。
    apple115
        122
    apple115  
       341 天前 via iPhone
    vim 不会使代码质量提高,效率也是先慢再快,如果要学习 vim 的话一定要想清楚.
    建议从最简单的 vim 开始使用,清楚的明白自己需要什么,再开始写 vim 的配置找插件,可以先使用 ide 的 vim .
    fanhed
        123
    fanhed  
       291 天前
    我用 vim 十几年了, 现在用的是 neovim.
    如果你有兴趣折腾的话, 就平时慢慢摸鱼着看 vim 中文帮助文档, 理论上你要精通的话, 你需要熟悉 vim 的方方面面.
    基本要把中文文档(安装 vim 中文帮助文件)全部过一遍.
    然后开始自己写自己的配置, 自己写自己的插件.

    现在 vim(nvim)的扩展能力(除了图形部分), 已经没有啥不能做的了, 只要 vscode 里面能独立为组件的部分, 都能作为插件在 vim 上面使用.

    如果你只是个功利的程序员, 大可不必折腾编辑工具. 如果你有兴趣在程序员生涯只用一款编辑器的话, 就可以慢慢学 vim, 以月/年为单位.
    dofy
        124
    dofy  
       154 天前
    推荐个教程 https://github.com/dofy/learn-vim
    学会 Vim 的关键还是要经常用,如果用 vs code 的话建议装个 vim 插件。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3010 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:34 · PVG 21:34 · LAX 06:34 · JFK 09:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.