动态更新每个i3wm工作区的名称,使用字体可怕的图标或运行在每个工作区中的应用程序的名称。

i3-workspace-names-daemon的Python项目详细描述


i3工作区名称守护进程

此脚本根据其中窗口的名称动态更新i3wm工作区名称。

它还允许用户从Font Awesome图标列表中定义要为命名窗口显示的图标。

tl;dr

更新i3条工作区名称,使其看起来像这样

安装

pip安装来自pypi的package

sudo pip3 install i3-workspace-names-daemon

nb.。如果您没有sudo权限,请执行

pip3 install --user i3-workspace-names-daemon
字体

通过您喜爱的包管理器安装Font Awesome字体。如果您想在i3状态栏中显示图标而不是窗口名,这是必要的。

对于debian/ubuntu等人。

sudo apt install fonts-font-awesome

nb:如果字形没有呈现,请确保字体已安装。

i3配置

将以下行添加到您的~/.i3/config

exec_always --no-startup-id exec i3-workspace-names-daemon

如果使用$mod+1等快捷方式来切换工作区,请更新以下内容,以便切换到workspace将焦点窗口移动到workspace快捷方式仍然有效。

bindsym $mod+1 workspace 1
bindsym $mod+Shift+1 move container to workspace 1
# etc

bindsym $mod+1 workspace number 1
bindsym $mod+Shift+1 move container to workspace number 1
# etc

图标配置

为文件~/.i3/app-icons.json~/.config/i3/app-icons.json(json格式)中的应用程序窗口配置要显示的图标。例如:

chris@vulcan: ~$ cat ~/.i3/app-icons.json
{
    "firefox": "firefox",
    "chromium-browser": "chrome",
    "chrome": "chrome",
    "google-chrome": "chrome",
    "x-terminal-emulator": "terminal",
    "thunderbird": "envelope",
    "jetbrains-idea-ce": "edit",
    "nautilus": "folder-open",
    "clementine": "music",
    "vlc": "play",
    "signal": "comment"
}

其中,键是i3窗口的名称(即尚未配置时在i3栏中显示的内容),值是要显示的字体awesome图标名称,请参见picking icons

注意:如果不添加此图标配置文件,则使用上面的硬编码列表。

选择图标

选择图标的最简单方法是在gallery中搜索一个图标。nb:Debian软件包中没有“Pro”图标。

常见问题解答

https://pypi.org/project/i3-workspace-names-daemon/

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
有没有一种方法可以将不同的java web应用程序组合到一个web应用程序(war)中而不相互影响?   java一次屏蔽两位   java如何在多个类上初始化元素?   java在后台服务中处理通知或使用GCM(或其他推送通知服务)   java从const方法调用JNI函数   javascript如何使用函数/方法返回?   Java优化:声明类变量与使用临时变量   java字符算术基数8 vs基数10   Java流收集要存储的对象列表   swing我正在用Java中的keyListener制作一个精灵移动器   在Gradle构建脚本中使用Scala(或java)方法   java Android Mediaplayer下一步按钮不起作用   Java Sound API在播放音频文件后将其锁定   java将变量从外部类传递到内部类的最佳方法   使用play framework的博客web应用程序出现java逻辑错误   java我们可以在Spring批处理中处理大型zip文件吗?   java如何检查JTable的选定行的特定列中的值是否已经在JList中?