Skip to main content

py3status:用 python 编写的可扩展 i3status 包装器

项目描述

图片

py3状态

CI 阅读文档

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

使用 py3status,您可以通过以下方式轻松控制 i3bar:

  • 使用py3status 附带的可用 模块之一
  • 将多个模块分组并自动或手动循环显示
  • 编写您自己的模块并将其输出显示在您的栏上
  • 处理 i3bar 上的点击事件并立即使用它们
  • 无论您的 i3status 间隔如何,都可以看到您的时钟每秒滴答一次

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

关于

如果您使用i3wm (或sway)并且对 i3bar 上的 i3status 限制感到沮丧,您会喜欢 py3status ,例如:

  • 你不能轻易入侵它
  • 您想要的不仅仅是内置模块及其有限的配置
  • 您无法轻松地在栏中通过管道传输多个脚本或命令之一的结果

哲学

  • 没有添加配置文件,使用标准的 i3status.conf
  • 尽可能依靠 i3status的优势和现有配置
  • 是可扩展的,用户必须很容易通过编写一个简单的python类来添加自己的东西/输出,该类将被动态加载和执行
  • 轻松实现与 i3bar 的交互
  • 添加基本​​ i3status 模块输出的一些内置增强/转换

我们应用py3status 的 Zen来改进这个项目,并鼓励大家阅读它!

文档

最新文档

在 IRC 上获得帮助或分享您的想法:

  • OFTC上的频道#py3status

安装

查看您最喜欢的发行版的最新和完整的安装说明

用法

在您的 i3 配置文件中,只需在您的status_command中从i3status切换到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]

The agile, python-powered, i3status wrapper

optional arguments:
  -h, --help            show this help message and exit
  -b, --dbus-notify     send notifications via dbus instead of i3-nagbar
                        (default: False)
  -c, --config FILE     load config (default: /home/alexys/.i3/i3status.conf)
  -d, --debug           enable debug logging in syslog and --log-file
                        (default: False)
  -g, --gevent          enable gevent monkey patching (default: False)
  -i, --include PATH    append additional user-defined module paths (default:
                        None)
  -l, --log-file FILE   enable logging to FILE (default: None)
  -s, --standalone      run py3status without i3status (default: False)
  -t, --timeout INT     default module cache timeout in seconds (default: 60)
  -m, --disable-click-events
                        disable all click events (default: False)
  -u, --i3status PATH   specify i3status path (default: /usr/bin/i3status)
  -v, --version         show py3status version and exit (default: False)
  --wm WINDOW_MANAGER   specify window manager i3 or sway (default: i3)

可用模块

py3status 附带的所有模块都可以直接从您当前的 i3status.conf 配置

检查它们 以查看所有配置选项。

从 CLI 控制

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

killall -USR1 py3status

要刷新单个模块, 可以使用py3-cmd实用程序,例如:

py3-cmd refresh wifi