#autocomplete #shell #shellac #shell-ac #cli

shellac-codec

不依赖Shell的补全服务器:与ShellAC交互的编解码器定义

1 个不稳定版本

0.2.0 2019年10月5日

#28#autocomplete

29 每月下载次数
2 crate 中使用

MIT 许可证

12KB
176 代码行

有关此存储库的信息,请参阅 https://github.com/oilshell/oil/wiki/Shellac-Protocol-Proposal-V2https://www.redox-os.org/news/rsoc-ion-ux-2/

目标

最终目标是创建一个二进制文件,

  • 以最小延迟回复请求。理想情况下,静态补全少于10毫秒,这样用户甚至看不到
  • 能够支持边打字边补全。这意味着应该大量使用缓存,以避免重复工作
  • 同时处理多个(多达 ~20 个)并发客户端,同时保持每个客户端的延迟低
  • 支持参数的定义
  • 支持调用各种外部命令以进行动态补全

规范

请参阅原始修订提案,了解正式规范。

非正式演示shellac定义文件可以在补全文件夹中找到。

与shell集成

通信通过cap'n proto处理,使用shellac.capnp中找到的定义。Shell可以选择为每个请求启动一个二进制文件(简单但慢),或推荐使用套接字进行共享、扩展通信的设置。这是一个预览版本,因此API尚未最终确定。目前更关注稳定定义文件格式,而不是面向shell的协议,因此变化是预期的。

贡献

有关讨论,请联系https://oilshell.zulipchat.com/#narrow/stream/146045-shell-autocompletion,并随时打开问题和MR。任何帮助都真正受到赞赏。

警告:这是一个原型

依赖项

~1.5–2.2MB
~49K SLoC