需不需要用 vim 搭建开发环境来替换 IDE?

2019-10-20 11:31:49 +08:00
 alphaprogrammer

由于后续开发设计底层驱动之类,在考虑用 vim 搭建开发环境好一点还是 IDE 好一些? 大家有什么想法吗?

9906 次点击
所在节点    程序员
98 条回复
Chenamy2017
2019-10-21 13:30:31 +08:00
喜欢加有时间就去折腾吧,采用适合自己且喜欢的工具。
sirius4gnu
2019-10-21 14:20:33 +08:00
学吧,艺多不压身,何况 VIM 还能让你站在鄙视链的顶层。
wizardoz
2019-10-21 14:36:56 +08:00
VIM 那不是快捷键,那叫编辑指令。因为指令间是有前后逻辑关系的,不是像 Ctrl+s 那样的快捷键。
wizardoz
2019-10-21 14:38:53 +08:00
另外,很多人说 VIM 在服务器上编辑的优势。我觉得编辑服务器上的文件可以用 vscode 的 sftp 远程编辑,效果会比在远程用 VIM 好的多。虽然我的 vscode 用的也是 vim 模式。
01000101
2019-10-21 14:40:07 +08:00
上学的时候接触过一点,工作以后在服务器上写代码,当然环境是前辈们搭建好的。只记些常用命令即可提高效率。要视情况定,如果是作为学习的爱好也不是不可以吧。
zunceng
2019-10-21 15:36:33 +08:00
有了 docker 以后 在服务器上编辑代码 在我这就成了历史
kuriko
2019-10-21 15:47:26 +08:00
ViM 学会操作方式就好了,训练自己不用鼠标就能对单个文件进行编辑的能力(没错,请不要用鼠标来切换编辑的位置)。之后随便弄个 IDE 装个 ViM 插件就行了。ViM 的高效操作 + IDE 的智能化,两开花。
james122333
2019-10-21 20:54:41 +08:00
vim 最好的使用方式我认为不是插件的模式
而是模块化 举例来说就像下面
aes-encrypt.vim
async.vim
buffers.vim
calculator.vim
comment.vim
completion.vim
diff.vim
encrypt.vim
general.vim
hexedit.vim
mysql.vim
pick.vim
process.vim
shell.vim
svn.vim
tabs.vim

必要的时候 source 即可 可以搭配模快衍生新的模块 这才叫程序员的编程工具
mkh10086
2019-10-22 00:55:58 +08:00
vim 适合编辑,但不适合调试
黄色的树林里分出两条路,我选择 IDE
0bject
2019-10-22 05:08:17 +08:00
sftp 不行吗
Kaiv2
2019-10-22 07:58:35 +08:00
推荐使用 coc.nvim
james122333
2019-10-22 09:42:47 +08:00
@mkh10086

首先你要知道 ide 是怎么调试的 基本上都有外部工具可以用
gdb、jdb 等等 因为 vim 内部功能组件都可有方程可以"简单"调用
因此可以进行组合功能 功能代码也可以复用 因此 vim 的学习曲线是一开始陡 最后平缓
大部份编程工具是一开始平缓 但你要扩充只能说门槛高

"不能编程的编程工具 不是个好工具"
FaiChou
2019-10-22 10:54:34 +08:00
@zwpaper 尝试过几次 emacs , 按照 tutorial 走过几遍(粗略), 但还是放弃了, 有什么好的入门方案教程?
stanjia
2019-10-22 11:55:01 +08:00
jetbrain 不好吗???
zwpaper
2019-10-22 12:26:28 +08:00
@FaiChou #93 你平时习惯使用快捷键吗?还有如果是 Mac 环境的话,可能会友好一点。

首先得习惯移动光标的快捷键

C-n (Next)
C-p (Previous)
C-b (backward)
C-f (forward)

对应 上 下 左 右
这个快捷键在 Mac 平台是系统级的。

然后看你使用的场景,像我,Golang 开发,Emacs 还是很友好的,Go Mode,LSP 配置好,对应的快捷键稍微记一下,自然就用起来了。

然后就会发现有地方不舒服,再找对应 package,从 Melpa 装上就好了。
高频操作就绑快捷键,低频操作就 M-x 执行一下命令就好了
感兴趣的时候,看看别人写的包,还能学学 Lisp
---
说到底,还是有一个使用习惯的过程,习惯了之后,大部分的工作都可以在 Emacs 里完成了
FaiChou
2019-10-22 14:02:28 +08:00
@zwpaper 公司领导想要统一技术栈 clojure 和 clojurescript, lisp 的一个方言, 如果单纯想用 emacs 作为平时开发工具而不学 clojure 是不是难度会降低些, 或者如果想要学 clojure 的话, 是不是应该先习惯几个月的 emcas? 因为我发现有些语法不是一样, 比如 (let ((local-v "ABC")) (foo local-v)) 这里我同事说语法错误应该用 [], 他应该是当成 clojure 了. 所以为了避免一些矛盾, 学习路径应该是 lisp -> elisp -> clojure ? 请给几点建议
zwpaper
2019-10-22 14:27:10 +08:00
@FaiChou 国内少有公司会把技能树点在 clojure 上,厉害了!

不过以我浅薄的 lisp 姿势来说,各家方言差别还是蛮大的,个人感觉没有你说的学习路线…该学哪个方言就好好学就是了…

至于 clojure,我也不了解,所以也没法给你建议
qdu
2020-04-17 22:36:15 +08:00
只用 vim 不用任何 IDE 的人飘过...长期远程在服务器上 tmux + vim 码代码和编译,在任意地点只要有台破电脑和网络就能无缝衔接地继续上次的工作

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/611081

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX