在Linux上配置i3pyStatus
时间:2020-02-23 14:32:37 来源:igfitidea点击:
I3PyStatus被定义为越来越多的Python脚本的集合,用于状态输出兼容 i3status/i3barI3窗口管理器。
我已经尝试了许多状态栏,包括i3blocks,polybar和i3pystatus似乎是赢家。
这完全是因为它的模块化方法。
在这篇文章中,我将带我们完成I3PyStatus安装,安装重要模块,最后在我的Arch Linux桌面机上运行的配置示例。
Prereqs.
有重要的是 font-awesome对于我的配置文件上的图标,以工作安装和工作I3窗口ManagerInstalled PythonInstalled pipPython Modules Installer.Time如果事情按预期运行,则无法进行故障排除
安装i3pyStatus.
安装i3pystatus的最简单和最快的方法是使用的 pipPython安装程序。
如果我们已经没有,请参阅如何安装Python pip包的分发。
如果我们有PIP,则执行以下操作:
$sudo pip install i3pystatus
使用AUR安装I3PYSTATUS:
ARCH Linux用户始终有优势,包在AUR上很容易获得。
从未尝试过拱门Linux但有兴趣,看起来不再,只需沿着以下链接到教程如何安装:
使用LVM安装Luks加密Arch Linux
从Arch Aur安装稳定版本:
$yaourt -S i3pystatus --noconfirm
或者如果使用pauraur:
$pacaur --needed --noconfirm --noedit -S i3pystatus
要在Arch上获取最新的Git版本:
$pacaur --needed --noconfirm --noedit -S i3pystatus-git
现在安装一些重要的模块:
$sudo pip install pyalsaaudio \
netifaces \
basiciw \
colour \
psutil \
requests
如果需要,我们可以添加任何其他。
配置i3pyStatus.
我会将我的i3pyStatus配置文件放在上面 ~/.config/i3/i3pystatus.conf文件的内容是:
# -*- coding: utf-8 -*
#import subprocess
import os
import os.path
from i3pystatus import Status
from i3pystatus.updates import pacman, cower
status = Status()
# Displays clock like this:
# Tue 30 May 11:59:46 PM KW31
# ^-- calendar week
status.register("updates",
format = "Updates: {count}",
format_no_updates = "",
on_leftclick="termite --geometry=1200x600 --title=updates -e 'pacaur --needed --noconfirm --noedit -Syu'",
backends = [pacman.Pacman(), cower.Cower()])
status.register("clock",
format=" %H:%M:%S",
color='#C678DD',
interval=1,
on_leftclick="/usr/bin/gsimplecal",)
status.register("clock",
format=" %a %d-%m-%Y ",
color='#61AEEE',
interval=1,)
status.register("pulseaudio",
color_unmuted='#98C379',
color_muted='#E06C75',
format_muted=' [muted]',
format=" {volume}%")
#status.register("network",
# interface="eno1",
# color_up="#8AE234",
# color_down="#EF2929",
# format_up=": {v4cidr}",
# format_down="",)
status.register("network",
interface="wlo1",
color_up="#8AE234",
color_down="#EF2929",
format_up=" {essid} {kbs} kbs",
format_down="",)
status.register("backlight",
interval=5,
format=" {percentage:.0f}%",
backlight="intel_backlight",)
status.register("battery",
battery_ident="BAT0",
interval=5,
format="{status} {percentage:.0f}%",
alert=True,
alert_percentage=15,
color="#FFFFFF",
critical_color="#FF1919",
charging_color="#E5E500",
full_color="#D19A66",
status={
"DIS": " ",
"CHR": " ",
"FULL": " ",
},)
status.register("temp",
color='#78EAF2',
)
status.register("cpu_usage",
on_leftclick="termite --title=htop -e 'htop'",
format=" {usage}%",)
status.register("mem",
color="#999999",
warn_color="#E5E500",
alert_color="#FF1919",
format=" {avail_mem}/{total_mem} GB",
divisor=1073741824,)
status.register("disk",
color='#56B6C2',
path="/home",
on_leftclick="pcmanfm",
format=" {avail} GB",)
status.register("text",
text="|",
color="#222222")
status.register("disk",
hints = {"separator": False, "separator_block_width": 3},
color='#ABB2BF',
path="/",
format=": {avail} GB",)
#status.register('ping',
# format_disabled='',
# color='#61AEEE')
status.register("keyboard_locks",
format='{caps} {num}',
caps_on='Caps Lock',
caps_off='',
num_on='Num On',
num_off='',
color='#e60053',
)
status.register("mpd",
host='localhost',
port='6600',
format="{status}",
on_leftclick="switch_playpause",
on_rightclick=["mpd_command", "stop"],
on_middleclick=["mpd_command", "shuffle"],
on_upscroll=["mpd_command", "next_song"],
on_downscroll=["mpd_command", "previous_song"],
status={
"pause": " ",
"play": " ",
"stop": " ",
},)
status.run()
使用上述配置文件,我们将关闭完整设置。
剩下的部分是讲述的 i3使用 i3pystatus作为默认状态栏。
修改 bar块在你的 i3配置文件。
矿井如下:
bar {
status_command python ~/.config/i3/i3pystatus.conf
position top
workspace_buttons yes
font pango:Hack, FontAwesome 10
colors {
background #253941
statusline #e7dfd9
separator #081419
focused_workspace #2aa198 #073642 #eee895
active_workspace #073642 #859900 #839496
inactive_workspace #002b36 #002b36 #586e75
urgent_workspace #cb4b16 #dc322f #fdf6e3
}
}
之后,只需重新启动 i3你应该好好去。
重新启动的关键组合 i3是:
$mod+Shift+r

