我接触 linux 的时间也不长,大概就几个星期,目前主力 IDE 就是 JB 全家桶+Vim+Vscode。
但是饱受知乎浸淫,接触到一个理念:Vim 永远是世界上最好的 IDE! 于是我就开始学习使用 Vim。
Vimtutor 也刷了好几遍了,快捷键大概也知道怎么用了,那么,要想打造 IDE,总得装插件吧?
好吧,先把 Vundle 装上去,整个过程还是十分轻松愉快的。
不愉快的体验就发生在代码补全插件那里了。
之前没有查过资料,直接在 Github 上面搜代码补全插件,一看,YCM,哇,一万多个 Star,装!看了一下,没问题,脚本解决的事,对照文档开始装,结果...C 语言部分报错,装不上。只能采用下面的传统安装方法,结果在编译过程报错,提示我找不到 libcpp.so ,可是我都已经按照你的要求把 llvm 和 C 的二进制下了,还放到对应的文件夹里面啊?为什么报错?怒删!
好吧,谷歌一搜,原来 YCM 是全世界最难安装的 Vim 插件之一,好吧,我去 V 站看看,哦,有个更轻量的 deoplete,看文档还蛮简单的啊,装!
先装 neovim,再用 Vundle 装插件,然后配置补全源,C++和 Py 用的默认的 deoplete-clang 还有 deoplete-jedi,按文档配置以后就变成了这个样子:
可是,当我满怀期待的新建一个 CPP,准备写老师的作业的时候...
补全框呢?诶?为什么看不到?空的?而且我不是开了括号自动补全吗?为什么没用?
现在的我已经完全失去了折腾的热情,因为我已经连续折腾这个了三天,连 stackoverflow、v2ex、知乎、google 都搜了一遍...准备老老实实用 vscode,安逸。
哪位大手子能带带我装一下插件吗?我不想努力了.jpg
或者,有没有比较新一点的代码补全插件的安装教程?
OK,休息了一下以后,我换成了nvim++vim-plug+LSP,按照官方文档 https://github.com/autozimu/LanguageClient-neovim/blob/next/INSTALL.md 的介绍,加入参数后嘛,就变成了这样...
没错...LSP的安装卡死了...半天不动,按理来说应该会开启sh文件配置的,但是没有...
1
18076362432 2018-05-17 01:57:59 +08:00 via iPhone
哈哈哈哈
|
2
lunafreya 2018-05-17 02:02:20 +08:00 via iPhone
vim 我是从最基本的生存方式 :w :q 开使用。
不需要一开始就急功近利地搞成完全体吧 |
3
image72 2018-05-17 02:11:47 +08:00
首先你要解决一个问题:how to exit vim?
[![1_AD1e170YTJaiUBypv1H9Ow.jpeg]( https://i.loli.net/2018/05/17/5afc7452b09fb.jpeg)]( https://i.loli.net/2018/05/17/5afc7452b09fb.jpeg) |
4
marcosteam OP @image72 :q,:wq 这个我还是会的,都说了刷了好几遍 vimtutor 了(¬_¬)
|
5
Tetsuchou 2018-05-17 02:14:31 +08:00 7
人生苦短我用 nano
|
6
eclipselu 2018-05-17 02:40:11 +08:00
刚接触 vim 的话也没必要一次搞得大而全,慢慢来,别浪费时间在配置上太多了,毕竟你是拿它来帮助你完成工作的。我想说 vscode 也很不错啊,我现在用得爽歪歪,为啥要转呢?
|
7
Reficul 2018-05-17 02:48:52 +08:00 via Android 3
vim 什么时候被称作 IDE 了🤔
|
8
staticor 2018-05-17 03:03:00 +08:00
本来想睡了, 大半夜的.
一看到这个帖子手贱点进来了, 笑得不困了 -- 轻调戏 |
9
jmc891205 2018-05-17 03:07:24 +08:00 3
vim 就是个好用的编辑器而已
何必非要妄想把它改造成 ide 呢 |
10
inflationaaron 2018-05-17 03:18:08 +08:00 via iPad 1
你需要投入 Spacemacs 的怀抱
|
11
thedrwu 2018-05-17 03:20:54 +08:00
@marcosteam 真正的老排 vim user 不用 :wq 而是 ZZ。
|
12
quinoa42 2018-05-17 04:04:25 +08:00
你装的不是 neovim+deoplete 吗,为什么看你的配置里还有专门给 vim 用的一些实现 neovim 功能的插件和 neoinclude
推荐以下步骤: 1 )改用 vim-plug 而不是 vundle (更轻量,配置方便,多进程更新) https://github.com/junegunn/vim-plug 2 ) https://github.com/zchee/deoplete-jedi/wiki/Setting-up-Python-for-Neovim 3 )装 https://github.com/Shougo/deoplete.nvim (`Plug 'Shougo/deoplete.nvim', { 'do' : ':UpdateRemotePlugins' }`) 4 ) https://github.com/zchee/deoplete-jedi 不是很明白的话可以参考一下我的 neovim 配置 https://github.com/quinoa42/dotfiles/blob/1fe58ed1452a7d50c60df6639400b54f6c34992b/applications/nvim/init.vim |
13
NoDocCat 2018-05-17 06:29:09 +08:00 1
我就这么说吧,说 VIM 是最好的编辑器指的是 VIM 的操作方式,而不是 VIM 本身。
听我一句劝,别把有限的时间浪费在这些玩意上,IDE 装个 VIM 插件照样用的爽。 |
15
LCD 2018-05-17 06:56:56 +08:00 via Android
就像开电动车就是图方便,不要改装上倒档,变速箱等华而不实的装备。如果有这样需求,直接开小车好了,手动狗头
|
16
aice114 2018-05-17 07:01:57 +08:00 via Android
我以前也这样,用 vim 就像用完全体,后来发现还是 ide+vim 好用
|
17
wlwood 2018-05-17 07:07:09 +08:00 via Android
哈哈哈哈,怎么感觉突然看到了当年的自己🙃🙃🙃,老哥,你还可以折腾下 emacs,或许这才是你的最爱哟!
认真脸,要能写的一手好代码,什么编辑器不都还是一个编辑器么? 肯定多年后回来看,写了一首好代码,就想着怎么做成一个好产品,做成了好产品,就想着怎么提高用户量知名度!当年竟然在用什么编辑器浪费了这么多时间😤😤😤(`⌒´メ) |
18
marcosteam OP @wlwood 首先我得去买个脚踏板😂
|
19
plko345 2018-05-17 07:16:13 +08:00
从来没刷过 vimtutor,会最基本的功能,懂每个快捷键的意思,用久了就习惯了,刚开始特意学那么多对于使用一个工具而言似乎不太合适.vim 要学的还是相当多的,达到满足自己的要求即可
|
20
noqwerty 2018-05-17 07:20:09 +08:00 via iPhone
|
21
waruqi 2018-05-17 07:30:12 +08:00 via Android
不喜欢自动补全,干扰我打字,直接用用 supertab 补全下就行了,neovim + supertab + tagbar + leaderf 已足够。https://github.com/waruqi/vim
|
22
BBCCBB 2018-05-17 08:23:57 +08:00
还要装 jedi, pip install jedi
|
23
marcosteam OP @BBCCBB 装了…
|
24
wd 2018-05-17 08:25:43 +08:00 via iPhone
为什么失败了还好意思发这么长一篇出来…
|
25
omph 2018-05-17 08:27:14 +08:00
有打包好的 vim-ide,不用折腾了
https://github.com/SpaceVim/SpaceVim |
26
halk 2018-05-17 08:29:17 +08:00 via Android
原来配置好,后来又卸载了,毕竟没有纯终端远程开发的需求,另一方面是自动补全有时会有卡顿
还是 jb+vs+vim 挺好用的,根据场景选择不同工具就够了 |
27
zeny620 2018-05-17 08:29:38 +08:00 via Android
|
28
caixiexin 2018-05-17 08:31:04 +08:00 via Android
大牛用 vim 写代码,从来不用补全的:doge
|
29
aaronzjw 2018-05-17 08:35:08 +08:00
space-vim 了解一下,我以前觉得 vim 麻烦就用这个。不过后来还是手动编译 ycm 了, 该踩的坑还是得踩,不然遇到了还是心虚
|
30
ynyounuo 2018-05-17 08:36:08 +08:00 via iPhone 1
……这都需要教程吗?官方 doc 读个大概自己都能 debug 了,而且 YCM 官方还提供了一个配置好的 extra conf 可以参考。
@omph SpaceVim 恶意宣传的黑历史了解一下。本站搜索即可,YC 也有。 |
31
gbin 2018-05-17 08:37:40 +08:00 via Android
<C-n>,<C-p>,<C-x><C-o>,<C-x><C-f> 插入模式下看看这些快捷键是否有用。
|
32
JsonLee 2018-05-17 08:43:29 +08:00 via iPhone
已经放弃 vim+vundle 了,装的插件多的时候启动很慢,换成了 neovim 了,写 python 还是蛮不错的!
|
33
andyliwrldk 2018-05-17 09:02:23 +08:00
vscode 不是挺好?
|
34
wr410 2018-05-17 09:06:38 +08:00
搞定 vim 的基本操作就可以了
经常看到同事翻个日志都要上去拖回来在用文本编辑器打开 其实 vim 搜索或者 grep 都可以翻倍提高效率,不想说也懒得说,不关我事 如果要批量操作文件,sed,awk,grep 随便组合都比 vim 方便 恕我直言,说什么 vim 写代码的其实都是在装逼 |
35
grewer 2018-05-17 09:07:42 +08:00
是 J 家不好用,还是你飘了
|
36
tamlok 2018-05-17 09:08:55 +08:00
先看看 Practical Vim 这本书。用了六七年,写的 C 或 CPP,一直都没有搞自动补全。
|
37
yongSir 2018-05-17 09:11:23 +08:00 1
其实你只要把任何 ide 都用成 vim 就好了
这样虽然修正 但你获得了不止一个 vim 坚决打倒一切 原止教义主义 |
39
yanzixuan 2018-05-17 09:23:16 +08:00
原来我还愿意折腾一下,但是上了年纪,最后选择 pycharm+vim 插件。。
|
40
zzf2017 2018-05-17 09:26:12 +08:00
有 ide 我就不打算用 vim 这种编辑器了。各位有什么必须会 vim 的理由吗
|
41
liuxu 2018-05-17 09:28:10 +08:00
"接触到一个理念:Vim 永远是世界上最好的 IDE! ",不再是了。
|
42
ech0x 2018-05-17 09:28:41 +08:00 via iPhone
|
43
kingzez 2018-05-17 09:32:59 +08:00 via Android
VSCode 开 vim 插件 也不错
|
44
ilaipi 2018-05-17 09:35:25 +08:00
|
45
ruchee 2018-05-17 09:39:29 +08:00
先不要去折腾 YCM 这么复杂的补全插件,一开始用自带的关键字补全( Ctrl+P ),再加上 snipMate 就行了,把 Vim 基本的按键、功能用熟悉再说
作为一个同样从大学时代自己折腾过来的人,一开始就想搞得 666,只会打消自己的激情 |
46
satanandroid 2018-05-17 09:39:41 +08:00
知乎,分享你刚编的牛逼。
vim 是编辑器,不是 ide..... 不要为了装逼去用 vim 等你真的要远程去服务器没有的界面的时候,就会用了 |
47
nary 2018-05-17 09:41:10 +08:00 via iPhone
早就放弃了,一直用的 sublime
|
48
yzmm 2018-05-17 09:41:28 +08:00
有那时间还不如换个稳定强大的 ide
|
49
scarletmu 2018-05-17 09:42:31 +08:00
我懒...所以还是用 VSC 加 Vim 插件
|
50
liujunsheng 2018-05-17 09:42:41 +08:00
为啥不用现成的 ide 呢?
|
51
goinghugh 2018-05-17 09:44:05 +08:00
同样折腾过 vim,emacs,spacemacs,最后还是使用 ide...
|
52
Applenice 2018-05-17 09:44:51 +08:00
最后你会发现...弄点常用的设置,用几个快捷键,就完事了.....
|
53
linux40 2018-05-17 09:46:02 +08:00 via Android
language server protocol 了解一下?
话说回来,emacs 的 ycmd 很好装,直接用包管理器就行了,不动脑子,而且 emacs 有 evil,直接在里面用 vim 快捷键。 |
54
ucun 2018-05-17 09:52:42 +08:00
用 VIM 追求的就是简单。
只配置了 python 代码高亮 自动缩进 其他什么都没动。 |
55
Zkiller 2018-05-17 09:59:35 +08:00
建议用 IDE+Vim 配置
|
56
yuuko 2018-05-17 10:02:37 +08:00 via Android
现在还在用(n)vim 的人,是已经被习惯绑架的,比如我
|
57
Lucups 2018-05-17 10:07:09 +08:00
能花钱解决的问题就不要花时间,尤其是花了时间还不一定能解决。
所以我选 JetBrains ~ |
58
hicdn 2018-05-17 10:07:49 +08:00
vim 是编辑器,想打造成 IDE 的,本质是你还是需要一个 IDE,直接用 IDE 就好。可以在 IDE 里装 vim 插件。
|
59
tonghuashuai 2018-05-17 10:11:16 +08:00
费劲把 vim 打造成 IDE 那干嘛不直接去用 IDE 呢?觉得 lz 的方向就错了,用 vim 就是为了不去用 IDE 的某些特性啊
|
60
lemonlwz 2018-05-17 10:17:47 +08:00
楼主到底是喜欢 vim 的操作方式,还是喜欢 vim 编辑器本身?
取其精华,为我所用 |
61
congeec 2018-05-17 10:18:42 +08:00
我当初也是这样
建议 Linux 以及编程搞熟了再来尝试 你被知乎那家伙坑了 |
62
jswh 2018-05-17 10:26:54 +08:00
用 vim 折腾插件只是为了提高效率,但关键是先学好它的模式输入。这个有了你就会发现,啥?这个编辑器 /IDE 没有 vim 模式?辣鸡!
|
63
defunct9 2018-05-17 10:31:21 +08:00
用毛插件啊,就用原生的 vi 就好。
|
64
mseasons 2018-05-17 10:33:43 +08:00
VIM 很强的,熟练运用+装满插件能有 VS 一半的威力。
|
65
alexzhou 2018-05-17 10:37:46 +08:00 1
学习成本抵得上学一门编程语言了
|
67
BBCCBB 2018-05-17 10:41:29 +08:00
|
68
lululau 2018-05-17 10:45:19 +08:00
vim / emacs 原教旨主义者为什么会反对用插件?想了想,可能有两个原因:
1. 装了各种插件,容易遇到各种问题,自己动手能力不足,搞不定 2. 他人机器或服务器上没有装插件,或者没有权限装插件? 哪位原教旨主义者能够不吝赐教一下 |
69
bravecarrot 2018-05-17 10:55:04 +08:00 via iPhone
@wr410 改代码需要啊 deploy 之后 调参数什么的 就要 vim
|
70
c0pper 2018-05-17 11:04:17 +08:00
除了 evil 其他 vi 插件都不够 vi,evil 也因为一些 emacs 的问题在 vi 上好用的 emacs 上不好用了。楼主你的补全服务的 debug 信息不贴上来有什么好讲的,就像 gocode close && gocode -s --debug 里面的,这根本不是 vim 的问题。老是想打圣战是不行的。
|
71
tombear001 2018-05-17 11:13:46 +08:00
写前端用的 webstorm,想转向 vscode,也碰到了代码补全的问题。
ws:![]( ) vscode:![]( ) vscode 硬是少了个分号,但偶尔又会自己冒出来,虽然影响不大,但是零零散散的,总有类似的问题,体验不好,老是要折腾,还是 ws 无脑好,懒得折腾了。 |
72
Mrkon 2018-05-17 11:15:44 +08:00
大家有遇到过 ctrl + v 然后 shift + a 然后 esc 不能整体改变区块的情况吗?
求解答! |
73
swchzq 2018-05-17 11:25:01 +08:00
Spacemacs 了解一下!
对 evil(即使用 vim 的操作方式操作 emacs)的支持得很好好 开箱即用, 提示友好~ |
74
zhze93 2018-05-17 11:38:17 +08:00
emmmmm, vim 我一般就拿来提代码。
平常用 pycharm |
75
nikolai 2018-05-17 11:44:30 +08:00
vim 只在服务器上用,平时 sublime 或者 VSCode + vim 插件。另外 YCM 太笨重了,已经放弃。
|
76
skt041959 2018-05-17 11:44:33 +08:00 via Android
我现在还在用 vim 是因为公司的开发都在远程服务器上,ssh+vim 比任何 VNC 的响应速度都快。写 C++的话,YCM 基本上是最好的选择,绕不过去的……
|
77
phoebuss 2018-05-17 11:45:16 +08:00 via Android
YCM 是有门槛的…首先你得知道怎么从源码编译 vim, gcc, cmake, llvm …反正我在 ubuntu 12.04 用起来了
|
78
dychenyi 2018-05-17 11:47:56 +08:00
@lululau
你这回答有点搞笑了。任何事物都有定位,如果用于主流定位之外的用途也未尝不可。但如果反过来嗤笑主流定位的用途,那就太搞笑了。 这跟前些年,用 ubuntu 的想方设法打造成主力娱乐机的用户嘲笑 windows 用户低能。 这跟河上有座桥,你开个越野车,偏从河里走,就要嘲笑我开小轿车从桥上走的。你尽可以耍你的越野,但别来嘲笑我。 鄙视链真是哪里都有。 回到本题,真习惯 vim 的编译模式,你装满插件的 vim 真有我基本 vim+IDE 的 vim 模式来的好用? |
79
itgoyo 2018-05-17 11:52:30 +08:00
本人前几天爬了好多帖子也刚好成功安装 YCM,自己在博客里发了一篇文章,备忘用的,希望对有需要的朋友有所帮助,我的环境是 Mac。
https://itgoyo.github.io/2018/05/10/Vim%E5%AE%89%E8%A3%85YouCompleteMe/ |
80
caixiexin 2018-05-17 12:33:02 +08:00 via Android
@lululau 讲真,什么事情都想用 vim 才是原教旨主义,明明 ide 加 vim 插件可以更出色完成工作。。
|
81
j5shi 2018-05-17 13:11:20 +08:00
你用 YCM 是写什么代码?
|
82
marcosteam OP @j5shi C++还有 Python,可能会学 js
|
83
RockShake 2018-05-17 13:28:31 +08:00
折腾使人进步
|
84
poplar40 2018-05-17 13:31:02 +08:00 via Android
前几天刚刚搞定了补全,不过是用 vim 8.0 加上 YCM。照着 YCM 官方编译教程搞完之后,然后还要记得配置一下,把系统各种 lib 文件夹加上。。
|
85
marcosteam OP @poplar40 我也是 8.0,有什么经验吗?
|
86
f4nyc 2018-05-17 13:52:04 +08:00 via iPhone
ycm 装不好……算了…… vim 不适合你
|
87
afx 2018-05-17 13:54:09 +08:00 via iPhone
当年就是这么放弃 vim 的,改造成 ide 简直就是在浪费生命,最后还不好用
|
88
ironx 2018-05-17 13:56:34 +08:00 via Android
玩过一阵子就不想用了。不过每次使用 vim 快捷键还是超爽的
|
89
marcosteam OP @ironx 是的,快捷键方便的不要不要的
|
90
ixx 2018-05-17 14:04:26 +08:00
我觉得 vim 的思想不只是局限在一个软件上 而是一套键盘操作的思想 jb 全家桶都有 vim 插件 装一个不就好了吗?
|
91
zhaoweichen 2018-05-17 14:12:12 +08:00
默认的 Ctrl + N 不支持么?
|
92
twor 2018-05-17 14:19:48 +08:00
对于我来说,vim 不是最好用的,但也不难用,ssh + vim 感觉可以 code anywhere by any computer, 很安心但感觉,效率低一点(也许并没有),也就无所谓了
|
93
liuxey 2018-05-17 14:41:51 +08:00
同折腾过,现在是 IDE + vim,chrome+vim, 看来我始终和 vim 无缘
|
94
nekoyaki 2018-05-17 14:57:46 +08:00
@wr410
我反对原教旨 vim 主意,但我觉得你说“都是装逼”这话说得就有点武断了。我就拿 vim (其实是 gvim )写代码,在工作里用 VIM 写代码能写下去的人,必然说明 vim 方案比 IDE 更能满足需求,没人拿工作进度和绩效开玩笑。 像我为什么用 vim,不用 IDE ?是我确实对 vim 比较熟,加上平时要写好多种语言,不是一个 IDE 能搞定的,用一个 vim 写,不用切换肌肉记忆。 另外我也不写像 java 这种需要 IDE 做大量生成的东西。可能换别人就会用 sublime 写,所以我拿 vim 写。 至于省内存、启动快之类的小优点也有不少。 |
95
chocotan 2018-05-17 15:31:04 +08:00
idea 装个 vim 的插件
|
96
lzhCoooder 2018-05-17 15:33:35 +08:00
看一下这篇文章,蛮有用的 https://www.jianshu.com/p/d908ce81017a?nomobile=yes
|
97
winiex 2018-05-17 15:36:33 +08:00
找一千万只猴子,让他们尝试退出 VIM 编辑器,其中必有一只会打出完整的圣经。
|
98
qf19910623 2018-05-17 15:57:10 +08:00
@eclipselu 然而补全是最基本的需求吧,没这个完全没法干活了
|
99
luoer 2018-05-17 16:12:33 +08:00
丢 vim 用了这么久真没用过代码补全
|
100
cxbig 2018-05-17 16:22:16 +08:00
学习曲线太高,各种合适的插件要自己安装配置、安排快捷键。没几年功夫慢慢深入,不成的。
|