Neytoph
V2EX  ›  Vim

vim 值得学习吗

  •  
  •   Neytoph · Mar 3, 2016 via iPhone · 15749 views
    This topic created in 3897 days ago, the information mentioned may be changed or developed.
    可能是个敏感话题,无意引战= =
    说下我的情况吧:
    1.最近经常要在服务器上编辑,所以稍微接触了点 vim
    2.觉得 vim 很酷,不用鼠标,很爽
    3.目前用 sublime ,还停留在鼠标加方向键的水平 XD 觉得应该提高一下编辑水平

    所以 vim 熟练后究竟有多方便?值得深入学习吗?
    Supplement 1  ·  Mar 3, 2016
    看到回复,又有个疑问:
    **php 开发用 vim 是不是不如 IDE ?**
    136 replies  •  2016-04-20 18:09:26 +08:00
    1  2  
    ❮ ❯
    hbkdsm
    hbkdsm
    Mar 3, 2016
    1
    the best investment ever
    AntonChen
    AntonChen
    Mar 3, 2016
    2
    看情况,如果是用作开发建议 Emacs ,原因不表怕引战
    如果是服务器上用用,那就 Vim 吧。当然了 现在很多编辑器还有 IDE 都有 Vim 模式 所以学了不亏

    PS: 用 Vim 做开发的也很多,不过我觉得难点在于配置 Vim 一个好配置很难写
    PS2 :我在用 Vim 主要写 Shell ,写 Python 用 IDE ,计划学学 Emacs
    rock_cloud
    rock_cloud
    Mar 3, 2016
    3
    我的 VS , Intellij , Sublime 都装了 vim 插件,用起来巨爽无比~~前提是你得熟悉 vim 的操作。
    其实只是个工具而已,得看自己是否用得习惯。
    jsonline
    jsonline
    Mar 3, 2016
    4
    别人问 VIM , emacs 凑什么热闹,真是服了
    billion
    billion
    Mar 3, 2016
    5
    我开始使用 Vim 是被逼无奈,公司电脑装 Eclipse ,导致电脑巨卡无比,但是又不能使用其他的商业 IDE 。于是我只有使用 Vim. 结果后来发现 Vim 如此的好用以后,在家里也用 Vim 了。
    AntonChen
    AntonChen
    Mar 3, 2016
    6
    用 Vim/Emacs 的意义在于不会因为开发其它语言时还需要熟悉 IDE
    pagict
    pagict
    Mar 3, 2016
    7
    非常值得
    myid
    myid
    Mar 3, 2016 via iPhone
    8
    太值了。还犹豫啥?开始用吧 !
    crazyxin1988
    crazyxin1988
    Mar 3, 2016
    9
    值得学习,就算平时不用 vim 写代码
    服务器上 会点 vim 还是有用的
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    10
    @pagict
    @myid 稳妥!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    11
    @rock_cloud 哈哈 学习成本不是问题 我还是很想学的!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    12
    @AntonChen 谢谢建议!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    13
    @jsonline 都是好心建议~和谐!:)
    answerwa
    answerwa
    Mar 3, 2016
    14
    @jsonline 这就是来引战的
    hei1000
    hei1000
    Mar 3, 2016
    15
    我大量或者多文件编辑就是用 Emacs ,平时做笔记都是 Emacs 里面的 Org-mode ,少量或单文件就用 Vim ,在服务器服务器之类的编辑肯定得推荐学学 Vim
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    17
    @hei1000 谢谢! emacs 还不怎么了解 看来应该去了解一下
    sudoz
    sudoz
    Mar 3, 2016
    18
    @AntonChen 你都没学过 Emacs ,凭什么说“如果是用作开发建议 Emacs ,原因不表怕引战”,胆子也太大了吧
    daben1990
    daben1990
    Mar 3, 2016
    19
    我是前端开发,全部用 vim 编辑,多练习几次就好了,配合 Alfred ,基本可以做到免鼠标写代码。主要是双手不用离开键盘的感觉,会让你无法自拔哈。 https://github.com/fyddaben/dotfiles/blob/master/.vimrc,这是我的配置
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    20
    @ck1llc 好的!谢谢!
    hei1000
    hei1000
    Mar 3, 2016 via Android
    21
    @Neytoph Emacs 上也有模拟 Vim 的插件 evil-mode ,这样 Emacs 里面可以同时用 Emacs+Vim 提供的功能(我个人不用这个,不过好多 Vim 转过来的都会安装),所以学习 Vim 是肯定值得的
    wtbhk
    wtbhk
    Mar 3, 2016
    22
    并不是说非要学多高端啊,至少在 Sublime 里面开启 Vim 模式之后上下左右切光标、翻页、复制粘贴什么的快了很多
    loading
    loading
    Mar 3, 2016 via Android
    23
    会切换输入模式,会移动光标,会保存,会退出。
    够了!
    JackyHua
    JackyHua
    Mar 3, 2016
    24
    h j k l 这四个键正如 w a s d 一般,特别我没鼠标的情况下.
    louirobert
    louirobert
    Mar 3, 2016
    25
    "双手可以不离开键盘“这不是一个需要学习 VIM 的理由,很多优秀的编辑器都可以做到,比如 UltraEdit 。作为一个 VIM 用户,我觉得的理由有很多,但如果说有一条是必要的的话,那就是* nix 服务器调试/配置:你不能指望在服务器上安装 subline 或者其他任何 GUI 编辑器,你需要的是直接在服务器上打开/编辑文件,这是 VIM 就是标配了,几乎所有* nix 系统上都标配 VIM 作为编辑工具,甚至不是 emac 。
    expkzb
    expkzb
    Mar 3, 2016
    26
    看一下 vim 实用技巧 这本书,编辑效率提升一倍
    htfy96
    htfy96
    Mar 3, 2016
    27
    当学习一门新语言时(例如 rust 刚出来的那一段时间), vim 是唯一可用的带语法高亮的编辑环境
    Neytoph
    Neytoph
    OP
    Mar 3, 2016
    28
    @daben1990
    @expkzb 谢谢推荐!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016
    29
    @wtbhk
    @loading 这也是一种玩法吧,借鉴了部分 vim 操作~
    Neytoph
    Neytoph
    OP
    Mar 3, 2016
    30
    @louirobert 确实, vim 跨平台的能力也是想学习 vim 一个重要原因!
    china521
    china521
    Mar 3, 2016
    31
    Vim 用了 5 年了, 有时候还真得用鼠标.. 插件多了打开大文件,卡的那叫真卡,配合 sublime 用吧.
    lxrmido
    lxrmido
    Mar 3, 2016
    32
    vim 的价值在没有 GUI 的时候可以充分体现
    river1007
    river1007
    Mar 3, 2016
    33
    个人情况是 4 年多的 vim,现在开发项目都用 vim 。
    曾三度放弃 Emacs ,不能忍受非模式编辑器纯键盘操作对手指的摧残。
    如果没有洁癖,可以用 spacemacs ( vim 和 emacs 的合体吧)。
    个人感觉编辑器还是(neo)vim 比较高效, emacs 太重
    O(∩_∩)O~~
    joye1230
    joye1230
    Mar 3, 2016
    34
    emacs 重新打开文件后跳转到上次行号的问题一直没解决
    vim 原生态,所以放弃了 emacs
    kaichen
    kaichen
    Mar 3, 2016
    35
    Vim 从 Vi (诞生于 1976 年)这套东西,基本操作和概念学会之后起码十年内不用去折腾新的编辑器,最长的用户已经用了 40 年,时间投入性价比极高。 Emacs 同理。

    像 Mac 上,从 TextMate 到 Sublime ,再到现在的 Atom / VS Code ,主流编辑器一直在变,用 Vim 也习惯于用 Vim 的就不用折腾那么多。
    yuriko
    yuriko
    Mar 3, 2016
    36
    Java 开发表示……不用 ide 感觉甚是难活……

    VIM 最大的好处对我而言就是能在命令行里操作代码了。
    所以会用还是很必要的
    macauhonghong
    macauhonghong
    Mar 3, 2016
    37
    开始会有点难,但熟练后会很爽。用它编辑代码有好几年了。

    缺限肯定有,但深入学习肯定值。
    CoderRunner
    CoderRunner
    Mar 3, 2016
    38
    sublime 设置里有一行
    "ignored_packages": ["Vintage"]
    Vintage 就是 vim 的编辑模式
    mhb
    mhb
    Mar 3, 2016 via iPhone
    39
    既然学习成本不是问题,那还犹豫什么!搞!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    40
    @mhb 搞搞搞!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    41
    @river1007 谢谢经验!
    forsigner
    forsigner
    Mar 3, 2016
    42
    @hbkdsm can't agree more
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    43
    @china521
    @CoderRunner 感觉配合着用还不错 哈哈
    wupher
    wupher
    Mar 3, 2016
    44
    做运维时很需要,尤其人在机房,急赶脚本修故障什么的。

    做开发还是 IDE 更好用,尤其是在调试时。
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    45
    @yuriko 听说 java 用 vim 很痛苦...不过并不了解为什么...
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    46
    @wupher 我就是比较担心这个 我是 php 的 不知道调试会不会很蛋疼...
    elvodn
    elvodn
    Mar 3, 2016
    47
    @joye1230 Option->Save Place in Files between Sessions 这是功能, 不是 BUG.
    wenbinwu
    wenbinwu
    Mar 3, 2016
    48
    告诉别人你会用 vim
    告诉别人你不会用 vim

    你选哪个
    chmlai
    chmlai
    Mar 3, 2016
    49
    @Neytoph 大部分 IDE 都有 vim 绑定的
    zerofzt
    zerofzt
    Mar 3, 2016
    50
    FF 也支持 vim 模式哦
    其实如果不玩强大的功能,单单学下 hjkl wb idxy q@这样就能应付日常了
    当然你要效率就去配置吧
    一键编译或者运行什么的挺舒服的
    语法高亮对于学习新语言很友好
    记得不要随便用别人的配置
    aibay
    aibay
    Mar 3, 2016
    51
    省时间,防被坑。一旦给你一个陌生环境,你会 VIM ,直接开始干活,啥都不用做。不会?装这个,配那个,整一脑门子汗。
    magicdawn
    magicdawn
    Mar 3, 2016
    52
    git commit 不指定 commit message 就弹出 vim 让你写 commit message
    不知道咋用你连提交都成功不了~所以再不喜欢还是要懂一些的~
    gimp
    gimp
    Mar 3, 2016
    53
    用了 vim 会上瘾,根本停不下来
    xi4oh4o
    xi4oh4o
    Mar 3, 2016
    54
    语言基础不好的话还是推荐先用 IDE ,会帮助你认识各种错误。
    语言熟练以后以后 vim 会提高你编码效率
    ibreaker
    ibreaker
    Mar 3, 2016
    55
    当然要学
    dofy
    dofy
    Mar 3, 2016
    56
    当然值得学 送入门教程 https://v2ex.com/t/250995#reply12
    O21
    O21
    Mar 3, 2016
    57
    我觉得不值得。。 能写东西就好了
    cxbig
    cxbig
    Mar 3, 2016
    58
    工具就是工具,用得顺手才有效率。是 Editor 还是 IDE 并不重要
    附言里提到的比较,我只能说,新装的 vim 和的 phpstorm 相比, phpstorm 的开发效率显然要高
    但是如果你对 vim 很了解,各种相关插件和配置都已备妥,操作也熟练,工作效率上相差并不大
    strahe
    strahe
    Mar 3, 2016
    59
    个人觉得 vim 和 Arch 的学习曲线差不多吧,学会了用起来很爽而且很简单。
    cxbig
    cxbig
    Mar 3, 2016
    60
    @magicdawn
    话说 CLI 下不只是 vim 的,用 nano 或 emacs 也可以。而且提交时用-m 直接写就好了,不用激活编辑器。
    nicevar
    nicevar
    Mar 3, 2016
    61
    作为码农, vim 的基本使用还是要掌握,要不然有时候看着很着急,编辑个文本复制来复制去
    squallsdjl
    squallsdjl
    Mar 3, 2016
    62
    作为一个设计师,我表示已经开始习惯,还是靠谱的
    asxalex
    asxalex
    Mar 3, 2016
    63
    the best investment ever
    liko
    liko
    Mar 3, 2016
    64
    天天用纯净 vim 撸代码 - -
    94kuso
    94kuso
    Mar 3, 2016
    65
    学什么 VIM,Emacs 不比 VIM 要强大好用么?
    heganj
    heganj
    Mar 3, 2016
    66
    好用,也没必要放弃 IDE ,因为主流的 IDE 都有 Vim 插件
    gpw1987
    gpw1987
    Mar 3, 2016
    67
    这个貌似 linux 上 VIM 用的比较多,我 一开始学习的就是 VIM
    nasta
    nasta
    Mar 3, 2016
    68
    我连浏览器都装 vim 插件...
    noahliaszn
    noahliaszn
    Mar 3, 2016
    69
    @nasta 我的 chrome 也是唉瞬间觉得哪里都不想用鼠标咯
    yxjxx
    yxjxx
    Mar 3, 2016
    70
    想学就去学,不要那么功利。

    私以为 拓宽自我边界 的事都值得去做。
    peterzky
    peterzky
    Mar 3, 2016
    71
    先学 vim 的操作模式,然后 Spacemacs 走起
    magicdawn
    magicdawn
    Mar 3, 2016
    72
    @cxbig vim 貌似是默认的~懂一点怎么移动就写个 commit message 就没去改~貌似是 EDITOR 环境变量 ?
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    73
    @yxjxx 这话在理!谢谢!
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    74
    @nasta
    @magicdawn 话说浏览器 vim 怎么使?用在何处啊?
    Neytoph
    Neytoph
    OP
    Mar 3, 2016 via iPhone
    75
    @magicdawn @错了...不好意思...
    Jaylee
    Jaylee
    Mar 3, 2016
    76
    千万要学 还要好好用
    bramblex
    bramblex
    Mar 3, 2016❤️1
    77
    别人只会在乎你写出来了什么东西,没人在乎你用什么写的。
    woai110120130
    woai110120130
    Mar 3, 2016 via Android
    78
    需要的时候再学
    Felldeadbird
    Felldeadbird
    Mar 3, 2016
    79
    学 VIM 好处就是 PC 全平台几乎都没压力修改代码了。
    学不学其实影响不大。 我服务器很少会编辑文件的,我最常用就是 nano 了。
    abscon
    abscon
    Mar 3, 2016 via iPhone
    80
    @Neytoph Firefox/Vimperator
    cxbig
    cxbig
    Mar 3, 2016
    81
    @magicdawn 通常来说 Linux 下默认编辑器是 vi ,但是可以在 2 个层面修改:
    $ export VISUAL=vim && export EDITOR="$VISUAL" # bash/zsh 设置
    $ git config [--global] core.editor vim|emacs|nano # git 设置
    bramblex
    bramblex
    Mar 3, 2016
    82
    @abscon vimperator 不如 pentadactyl 。
    TinW
    TinW
    Mar 3, 2016
    83
    如果不会就不要学了。
    oreo
    oreo
    Mar 3, 2016
    84
    讨论 vim 的话题总能上 hot
    onlyice
    onlyice
    Mar 3, 2016
    85
    会基本的编辑操作就好了。。

    感觉有成熟 IDE 的领域就没太多并要用 Vim 。。
    Neveroldmilk
    Neveroldmilk
    Mar 3, 2016
    86
    emacs 党自重。在 Linux 上混,必须学 Vi/Vim ,否则 CAT 那个界面恶心死你。
    lzjun
    lzjun
    Mar 3, 2016
    87
    值得,推荐关注公众"每日一 Vim"
    ![vim]( http://7xqkjp.com1.z0.glb.clouddn.com/meiriyivim.jpg)
    theohateonion
    theohateonion
    Mar 3, 2016
    88
    vim 不仅跨平台 还跨 ide 用 vim 的话可以少学很多 IDE 的快捷键
    crayhuang
    crayhuang
    Mar 3, 2016
    89
    Java 开发,几度尝试 vim ,几度放弃,还是用 intellij 算了~~~唉
    hardware
    hardware
    Mar 3, 2016
    90
    『最近经常要在服务器上编辑』
    这个还有得考虑么?
    wizardoz
    wizardoz
    Mar 3, 2016
    91
    首先 VIM 是一个编辑器,不是一个 IDE 。
    某些语言(如 C++、 Java 等)使用 Emacs 或者 Vim 会略显吃力。
    但是 IDE 毕竟通常都是专用的,扩展能力很差。
    用 Emacs 的 org-mode 写文档,直接导出为 latex 文件然后编译为 pdf ,代码高亮爽的不要不要的。
    JamesPan
    JamesPan
    Mar 3, 2016
    92
    @crayhuang 写 Java 不用 IDE 简直就是地狱模式😂
    yangxiongguo
    yangxiongguo
    Mar 3, 2016
    93
    我也不用鼠标啊,我用触摸板[doge]
    KentY
    KentY
    Mar 3, 2016
    94
    你这个问题其实不用来问, 过不了多久, 你这个问题会变成"vim 我一定要学会" 或"vim 不是人用的, 他们花那么多精力太不值得了"

    自己觉得有用就好了, 用别的编辑器一样的, 不用强迫自己.
    以前自己爱的东西也想让周围的人用, 后来发现, 好东西不要显示, 当别人不行的时候, 拿过来咔擦, 我的编辑器一下就弄好, 他们自己羡慕会下功夫去学的.
    eb0c6551
    eb0c6551
    Mar 4, 2016 via iPhone
    95
    我有几百行的 vimrc 并且用 youcompleme ,我觉得不值得。

    因为除了 ssh ,平时使用 IDE 效率碾压 vim 几百条街。
    sethverlo
    sethverlo
    Mar 4, 2016 via iPhone
    96
    楼上只是有人推荐跟 vim 一样好用的替代品 Emacs 而已,「 emacs 党自重」「 emacs 凑什么热闹」的人是什么心态……
    ryd994
    ryd994
    Mar 4, 2016
    97
    用一段时间你就知道答案了
    喜欢的自然喜欢
    ruanyu1
    ruanyu1
    Mar 4, 2016
    98
    第一个使用的编辑器是 vim ,我觉得也会是最后一个。因为真心找不到理由去换一个,并且已经退化到鼠标用不利索。这是我的 vim 配置,如果感兴趣,可以参考[bigvim]( https://github.com/ruanyl/bigvim)
    lightening
    lightening
    Mar 4, 2016
    99
    这种事情自己学了才知道。服务器上编辑一下文件是挺有用的。至于要不要用作主力编辑器可以自己慢慢研究。

    就我个人来说,用了 2 年左右 VIM 后转 Emacs 了。然后又用了 2 年转 Sublime 了,现在用了 3 年多,挺满意的。
    onceyoung
    onceyoung
    Mar 4, 2016 via Android
    100
    有 IDE 能用就先别学了,如果你每天面对服务器开发,学习一下吧,当然基本的操作还是要会啊。
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2853 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 202ms · UTC 13:17 · PVG 21:17 · LAX 05:17 · JFK 08:17
    ♥ Do have faith in what you're doing.