sway-launcher-desktop 项目教程
1. 项目的目录结构及介绍
sway-launcher-desktop/
├── LICENSE
├── README.md
├── sway-launcher-desktop.sh
└── github/
└── workflows/
└── tests
- LICENSE: 项目的许可证文件。
- README.md: 项目的说明文档。
- sway-launcher-desktop.sh: 项目的主启动脚本。
- github/workflows/tests: 包含项目的GitHub Actions工作流测试文件。
2. 项目的启动文件介绍
sway-launcher-desktop.sh
sway-launcher-desktop.sh
是项目的主启动脚本,负责启动和管理应用程序。该脚本使用 bash
和 fzf
实现了一个基于文本用户界面(TUI)的启动器菜单。尽管其名称包含 "sway",但它并不依赖于 Sway 窗口管理器,可以与几乎任何窗口管理器一起使用。
主要功能包括:
- 列出并执行可用的二进制文件。
- 列出并执行桌面文件(条目及其操作)。
- 显示包含
whatis
信息的预览窗口和桌面文件的Comment=
部分。 - 支持历史记录,突出显示最近使用的条目。
- 彩色输出和不同条目类型的图标。
- 可选的 XDG 自动启动规范支持。
- 执行任意自定义命令(如果没有其他匹配项)。
3. 项目的配置文件介绍
配置文件位置
项目的配置文件通常位于 $HOME/.config/sway-launcher-desktop/providers.conf
。
配置文件结构
配置文件的结构如下:
[my-provider]
list_cmd=echo -e 'my-custom-entry\034my-provider\034 My custom provider'
preview_cmd=echo -e 'This is the preview of {1}'
launch_cmd=notify-send 'I am now launching {1}'
purge_cmd=command -v '{1}' || exit 43
- list_cmd: 生成条目列表的命令。
- preview_cmd: 预览条目的命令。
- launch_cmd: 启动条目的命令。
- purge_cmd: 清除条目的命令。
环境变量
可以通过设置环境变量来调整启动器的行为,例如:
- HIST_FILE: 历史记录文件的路径,设置为空值可以禁用历史记录功能。
- GLYPH_COMMAND: 覆盖默认的命令图标。
- GLYPH_DESKTOP: 覆盖默认的桌面图标。
- GLYPH_PROMPT: 覆盖默认的提示符图标。
- FZF_COMMAND: 指定
fzf
命令的路径。
通过这些配置和环境变量的设置,可以灵活地定制 sway-launcher-desktop
的行为和外观。