在 V2EX 搜了好多帖子,看到大家从 win 切换到 mac 时少了 source insight 所带来的不习惯。 由于 V2EX 里的帖子有一些比较久了,现在 mac 平台阅读 c/c++代码使用什么 ide.只是阅读,由于代码量大,本地编译不现实。 最好是 mac win 跨平台的.
![]() | 1 x1596357 2019-04-02 19:58:19 +08:00 via iPhone qtcreator, 平时看 wine 代码 4 百万行都不怎么卡 |
2 imkerberos 2019-04-02 20:00:36 +08:00 没有. |
3 hilbertz 2019-04-02 20:02:39 +08:00 vs, vsc |
![]() | 6 waruqi 2019-04-02 20:08:40 +08:00 via Android ![]() understand |
10 superzou 2019-04-02 20:36:26 +08:00 via Android understand |
12 52coder OP @hilbertz 装了 c/c++插件,实现不了查看引用功能,搜索了下还要装 gtags,现在在 windows 上试验,mac 上晚上下班回去试验。 |
13 fengjianxinghun 2019-04-02 20:56:48 +08:00 via iPhone understand |
![]() | 14 ggicci 2019-04-02 20:57:48 +08:00 sourcegraph,还能自己搭私服 |
15 fengjianxinghun 2019-04-02 20:58:16 +08:00 via iPhone ![]() mac/linux 调试我用 idapro 源码调试 看代码 understand 写代码 emacs |
16 kristpan 2019-04-02 21:16:34 +08:00 via Android 你们的 understand 用的盗版的吗? |
19 sadhen 2019-04-02 21:48:09 +08:00 如果在参与开源项目的话,可以向 Intellij 申请 CLion 的 License |
![]() | 21 sinxccc 2019-04-02 22:25:36 +08:00 我选择 wine Source Insight.. |
![]() | 22 zjsxwc 2019-04-02 22:26:48 +08:00 via Android jb 家的不好用吗? |
![]() | 23 yuting0501 2019-04-02 23:19:16 +08:00 via iPhone ![]() 我觉得 VSCode 可以结束这个话题,配置好 intellisense,source insight 这种上古软件可以安心退休 |
![]() | 24 hackpro 2019-04-02 23:22:38 +08:00 understand |
![]() | 25 wzhy 2019-04-02 23:40:25 +08:00 via Android @x1596357 qtcreator 打开一个项目中的源代码文件( cpp),这个文件中有很多黄色的 warning (语法之类的),然后就相当卡,特别是改正了其中几个 warning 的瞬间,卡到爆……有没有办法解决? |
![]() | 28 lovedebug opengrok ?万能 |
![]() | 31 chiu 2019-04-03 00:40:01 +08:00 via Android 公司有配 SlickEdit 的 license,但我自己用不习惯,Mac 目前用 VSC,配合一些插件用还可以。 |
32 UFc8704I4Bv63gy2 2019-04-03 00:44:46 +08:00 via Android codeblocks 了解下,我觉得是最好的代码阅读工具 |
33 52coder OP @yuting0501 决定折腾 vscode 了,有没有具体配置相关的教程? |
34 leighton 2019-04-03 00:54:14 +08:00 via iPhone 我不信 qtcreator 还能比 vscode 卡 |
![]() | 35 ourleven 2019-04-03 01:27:16 +08:00 via iPhone 竟然没人提 sublime |
37 livepps 2019-04-03 08:26:01 +08:00 via Android cmake 工程,clion 非常好用,如果不是,跳转可能有时候不准确。 |
![]() | 38 BBCCBB 2019-04-03 08:37:53 +08:00 clion 或者 eclipse 试试 |
40 52coder OP @BBCCBB clion 基于 cmake,我现有的工程都是 makefile,楼上也有朋友说不是 cmake 工程跳转不准确,我昨天试验确实是这样。 |
![]() | 41 x1596357 2019-04-03 09:39:09 +08:00 via iPhone @wzhy 关闭 line annotation 试试,如果项目真的很大你要看完成索引没有,在右下角有个进度,没完成索引前 CPU 占用率是很高的 |
![]() | 42 ww2000e 2019-04-03 09:40:58 +08:00 vim+ycm... |
43 somebody 2019-04-03 09:43:33 +08:00 via Android CLion,自己导入一下,生成 cmake 文件,再适当修改。 看 40 万行代码的 Android art 代码全靠它 |
![]() | 44 x1596357 2019-04-03 09:44:08 +08:00 via iPhone 再不行的话,你可能需要关闭 clang 索引插件,大项目会吃几个 G 内存,你可能内存不足了。 |
![]() | 45 juzipeek 2019-04-03 09:45:44 +08:00 可以尝试下 understand (收费),kdevelop (免费) |
46 tcfenix 2019-04-03 09:47:02 +08:00 跨平台的话真心推荐 clion,保证 win mac 等各种平台统一的体验,甚至于其他语言,比如 Golang,JAVA,PYTHON 都能保证统一的手感. clion 的跳转应该是基于 cmake 的,之前使用个 makefile 的时候就是我又自己手动维护一个 cmakelist 来保证跳转. |
![]() | 47 eliteYang 2019-04-03 09:47:21 +08:00 clionvscode vs for mac |
49 cstj0505 2019-04-03 09:56:18 +08:00 vim+ycm +1 |
50 GoodRainChen 2019-04-03 10:02:45 +08:00 居然没有提 xcode 的? |
52 52coder OP @cstj0505 vim+ycm 跳转和自动补全可以实现之后,查看函数调用之类的呢?颜值党表示,vim 看起来有点古老了。 |
53 52coder OP @GoodRainChen xcode 是不是太重了? |
![]() | 54 CodingDoge 2019-04-03 10:17:13 +08:00 @waruqi 碰巧看到我司大佬 |
55 52coder OP @CodingDoge 你司大佬的 understand 怎么解决中文注释乱码问题的 @waruqi |
![]() | 56 boywhp 2019-04-03 11:24:13 +08:00 vim |
![]() | 57 yuting0501 2019-04-03 11:27:46 +08:00 via iPhone @52coder VSCode 官方教程就可以了,Qt 我也用,流畅度没有其他人说的会比 VSCode 好 |
58 0871087123 2019-04-03 11:42:39 +08:00 understand vim+YCM clion sublime atom nodepad++ sourceinsight 看啥情况咯,这些我都用 |
59 0871087123 2019-04-03 11:42:54 +08:00 对了还有 visual studio |
60 0871087123 2019-04-03 11:43:30 +08:00 是了,mac 上面,那 visual studio 可以改成 vscode ……………… |
![]() | 61 tomychen 2019-04-03 11:44:48 +08:00 如果说 vim 会不会挨喷... vim + ctags |
62 LANB0 2019-04-03 12:04:26 +08:00 即使过了这么多年,依然没有可以替代 sourceinsight 的,win 下也是。函数列表(支持搜索),跳转到定义、跳转到调用处、引用全项目搜索。vscode+c/c++插件没有引用搜索、每次打开项目都很卡顿。clion 直接很多函数变量识别不到。understand 是最接近 si 的,三年前尝试了几天,还是换回了 wine+si,功能使用步骤太繁琐 |
63 karllynn 2019-04-03 12:41:54 +08:00 随便用啥看,vscode,vim 都行,虚拟机用 vs 看也有过 我讨厌 C++ |
![]() | 65 wzhy 2019-04-03 12:54:53 +08:00 via Android @x1596357 您说的没错,索引完不会卡,但是只要修改其中的一两行代码,它会重新索引,那一下特别占 CPU。 |
66 c9106 2019-04-03 13:03:37 +08:00 slickedit 完美代替 source insight |
67 yuankui 2019-04-03 13:56:10 +08:00 |
68 lsmgeb89 2019-04-03 14:15:17 +08:00 VSCode 装微软官方的 C++ 插件,根据官方文档简单配下,只要不是大型项目(百万行级别的),性能都可以。 其实只要是 language server 实现的都可以用。 Source Insight 可以直接删掉了 |
69 fengjianxinghun 2019-04-03 14:18:02 +08:00 @lsmgeb89 完全不行,不信试一下 linux 源码 |
70 lixianhuei 2019-04-03 14:32:25 +08:00 ![]() 很多人不知道一个神奇:IDA。我用来做逆向工程的,交叉引用,注释,图例,插件,什么都可以做,完美。。 用来读各种源码也爽翻天的。。 |
![]() | 71 thinkloki 2019-04-03 14:32:28 +08:00 插眼求一个看 android 源码的工具。 |
72 livepps 2019-04-03 14:34:22 +08:00 via Android @52coder 如果工程结构不复杂,自己写下 cmake 文件,复杂的 makefile 写成 cmake 那就头疼了 |
73 lsmgeb89 2019-04-03 14:38:49 +08:00 ![]() Google 搞的 cland 应该是大杀器,不过还需要时间。 &t=2688s 视频里提到了 cquery 是现有比较成熟的方案。 |
74 lsmgeb89 2019-04-03 14:52:51 +08:00 @fengjianxinghun 公司里 170 万行的 C++14 的项目,主要是借助 cmake 生成的 compile_commands.json 配置 C++ 插件,VSCode 精确性和性能都还可以接受。 |
![]() | 75 jfcherng 2019-04-03 14:53:05 +08:00 Sublime Text 的就是 LSP 的支持。 clangd / cquery 的都是生成 compile_commands.json。 cmake 的工程本身就有 flag 能生成 compile_commands.json makefile 的工程可以用 compiledb 生成 compile_commands.json Sublime Text + Clangd 踩坑: https://git.io/fjIrK |
76 lsmgeb89 2019-04-03 14:57:30 +08:00 ![]() |
77 Deville 2019-04-03 14:57:55 +08:00 昨儿 vs2019 不是发布了 Mac 版吗 |
![]() | 79 qgymib 2019-04-03 15:11:02 +08:00 凡是用于阅读 C/C++代码的无脑推荐 eclipse cdt,凡是用于书写 C/C++代码的无脑推荐 visual studio |
![]() | 80 waruqi 2019-04-03 15:38:50 +08:00 via Android |
81 fengjianxinghun 2019-04-03 15:47:33 +08:00 @Deville mac 版的 vs 那个就是收购的 monodevelop,只能搞 C# |
82 Deville 2019-04-03 15:52:36 +08:00 |
85 fengjianxinghun 2019-04-03 16:10:30 +08:00 @waruqi Project->Configure Project->File Options-> Encoding |
86 miscmz 2019-04-03 16:17:37 +08:00 via Android vim,vscode |
87 JasperHale 2019-04-03 16:39:21 +08:00 看代码+部分编辑 vscode+clang 跳转,结构体补全 /查看引用 等都可以胜任. Subline / atom 同理. clang 的补全和提示比 gtags 要好. vscode+gtags 效果不佳,当然也可能是配置的方式不对... clion 基本完美,但是收费..比较吃内存吧,新版本应该好一些,N 久没用了. |
88 JasperHale 2019-04-03 16:41:34 +08:00 忘了 ps : 以上实践基于 c 而非 c++. vscode 的 c/c++插件,结构体补全不太好 |
89 HangoX 2019-04-03 19:11:55 +08:00 说 jetbrains 的,是没看过大项目吧。。。Android 源码要弄到比较小的范围才能索引,不然就挂 |
![]() | 90 allenforrest 2019-04-03 19:14:23 +08:00 我靠,居然不用 Xcode 吗?重归重,但也要看你工程本身的规模啊。 |
91 52coder OP @JasperHale 我使用了 vscode + gtags,索引起来比较费劲,比如有些全局变量我想看哪修改的,shift+f12 有时候不灵,只能搜索。 |
93 52coder OP @allenforrest 阅读代码都是万行以内的小模块,15 最低配 pro,开 xcode 再开别的,内存扛不住 |
94 freedomshi 2019-04-04 11:11:21 +08:00 eclipse 了解一下。。。 |
95 52coder OP @freedomshi eclipse 放假了解下,目前在用 understand 和 vscode,understand 静态分析功能真心强大。 |
96 wenweihu86 2019-05-06 17:45:01 +08:00 试过了 vscode、slickedit,都没法替代 source insight。slickedit 最接近,但查看函数引用功能没有; vscode 就更差了,跳转到实现都没做好。 |
97 52coder OP @wenweihu86 跳转有时候都得卡一下,哈哈哈,全局变量看哪些地方调用,有的可以看,有的不可以看,但是界面漂亮,好看不好用,你有好的推荐没 |
![]() | 98 Kellerman 2019-10-24 16:51:17 +08:00 @fengjianxinghun 可以吧,我就在看。 |
![]() | 99 piapia 2019-11-26 02:15:58 +08:00 @lixianhuei #70 这个是啥神奇操作?请教下怎么导入源码呢? |
![]() | 100 liyafe1997 2020-10-19 15:52:13 +08:00 source insight 我最需要的功能就是看函数调用关系( Relation ),至今没找到哪个其它的工具能实现这个功能 。 |