#shell #terminal #customizable #recursion #extendable #plugin-system #command

app zula

一个最小化和高度可定制的终端外壳

12个版本 (7个稳定版)

2.0.3 2023年8月24日
2.0.2 2023年8月23日
1.1.0 2023年8月22日
0.1.1 2023年8月21日
0.0.10 2023年8月21日

#193配置

Download history 10/week @ 2024-03-10 40/week @ 2024-03-31 79/week @ 2024-04-28

每月67次下载

MIT/Apache

15KB
339

zula - 又一个外壳

zula是一个最小化和可扩展的终端外壳。它旨在通过简单的配置工具和插件系统,简化常见的shell交互的便捷工具。

特性

别名

zula具有递归别名功能。别名可以展开到其他别名,这些别名又可以展开到更多别名...

如果需要使用与别名同名程序,可以使用 !cmd 来转义命令。注意,别名仅适用于第一个命令参数,当用作参数时不会展开。

绑定

zula允许您将任何命令绑定到按下 Alt + <key> 时运行。

管道

目前,zula支持的唯一操作符是 &&,它将依次运行每个命令,并在其中一个命令出错时停止。

插件

zula支持插件系统。将您的 .so 文件放置在 $ZULA_CONFIG/plugins 中,并运行 zula cfg 以检查已加载的内容。有关更多信息,请参阅姐妹crate zula-core

配置

zula的主配置文件位于 $ZULA_CONFIG/.zularc。如果未设置此环境变量,则默认为 $XDG_CONFIG_HOME/zula。它目前支持

  • #alias - 设置要展开为命令的别名词。
#alias vi nvim .
  • #bind - 绑定一个命令,当按下 Alt + <key> 时触发。
#bind v vi

.zularc按行解析,如果一行不是有效命令,则简单忽略。

待办事项

以下是我正在积极/计划工作的功能列表。

  • 插件系统
  • 简单的脚本
  • 更多命令管道选项
  • 插件系统功能实现后,applets将可用

缺失

以下是您可能期望从成熟的shell中获取的一些功能,但Zula可能缺少这些功能,并且可能或可能不会在未来计划实现。

  • 自动建议
  • 类似bash的脚本

依赖项

~0.3–11MB
~64K SLoC