Spotify桌面应用程序的持久i3blocklet

i3blocks-spotify-persist的Python项目详细描述


i3blocks spotify持久化

Spotify桌面应用程序的持久化i3blocks块。在

screenshot

单击上面的图片观看screencast。在

特点

  • 由于事件驱动模型,几乎立即更新:blocket是一个不断运行的进程,接收D-Bus信号
  • 可配置输出
  • 可配置鼠标单击操作(需要i3blocksversion 1.5或更高版本)

安装

Python 3.5或更高版本是必需的。

可以使用pip从PyPI安装块:

python3 -m pip install [--user] i3blocks-spotify-persist

一旦安装了包,就会有一个名为i3blocks-spotify-persist的块脚本,这取决于是否存在--userpip标志(例如,/usr/local/bin/i3blocks-spotify-persist或{})。在

为了避免依赖地狱,pipx可以使用:

^{pr2}$

在这种情况下,块脚本将被放在~/.local/bin目录中。在

依赖关系

必需(自动安装):

可选(手动安装):

使用

在i3blocks配置中添加以下行:

[spotify]
command=/path/to/bin/i3blocks-spotify-persist [-c /path/to/config.json]
interval=persist

配置

块可以使用JSON配置文件进行配置。配置本身及其所有选项都是可选的。在

配置选项

格式

类型:字符串

默认值:{status}: {artist} – {title}

带有占位符的模板字符串。占位符格式是{field}{field:filter}。在

支持的字段:

  • statusenum值之一:PlayingPausedStopped
  • artist
  • title

支持的fitlers:

  • upper-将字符串转换为大写
  • lower-将字符串转换为小写
  • capitalize-将字符串的第一个字符转换为大写,其余字符转换为小写
  • icon-仅适用于status字段:将文本状态转换为图标(请参见下面的status_icons选项)

标记转义

类型:布尔值

默认值:false

此选项指定是否使用相应的XML实体转义特殊字符(例如<>&)。如果使用Pango标记(i3blocks配置中的markup=pango),则设置为true,否则false。在

状态图标

类型:对象

默认值:{"Playing": "\uf04b", "Paused": "\uf04c", "Stopped": "\uf04d"}

此选项提供icon筛选器的映射(见上文)。默认值使用Font Awesome中的图标。在

鼠标按钮

类型:对象

默认值:{"1": "PlayPause"}

此选项提供X11鼠标按钮编号到MPRIS methods的映射。您可以使用xev程序来确定按钮编号。在

重复数据消除

类型:布尔值

默认值:true

由于某些原因,Spotify应用程序为一个动作/事件发出几个相同的信号(例如,当播放或暂停一个曲目时,它会产生fourPropertiesChanged信号)。如果设置了此选项true,则块会将更新后的消息与上一条消息进行比较,并仅在消息发生更改时才打印它。除了调试之外,没有理由关闭重复数据消除。在

配置示例

{"format":"<span font_family='monospace' color='#ffa651' weight='bold'>{status:icon} {status:upper}</span> <span color='#72bf44' weight='bold'>{artist}</span><span color='#ffa651'>᛫</span><span color='#b2d235'>{title}</span>","markup_escape":true,"status_icons":{"Playing":"|>","Paused":"||","Stopped":"[]"},"mouse_buttons":{"1":"PlayPause","9":"Previous","8":"Next"}}

命令行参数

  • -h--help-显示所有命令行参数并退出
  • -c--config-配置文件的路径(见上文)

以下参数覆盖相应的配置选项或默认值(即,命令行参数具有最高优先级):

  • --format
  • --markup-escape/--no-markup-escape
  • --dedupe/--no-dedupe

许可证

MIT License。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java结合两个Date实例使用Joda创建datetime   带有POI和FileOutputStream的java Swing应用程序性能问题   Java中是否存在类似于Python的异常?   Java中有界通配符的泛型   使用字符和子字符串的java不同输出   在Java中获取LDAP模式   java自定义类在自身上生成ClassNotFoundException   java连接到从internet到通过LAN连接到internet的系统的serversocket   java如何通过maven在jaxws中使用jaxb插件?   java Kerberos如何获取主体或客户端名称?   java应用服务器中是否有JDBC的单点登录解决方案?   java是存储矩阵值以便以后访问的更好方法   Java等级计算器。开始这门课我需要一些帮助   未找到Android“libc++\u shared.so”中的java OpenCV实现   当我使用web配置部署描述符时使用java。xml。它显示了错误   java为什么我的ArrayList的add方法冲突,如何编辑我的自定义add方法   java创建一个以集合为键的映射?   java如何将用户输入到数字三角形中   为什么Java在读取LinkedHashMap时会自动从字符串转换为整数   类动态创建和读取java类