ITADN
anlar/prismriver-lyrics
anlar/prismriver-lyrics · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Prismriver 歌词

一个通过插件系统在多个来源中搜索歌曲歌词的 CLI 和终端 UI。

test License: MIT Python 3.12+

关于

Prismriver Lyrics Screenshot

Prismriver Lyrics 是一个 uv 工作区,包含两个基于共享歌词 搜索引擎构建的包(prismriver_lyrics):

  • prismriver-lyrics — 一个 CLI,接收艺术家/标题,查询 已注册的插件,并打印结果。
  • prismriver-lyrics-tui — 一个 Textual 终端 UI,通过 D-Bus 读取活动 MPRIS 播放器的状态,在每首曲目切换时搜索歌词,并 渲染结果,高亮显示当前行以支持时间同步(LRC) 歌词。

功能:

  • 30+ 歌词源插件(prismriver_lyrics.plugins,自动发现 LyricsPlugin 子类)
  • 磁盘上的 SQLite 结果缓存,具有可配置的 TTL(--cache-ttl)和 绕过标志(--no-cache
  • 按插件 ID、语言、翻译/原文或同步/纯文本进行过滤, 以及结果上限(--limit/-l
  • 时间同步(LRC)歌词,在 TUI 中随着 曲目播放高亮显示当前行
  • TUI 手动搜索对话框(用于没有活动 MPRIS 播放器或 自动检测的元数据错误的情况),主题切换,以及 vim 风格键绑定

构建工具

入门

先决条件

Prismriver Lyrics 需要 Python 3.12+。

安装

两个包都已发布在 PyPI 上。使用 pipxpip、 或 uv 安装其中一个或两者:

$ pipx install prismriver-lyrics
$ pipx install prismriver-lyrics-tui
$ pip install prismriver-lyrics
$ pip install prismriver-lyrics-tui
$ uv tool install prismriver-lyrics
$ uv tool install prismriver-lyrics-tui

或者,使用 uvpipx 从源代码安装:

git clone https://github.com/anlar/prismriver-lyrics.git
cd prismriver-lyrics
make install-pipx

这将构建这两个包,并将每个包作为独立的 pipx 应用安装, 同时暴露 prismriver-lyricsprismriver-lyrics-tui 命令。

用法

从 CLI 中搜索歌词:

$ prismriver-lyrics --artist "The Clash" --title "Police and Thieves"

或者启动终端 UI,它会跟随任何兼容 MPRIS 的媒体播放器正在播放的内容:

$ prismriver-lyrics-tui

使用 help 命令检查其他命令行选项:

$ prismriver-lyrics --help
$ prismriver-lyrics-tui --help

在状态栏中查看 Prismriver Lyrics TUI 的可用快捷键。

路线图

查看 未解决的问题 以获取 拟议功能(以及已知问题)的完整列表。

贡献

欢迎提交错误报告并发送拉取请求。

许可证

根据 MIT 许可证分发。更多信息请参阅 LICENSE.txt