Polybar (简体中文) - ArchWiki

Jump to content

# Polybar (简体中文)

From ArchWiki

polybar 是一种能简单快速地创建状态栏的工具。它可以自定义许多功能模块，比如工作区、日期和音量等等。Polybar对于一些没有状态栏或者状态栏的功能有限的窗口管理器格外有用，例如awesome和i3。Polybar也可以用于Plasma这样的桌面环境。

## 安装

安装polybar包，或者安装它的开发版本polybar-gitAUR.

## 配置

将配置文件样例`/usr/share/doc/polybar/config`复制到`$XDG_CONFIG_HOME/polybar/config`.

### 运行Polybar

Polybar可以携带以下参数运行：

    Usage: polybar [OPTION]... BAR

      -h, --help               显示帮助信息并退出
      -v, --version            显示构建详情并退出
      -l, --log=LEVEL          设置日志的详细级别 （默认: WARNING）
                               LEVEL可以是：error, warning, info, trace
      -q, --quiet              保持安静，不显示日志 （会覆盖参数-l）
      -c, --config=FILE        配置文件的路径
      -r, --reload             当配置文件被修改后自动重新加载
      -d, --dump=PARAM         输出参数PARAM的值并退出
      -m, --list-monitors      输出可用的显示器列表并退出
      -w, --print-wmname       输出生成的WM_NAME并退出
      -s, --stdout             将数据打印到标准输出，而不是在图形界面中展示
      -p, --png=FILE           运行3秒后将截图保存到文件

你可能想要在你的窗口管理器的引导程序中启动Polybar，详见#在窗口管理器中运行.

### 配置样例

以下是一份基础的配置：

    [bar/mybar]
    modules-right = date

    [module/date]
    type = internal/date
    date = %Y-%m-%d%

它定义了一个bar`mybar`并在其中加入了一个模块`date`.

Polybar默认生成了一个包含很多配置好的模块的配置文件`/usr/share/doc/polybar/config`

注意： 这份配置文件样例不是为了给每个人开箱即用而设计的，你可能需要根据你的需求进行一些修改。

### 在窗口管理器中运行

创建一个包含启动逻辑的executable，例如`$HOME/.config/polybar/launch.sh`：

    #!/bin/bash

    # 终端可能已经有在运行的实例
    killall -q polybar

    # 等待进程被终止
    while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done

    # 运行Polybar，使用默认的配置文件路径 ~/.config/polybar/config
    polybar mybar &

    echo "Polybar launched..."

这个脚本会在窗口管理器重启后重新运行Polybar

#### bspwm

如果使用的是bspwm，将下面内容添加到`bspwmrc`：

    $HOME/.config/polybar/launch.sh

#### i3

如果使用的是i3，将下面内容添加到你的i3的配置文件：

    exec_always --no-startup-id $HOME/.config/polybar/launch.sh

## 疑难解答

### Cannot open shared object file libjsoncpp.so

Github中issue有相关内容，尝试重新安装。

如果依然失败，尝试安装jsoncpp包。

## 参见

- Polybar Github Wiki

Category:

- Eye candy (简体中文)