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

app shellac-server

跨壳层完成服务器:命令参数自动完成描述

3 个不稳定版本

0.3.1 2019年10月6日
0.3.0 2019年10月5日
0.2.0 2019年9月21日

#770 in 配置

MIT 许可证

63KB
1.5K SLoC

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

目标

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

  • 以最小延迟回复请求。理想情况下,静态完成的延迟小于10ms,对用户来说甚至不可见
  • 能够支持边输入边完成。这意味着应该大量使用缓存来避免重复工作
  • 同时处理多个(多达 ~20 个)并发客户端,同时保持每个客户端的延迟都很低
  • 支持参数定义
  • 支持调用各种外部命令以进行动态完成

规范

请参阅原始改编 的规范提案。

非正式的shellac定义文件可以在完成文件夹中找到。

与shell集成

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

贡献

有关讨论,请联系https://oilshell.zulipchat.com/#narrow/stream/146045-shell-autocompletion,并且可以自由地打开问题和MR。任何帮助都真的非常感谢。

警告:这是一个原型

依赖项

~11MB
~209K SLoC