i3block配置

配置文件

配置选项

指令 含义
script] 配置项名
align= 对齐
color= 颜色
command= 指令
format= 样式
full_text= 全文
instance= 实例
interval= 间隔时
label= 标签
markup= 标记
min_width= 最小宽度
name= 名称
signal= 信号
short_text= 短文
separator= 分隔符
separator_block_width= 分隔块宽度
urgent= 紧急

$SCRIPT_DIR是脚本位置的通用替代,需要修改为脚本位置,也可将$SCRIPT_DIR环境变量从i3配置传递给i3block :

bar {
  status_command SCRIPT_DIR=~/.config/i3blocks i3blocks
}

然后i3block的配置中就可用command=$SCRIPT_DIR/example/example.ext 指定脚本路径了。

官方配置脚本列表

官方配置脚本地址:https://github.com/vivien/i3blocks-contrib

脚本块 说明
afs 显示AFS目录的使用信息
apt-upgrades 用apt查询系统升级,显示结果
arch-update 用yaourt查询AUR升级,显示结果
aur-update 查询AUR升级,显示结果
backlight 显示由 xbacklight 提供的屏幕亮度值
bandwidth 显示带宽信息(默认bash版本)
bandwidth2 显示带宽信息(C版)
bandwidth3 显示带宽信息(另一个bash版本)
battery-poly 显示多电池信息
battery 显示电池信息
battery2 漂亮的电池信息
batterybar 以条形图形式显示电池信息
calendar 当前日期/时间,单击查看日历
cpu_usage 显示当前的CPU使用率
cpu_usage2 显示当前的CPU使用率(C版)
disk 显示给定目录的磁盘使用情况(已用空间)
disk-io 监视磁盘读写
docker 显示Docker容器和容器IP的数量
dunst 使用简单的请勿打扰按钮切换Dunst通知
email 显示未读的IMAP消息数
essid 显示连接的wifi ESSID(dep:iwconfig,perl)
gpu-load 显示NVIDIA GPU的负载
go 显示当前安装的Go版本
iface 显示网络接口IP /状态
kbdd_layout 使用dbus和kbdd显示键盘布局
keyindicator 显示capslock(大小写)和numlock(小键盘)的状态
key_layout 使用setxkbmap显示当前的键盘布局
key_light 控制键盘背光
kubernetes 显示kubernetes当前上下文和名称空间
load_average 显示系统1分钟平均负载
mediaplayer 使用Playerctl的通用媒体播放器状态/控件
memory 显示内存或交换空间使用情况
monitor_manager 管理显示器的开/关,分辨率,扩展,克隆
nm-vpn 使用网络管理器显示VPN状态
openvpn 显示openvpn状态
rofi-calendar 当前日期/时间,并使用rofi单击以获取日历
shutdown_menu 使用rofi或zenity的关机菜单(关机,重新启动,注销,锁定等)
tahoe-lafs 显示tahoe-lafs网格的状态
temperature 使用lm传感器显示系统温度
time 显示当前日期/时间,然后单击以更改时区
ssid 显示连接的wifi SSID(默认值:iw,awk)
usb 显示已连接的USB存储设备信息
volume 显示当前系统音量(默认)
volume-pulseaudio 显示漂亮的系统音量,用于PulseAudio
wifi 以百分比显示您的wifi连接强度
wlan-dbm 以dBm或百分比显示wifi接口连接质量
ytdl-mpv 使用youtube-dl从剪贴板播放youtube视频

keystatus:

#!/bin/bash

TYPE="${BLOCK_INSTANCE:-caps}"

lockLine=$(xset -q | grep "Num Lock")

capsLock=$(echo "${lockLine}" | awk -F ' ' '{print $4}')
numLock=$(echo "${lockLine}" | awk -F ' ' '{print $8}')
scrollLock=$(echo "${lockLine}" | awk -F ' ' '{print $12}')

if [[ "${TYPE}" == "caps" ]]; then
  checkLock="${capsLock}"
elif [[ "${TYPE}" == "num" ]]; then
  checkLock="${numLock}"
elif [[ "${TYPE}" == "scroll" ]]; then
  checkLock="${scrollLock}"
else
  exit
fi

if [[ "${checkLock}" == "on" ]]; then
  echo "on"
fi

详细配置

# i3blocks config file

# 时间日期
# 安装yad、xdotool
[calendar]
command=~/.config/i3blocks/shell/calendar
interval=15
color="#FF33CC"
LABEL=
DATEFMT=+%b%d 星期%a  %H:%M
# SHORTFMT=+%H:%M:%S
HEIGHT=530
WIDTH=355

# WiFi
[wifi]
command=~/.config/i3blocks/shell/wifi
label=
INTERFACE=wlp3s0
interval=60

# 带宽信息
[bandwidth]
command=~/.config/i3blocks/shell/bandwidth2
interval=persist
color="#66BB6A"
markup=pango
label=
WARN_RX=307200
WARN_TX=30720
CRIT_RX=512000
CRIT_TX=51200

# 内存和交换空间
[memory]
command=~/.config/i3blocks/shell/memory
color="#4169E1"
label=
interval=30

#[memory]
#command=~/.config/i3blocks/shell/memory
#label=
#instance=swap
#interval=30

# 键盘提示
[keystatus]
command=~/.config/i3blocks/shell/keystatus
label=
color="#00FFFF"
instance=caps
interval=1

[keystatus]
command=~/.config/i3blocks/shell/keystatus
label=
color="#00FF00"
instance=num
interval=1


# 音量
# 安装pulseaudio、alsa (alsa-utils)
# 修改i3配置如下
# 更改音量或切换静音
#bindsym XF86AudioRaiseVolume exec amixer -q -D pulse sset Master 5%+ && pkill -RTMIN+1 i3blocks
#bindsym XF86AudioLowerVolume exec amixer -q -D pulse sset Master 5%- && pkill -RTMIN+1 i3blocks
#bindsym XF86AudioMute exec amixer -q -D pulse sset Master toggle && pkill -RTMIN+1 i3blocks
[volume-pulseaudio]
command=~/.config/i3blocks/shell/volume-pulseaudio
interval=once
signal=1
MIXER=[determined automatically]
SCONTROL=[determined automatically]
##exposed format variables: ${SYMB}, ${VOL}, ${INDEX}, ${NAME}
LONG_FORMAT="${SYMB} ${VOL}%"
SHORT_FORMAT="${SYMB} ${VOL}%"
AUDIO_HIGH_SYMBOL=
AUDIO_MED_THRESH=50
AUDIO_MED_SYMBOL=
AUDIO_LOW_THRESH=0
AUDIO_LOW_SYMBOL=
AUDIO_DELTA=5
DEFAULT_COLOR="#A569BD"
MUTED_COLOR="#263238"
USE_ALSA_NAME=0
USE_DESCRIPTION=0
## SUBSCRIBE=1 requires interval=persist and always uses LONG_FORMAT
#SUBSCRIBE=0

# 屏幕亮度
[backlight]
command=~/.config/i3blocks/shell/backlight
label=
interval=20
#STEP_SIZE=5
USE_SUDO=1

# 电池信息
[battery2]
command=~/.config/i3blocks/shell/battery2
color="#FFB74D"
markup=pango
interval=20

# 关机,重新启动,注销,锁定等
# 安装 systemd、rofi或zenity
[shutdown_menu]
command=~/.config/i3blocks/shell/shutdown_menu
color="#CC0000"
full_text=
ROFI_TEXT=菜单
ROFI_OPTIONS=-width 11 -location 3 -hide-scrollbar -bw 2
#ZENITY_TITLE=Menu
#ZENITY_TEXT=Action:
#ZENITY_OPTIONS=--column= --hide-header
# (must be true or false)
ENABLE_CONFIRMATIONS=true
# (must be rofi or zenity)
LAUNCHER=rofi
#FG_COLOR=#bbbbbb
#BG_COLOR=#111111
#HLFG_COLOR=#111111
#HLBG_COLOR=#bbbbbb
#BORDER_COLOR=#222222
#LOCKSCRIPT=i3lock --color=${BG_COLOR#"#"}