1 个不稳定版本
0.5.0 | 2023年9月14日 |
---|
#386 in #programs
18KB
156 代码行
默认
选择默认应用程序、程序和实用程序的系统
TODO:生成可执行文件以实现快速执行
用例
类似于 update-alternatives
,但仅限于本地用户且更灵活。需要存储在 "${XDG_CONFIG_HOME:-$HOME/.config}/chooses/defaults"
的应用程序及其默认值的数据库
- 使用文件启动
控制打开文件时选择的应用程序。这不受桌面环境的影响。由于 xdg-open
无法与目录一起工作,因此它不起作用。此外,可以配置不同的应用程序在不同的上下文中(X、终端模拟器、Linux 控制台)工作。
由于这些只是 shell 脚本,因此应支持任意参数,例如,如果使用文本编辑器,则支持 --column
和 --row
。
- 不使用文件启动
可以启动当前的“浏览器”或“图片查看器”。同样,这旨在跨发行版和用户界面工作。
有关更多信息,请参阅 details.md
路线图
- 'get' 子命令
- 使用选择器时使用 fuzzer / 过滤器(dmenu 与 rofi -dmenu 等)
- 在 --verbose 标志(或其他)上输出预执行时的输出
- GUI 选择器(如果有多个选项,则通过 GUI 选择),可选
- doctor 命令可确保 git 配置属性、ranger 属性等都是有效的,并且正确指向选择器
- 在启动对话框之前,有一个 UI,其中可以下载应用程序(使用 woof?)
应用程序 / 类别归属
- cli vs tui vs gui
- 使用条件(仅 X11、wayland 等具有回退(顺序))
- 启动与 shell(交互式、非交互式)、DE(.desktop 等)、tty 与 ptty 等
- 编辑器与查看器
- 旨在通用应用程序与选择特定事物的应用程序(无需最后公共 CLI 标志等兼容性)
- 基于能力吗?
- 打印到 stdout、运行阻塞应用程序、运行非阻塞应用程序、在新进程中执行和运行守护进程
- 执行辅助工具(如果需要终端,必须在终端调用中包装它)
安装
cargo install exa
依赖项
~1.6–2.8MB
~52K SLoC