Scratchpad for each workspace. Tiny utility to create and navigate to an extra supplementary (against focused one) workspace.
# '2:work' is a focused workspace
$ i3-extra-workspace toggle
# '+2:work' is a focused workspace now
$ i3-extra-workspace toggle
# '2:work' is a focused workspace now
Instead of having a complex and composite layout (e.g. tabbed), that could be convenient to have a workspace with related containers which are not required right away or used not often (e.g. set of containers with documentation). Vanilla i3's scratchpad is fine until there are too many unrelated windows (or involvement of some tricks with labeling etc. is required). An extra workspace with a similar same name could come to the rescue.
Build:
$ go install github.com/thekondor/i3-extra-workspace@latest
Through i3 config (in case that no golang's default environment variables are overwritten):
bindsym $mod+period exec ~/go/bin/i3-extra-workspace toggle
bindsym $mod+shift+period exec ~/go/bin/i3-extra-workspace flip
toggle
to create and navigate to an extra workspace immediately and vice versa.
flip
to flip (ok: move) a focused container to the extra workspace and vice versa. The extra workspace is created if there is none.
-
An extra workspace is non-navigable through a workspace number
-
An extra workspace's name is generated by adding a plus sign (
+
) to the name of "main" workspace. Should-ws-prefix
argument be set, the value to be used instead of+
. E.g.i3-extra-workspace -ws-prefix ⨁ toggle
.