4个版本 (2个重大更改)

0.8.0 2023年10月15日
0.7.0 2023年10月15日
0.6.1 2023年9月24日
0.6.0 2023年9月24日

#163文本编辑器

MPL-2.0 许可证

19KB
197 代码行

默认

选择默认应用程序、程序和实用工具的系统


待办事项:生成快速执行的可执行文件

用例

类似于 update-alternatives,但本地化且更灵活。需要数据库,其中包含应用程序及其默认值,位于 "${XDG_CONFIG_HOME:-$HOME/.config}/chooses/defaults"

  1. 使用文件启动

控制打开文件时选择哪些应用程序。这不受桌面环境的影响。因为 xdg-open 无法与目录一起工作,所以它不起作用。此外,可以将不同的应用程序配置为在不同的上下文中工作(X、终端模拟器、Linux控制台)。

由于这些只是shell脚本,应支持任意参数,例如,如果使用文本编辑器,则可能需要支持 --column--row

  1. 不使用文件启动

可以启动当前的“浏览器”或“图片查看器”。这同样旨在跨发行版和用户界面工作。

更多详细信息请参阅 details.md

路线图

  • 'get' 子命令
  • 使用选择器时使用 fuzzer / 过滤器
  • 在 --verbose 标志(或另一个)上输出预执行源
  • GUI 选择器(如果有多个选项,则通过GUI选择),可选
  • doctor 命令以确保 git 配置属性、ranger 属性等都是有效的,并且正确指向选择器
  • 在启动对话框之前,有UI可以下载应用程序,并使用(woof?)的帮助

应用程序 / 类别归属

  • cli vs tui vs gui
  • 使用条件(只有 X11、wayland 等有回退(排序))
  • 启动 vs shell(交互式,非交互式),DE(.desktop等),tty vs ptty等
  • 编辑器 vs 查看器
  • 旨在通用于应用程序的与选择特定事物的(没有最后共同基数CLI参数标志等兼容性)
    • 基于能力吗?
  • 打印到 stdout,运行阻塞应用程序,运行非阻塞应用程序,在新的进程中执行,并运行守护程序
  • 执行辅助工具(如果需要终端,必须在终端调用中包装它)

安装

cargo install exa

依赖关系

~3–4.5MB
~88K SLoC