py3status:i3status 增强包装器,轻松扩展 i3bar 功能与交互性

py3status is an extensible i3status wrapper written in python

分支53Tags94
文件最后提交记录最后更新时间
3 年前
1 个月前
2 年前
1 个月前
7 年前
1 个月前
4 个月前
1 个月前
9 个月前
1 个月前
11 年前
3 年前
3 年前
2 年前
2 年前
1 个月前
3 年前

py3status

CI

py3status 是一个用Python编写的可扩展i3status包装器。

使用py3status,你可以轻松控制i3bar,通过:

  • 使用随py3status提供的 模块
  • 将多个模块组合并自动或手动循环显示它们
  • 编写自己的模块,并将其输出显示在你的任务栏上
  • 处理i3bar上的点击事件,快速玩游戏
  • 让时钟每秒更新,即使你的i3status间隔设定得更长

不需要额外的配置文件,只需安装即可享受!

关于

如果你正在使用i3wm(或者sway),并对i3bar中的i3status限制感到沮丧,比如:

  • 你不能轻易地对其进行修改
  • 你需要比内置模块及其有限配置更多的功能
  • 你无法轻松地将一个或多个脚本或命令的结果传送到你的任务栏上

哲学

  • 无需添加配置文件,使用标准的i3status.conf
  • 尽可能依赖i3status的优势和其现有的配置
  • 具有可扩展性,用户应能简单地编写一个python类来动态加载和执行,以添加他们自己的内容和输出
  • 轻松实现互动性与i3bar
  • 添加对基本i3status模块输出的一些内建增强和转换

我们遵循py3status的原则,以此提升项目,并鼓励每个人阅读它!

文档

最新的文档包括:

如需帮助或分享想法,请加入IRC:

  • #py3status 频道 on OFTC

安装

查看适用于你所喜欢的发行版的最新完整安装说明

使用

在你的i3配置文件中,只需将status_commandi3status切换到py3status

status_command py3status

通常,你会有自己的i3status配置,只需指向它:

status_command py3status -c ~/.i3/i3status.conf

选项

通过运行py3status -h,可以查看py3status的帮助信息:

usage: py3status [-h] [-b] [-c FILE] [-d] [-g] [-i PATH] [-l FILE] [-s]
                     [-t INT] [-m] [-u PATH] [-v] [--wm WINDOW_MANAGER]

    敏捷而强大的Python驱动的i3status包装器

    可选参数:
      -h, --help            显示此帮助消息并退出
      -b, --dbus-notify     通过dbus发送通知而不是使用i3-nagbar(默认:False)
      -c, --config FILE     加载配置文件(默认:/home/alexys/.i3/i3status.conf)
      -d, --debug           启用syslog和--log-file的日志记录(默认:False)
      -i, --include PATH    添加附加的用户自定义模块路径(默认:None)
      -l, --log-file FILE   启用向FILE的日志记录(默认:None)
      -s, --standalone      在没有i3status的情况下运行py3status(默认:False)
      -t, --timeout INT     默认模块缓存超时时间(秒)(默认:60)
      -m, --disable-click-events
                            禁用所有点击事件(默认:False)
      -u, --i3status PATH   指定i3status路径(默认:/usr/bin/i3status)
      -v, --version         显示py3status版本并退出(默认:False)
      --wm WINDOW_MANAGER   指定窗口管理器i3或sway(默认:i3)

可用模块

所有模块 都随py3status一起提供,可以直接从当前的i3status.conf进行配置

浏览它们 查看所有的配置选项。

通过CLI控制

就像i3status一样,你可以通过发送SIGUSR1信号给py3status强制更新你的i3bar。请注意,这也会向i3status发送SIGUSR1信号:

killall -USR1 py3status

要刷新单个模块,可以使用 py3-cmd 工具,例如:

py3-cmd refresh wifi

项目介绍

py3status is an extensible i3status wrapper written in python

定制我的领域