领导嫌弃我用emacs,让我用vscode

这样会不会被裁了 :rofl:

要么用实际行动说服他,要么听他的话。

毕竟饭碗还是重要的。

(我写Android的时候,也是乖乖的用Android Studio的,其他时候就打开Emacs)

1 个赞

真正的好领导只会建议,不会强制,只要不影响工作效率就行。你也可以混着用,发挥各自的长处,也避免政治因素

2 个赞

也不能这样说,很多时候看着别人效率太低真的很捉急。 :sweat_smile:之前一个朋友喜欢用vim,但是他大部分时候都是hjkl移动,w e b f 移动都不会。键盘敲得劈里啪啦的,结果编辑效率非常低

我倒是也很少按词移动。。因为我调整过 repeat rate 所以 w 之类的经常会跳过

我这里只是举移动的例子,vim还有很多好用的,比如和我上面提到的相关的,daw ci" 等等,但是我朋友就只是移动过去x。 我忘了这个概念叫啥了,文本对象啥的

text object? 很久不用vim了,一般这种操作只有我做到烦了的时候才会想找找或者在群里问问有没有更省事的方法,其他的 workflow 也是逐渐这么优化过来的

不过我工作第一年(实习)就是用 centaur emacs + fzf 找文件 + rg 搜索,lsp 什么的根本不知道是什么东西,领导也没说过让换之类的,我看他们领导就是屁事多的效率 boy,给人一种少数派看多了的感觉

你举的这个例子适用于所有工具啊,如果换成别的可能他效率还是不行。归根到底还是人的问题 :joy:

另外,有可能你看着别人效率低,但实际并不一定。有没有可能只是拿自己熟悉的领域去衡量其他人。我见过一个大佬,用ultraedit,敲得贼慢,还没提示。当时我也很鄙视,结果后来发现代码质量贼高 :joy:

1 个赞

编程水平和编辑水平确实不是一个概念。不过从编辑操作上来说,有些事就是绝对的,不是唯心可以说看个人喜好,比如

1 我想删除括号内的所有内容。一种是hjkl到括号里,然后x。一种是avy括号里内容定位过去(或者直接鼠标点到括号里),然后di(。明显后者效率高,这是绝对的。不存在说你喜欢第一种方式,两者效率差不多

2 再比如查看一个符号的引用(支持lsp的),一种是没有lsp的,只能通过全局用正则搜索。一种是lsp支持得很好,可以直接查看引用。后者大部分情况效率高,(除非特殊项目,比如emacs源码这种通过宏搞了很多花活的)。

1 个赞

你举的这两个例子,我的方案是:

  1. esay-kill的easy-mark操作可以按(选中括号里的内容,或者)选中括号内容包含括号。
  2. 默认的xref好像只支持一个backend,我hack了让它遍历所有的xref-backend-functions,如下面的local和global的都一个一个尝试,先local后global:
Its value is (eglot-xref-backend t)
Local in buffer xxxx.cpp; global value is 
(imenu-xref-backend etags--xref-backend ggtags--xref-backend
                    ggtags-reference-backend
                    xref-to-consult-rg-backend)

imenu-xref-backend和xref-to-consult-rg-backend都是自己写的,前者是在imenu里找,后者是因为所有都没找到,就转consult-ripgrep调用了。仅仅一个M-.按键而已,就去尝试所有backend。

我举的例子不是重点 :rofl:,我只是想说两个观点
1 编程水平和编辑水平不一样
2 编辑水平抛去熟练程度,是存在绝对水平高低的(同样练习的情况下)

我觉得你要需要认真体会领导的问题,他大概率不是抱怨你用什么编辑器,而是你工作本身,比如不能按照时间规划完成既定任务。

2 个赞

多找领导聊聊,可能他觉得你的节奏和他们的节奏不一样,所以才这么说。如果他愿意听,可以向他展示一下你用 Emacs 的效率。说到底,Emacs 只是一个工具,能快速地解决问题的话,领导应该就不会说什么了。

1 个赞

不太懂前端,但是根据c++的开发体验来看,emacs和vscode差距主要是在补全和跳转上。但补全和跳转其实不是必须的,对开发效率的影响也比较小。 我觉得,楼主可能需要思考下自己emacs的工作流是不是有低效的地方?同意懒猫的观点,不同工具对开发效率影响并不大。

首先,你自己对你所接手负责的业务是不是很熟悉,另外,你考虑添加新的代码的时候是不是思路和实现上考虑清楚了,最后才会轮到你对Emacs的使用是否熟练。 如果是换我来考虑的话,基本上就是按照这样的顺序考量。不过,楼主对于Emacs的使用如其所言并非很熟悉的话,听取领导的意见,先用vscode干好手下的活不是一个坏选择。

之前也用过vsCode 写Vue 和 React , 最近自己环境搞起来了,在用emacs写个小项目(前端Uniapp,后端clojure),发现lsp-bridge补全和跳转完全没问题,最多组件的自动引用上会差一点,需要手动import

1 个赞

可以考虑 VC 与 Emacs (可能需要一些额外的一致性配置) 双开 。
Emacs 专注于你喜欢的,觉得它能干好的。

VC -------------|----------------------------------- Emacs

哪个用的多,这个 bar “|” 就趋向靠近哪个,也可以根据他们不同的特性与你的喜好,在之间取得动态平衡。

1 个赞

他凭什么认为你用emacs就一定比vs效率高?再或者,你用什么工具跟他有什么关系?对于这种事都管的”领导“裁不裁也估计没什么前途,趁早找合适的地方合适的人比较好。人生短暂。

感觉像钓鱼贴。

4 个赞

先找一个开箱即用的IDE,例如WebStorm 用得比较熟悉之后,能够知道自己的需求了,再去配置Emacs。