#workspace #group #i3 #wm #tiling

app i3-workspace-groups

将i3(和Sway)工作空间组织成组

4 个版本

0.2.2 2019年1月23日
0.2.1 2018年12月26日
0.2.0 2018年12月22日
0.1.0 2018年11月12日

#22 in #wm

MIT 协议

21KB
414

i3-workspace-groups

为i3(和Sway)工作空间提供分组功能,以便于在处理多个工作空间的项目时更方便地管理和导航。提供了以下功能:

  • 在不同组之间移动工作空间
  • 聚焦不同的组
  • 聚焦当前组中的不同工作空间

组名将添加到其每个工作空间的名称之前,以便于区分。

使用Rofi查询组名。

infokiller/i3-workspace-groups的端口/重写。

安装

需要 Rofi

使用Cargo进行安装:

cargo install i3-workspace-groups

配置

快捷键

i3配置

bindsym $mod+1 exec i3-workspace-groups focus-workspace 1
bindsym $mod+2 exec i3-workspace-groups focus-workspace 2
bindsym $mod+3 exec i3-workspace-groups focus-workspace 3
bindsym $mod+4 exec i3-workspace-groups focus-workspace 4
bindsym $mod+5 exec i3-workspace-groups focus-workspace 5
bindsym $mod+6 exec i3-workspace-groups focus-workspace 6
bindsym $mod+7 exec i3-workspace-groups focus-workspace 7
bindsym $mod+8 exec i3-workspace-groups focus-workspace 8
bindsym $mod+9 exec i3-workspace-groups focus-workspace 9
bindsym $mod+0 exec i3-workspace-groups focus-workspace 10

bindsym $mod+Shift+1 exec i3-workspace-groups move-container-to-workspace 1
bindsym $mod+Shift+2 exec i3-workspace-groups move-container-to-workspace 2
bindsym $mod+Shift+3 exec i3-workspace-groups move-container-to-workspace 3
bindsym $mod+Shift+4 exec i3-workspace-groups move-container-to-workspace 4
bindsym $mod+Shift+5 exec i3-workspace-groups move-container-to-workspace 5
bindsym $mod+Shift+6 exec i3-workspace-groups move-container-to-workspace 6
bindsym $mod+Shift+7 exec i3-workspace-groups move-container-to-workspace 7
bindsym $mod+Shift+8 exec i3-workspace-groups move-container-to-workspace 8
bindsym $mod+Shift+9 exec i3-workspace-groups move-container-to-workspace 9
bindsym $mod+Shift+0 exec i3-workspace-groups move-container-to-workspace 10

bindsym $mod+Control+1 workspace number 1
bindsym $mod+Control+2 workspace number 2
bindsym $mod+Control+3 workspace number 3
bindsym $mod+Control+4 workspace number 4
bindsym $mod+Control+5 workspace number 5
bindsym $mod+Control+6 workspace number 6
bindsym $mod+Control+7 workspace number 7
bindsym $mod+Control+8 workspace number 8
bindsym $mod+Control+9 workspace number 9
bindsym $mod+Control+0 workspace number 10

bindsym $mod+Shift+Control+1 move container to workspace number 1
bindsym $mod+Shift+Control+2 move container to workspace number 2
bindsym $mod+Shift+Control+3 move container to workspace number 3
bindsym $mod+Shift+Control+4 move container to workspace number 4
bindsym $mod+Shift+Control+5 move container to workspace number 5
bindsym $mod+Shift+Control+6 move container to workspace number 6
bindsym $mod+Shift+Control+7 move container to workspace number 7
bindsym $mod+Shift+Control+8 move container to workspace number 8
bindsym $mod+Shift+Control+9 move container to workspace number 9
bindsym $mod+Shift+Control+0 move container to workspace number 10

bindsym $mod+g exec i3-workspace-groups focus-group
bindsym $mod+Shift+g exec i3-workspace-groups move-container-to-group
bindsym $mod+Shift+Control+g exec i3-workspace-groups rename-group

sxhkd:

alt + {_, shift +} {0-9}
	i3-workspace-groups {focus-workspace,move-container-to-workspace} {10,1-9}

alt + ctrl + {_, shift +} {0-9}
	i3-msg {workspace number,move to workspace number} {10,1-9}

alt + {_, shift +, ctrl + shift +} g
	i3-workspace-groups {focus-group,move-container-to-group,rename-group}

状态栏

i3status

bar {
    strip_workspace_numbers yes
}

polybar:

[module/i3]
type = internal/i3

strip-wsnumbers = true

waybar:

"sway/workspaces": {
    "format": "{name}"
}

限制

  • 组中的工作空间不能有自定义名称(即它们必须保持默认编号)。
    • 不在组中的默认工作空间可以有自定义名称,但必须包含工作空间编号(即在工作空间名称前加上编号和冒号)。
  • 组名中不能包含冒号(:)。

依赖项

~6–15MB
~177K SLoC