刚写了个 Copilot 插件:https://github.com/zerolfx/copilot.el

刚入门 elisp,写得可能比较烂,有问题欢迎大家指出,也欢迎大家贡献代码。 另外估计兼容性不大好,只测了 Linux + Spacemacs 的默认配置。
题外话:连 Vim 都有官方的 Copilot 插件,为什么 Emacs 没有?
刚写了个 Copilot 插件:https://github.com/zerolfx/copilot.el

刚入门 elisp,写得可能比较烂,有问题欢迎大家指出,也欢迎大家贡献代码。 另外估计兼容性不大好,只测了 Linux + Spacemacs 的默认配置。
题外话:连 Vim 都有官方的 Copilot 插件,为什么 Emacs 没有?
赞👍 官方没有 Emacs 插件,我猜可能是核心代码是 binary 的,可能是 Emacs 下没有好的 binary 分发方式?
Copilot 的 Vim 插件里塞了一些混淆过的 js 以及 wasm,然后靠 stdin/stdout 调用 Copilot API。
我是照抄 Vim 插件的,通信方式也是一模一样。但因为 license 的问题,我不敢往自己项目里装 Copilot 的那些文件。
(所以官方要搞 Emacs 版的话其实也很容易。)
要求支持 Emacs 的呼声不太高:
Copilot 的 Vim 插件,是写了十几年 Vim 插件的 tpope(几乎天天开新坑) 和官方合作推出的。这样的人还真不好找。
和这个类似,都是通过 copilot.vim plugin 实现
关于为什么没有官方插件,之前群里讨论过, @oldosfan 给出的解释是:
因为实现 Emacs copilot 就要上法庭,FSF 不可能允许非自由软件渗入 Emacs ,不能把非 GPL 软件作成 Emacs 插件。
用了「非 GPL 软件」的 Emacs 插件有不少。
前两天正好在看有没有类似的插件lol。
然而我并没有 copilot access
。
是的,而且 copilot.vim 的核心部分是一个 wasm blob,不是自由软件。
“非 GPL 软件” 没问题, 可是 copilot 是 proprietary software,也是 SaaSS(service as a software substitute)。
Copilot 本身还有一些其他的哲学性问题,感兴趣可以阅读 https://www.fsf.org/news/publication-of-the-fsf-funded-white-papers-on-questions-around-copilot
一开始想用 flight-attendant.el 来着,然而它不支持最新的 copilot.vim 里的二进制,也没提供接受补全和多语言支持,最主要的是还不好改,就重写了。
GPL 确实是个问题,不知道让用户自行下载二进制是不是可以回避这个问题,另外如果我加个内置脚本帮用户一键安装是不是也可以?
不准备进 Emacs 核心或者 elpa,应该不需要关心 GPL 的问题吧?
哥们儿,你的包elpaso已经能找到。你只要加 git add .recipe.

Commercial Emacs 是你为Emacs做的定制版本吗?
前天刚申请了Copilot, 昨天通过, 今天就出了个Emacs插件, nice 
代码里依赖了company,补全前端是corfu,可以用这个插件吗?
Commercial Emacs 每小时合并GNU Emacs的更改。
大意是开源和闭源软件像copilot, github能互惠互利。 
我也很警惕 copilot 这类软件,只是对「因为实现 Emacs copilot 就要上法庭」这个说法存疑。如果官方自己去实现一个 Emacs copilot,FSF 会起诉 Microsoft / Github?
我当时想象中是 GitHub 通过 native module 把 copilot 带入 Emacs,这样做会违反 GPL,而且 copilot 是 FSF 比较反对的服务之一,这个情况只要出现,FSF 就一定会采取法律措施制止。
没有预料到 GitHub 选择用外接进程的方式实现 Copilot。
啊,忘删没用到的依赖了。最初是打算集成 company 的,但是它多补全后端限制很大,就放弃了。
目前提供了生成补全和接受补全的 command,搞点 hooks 和 key mapping 就能用了,没啥特别的依赖。