An Omarchy Quickshell bar-widget plugin that shows a
per-monitor workspace indicator, instead of Omarchy's built-in
omarchy.workspaces widget which shows one global 1-10 strip on every bar.
It's built around named workspaces of the form
hyprsplit-<monitor name>-<slot>, driven by keybinds you define yourself
(e.g. SUPER+1..SUPER+5 per monitor). Each bar instance only displays the
slots belonging to the monitor it's on.
The hyprsplit Hyprland plugin gives you
this behavior natively, but it doesn't work under configs that use
Hyprland's Lua config loader (it fails with
[hyprsplit] Only legacy config supported). This widget reproduces the same
idea — independent per-monitor workspace numbering — entirely with named
workspaces and keybinds, no compositor plugin required.
-
Omarchy with Quickshell
-
Hyprland keybinds that focus per-monitor named workspaces using the
hyprsplit-<monitor name>-<slot>naming scheme this widget expects, e.g. in~/.config/hypr/bindings.lua:local hyprsplitWorkspaceCount = 5 -- for each monitor and each slot 1..hyprsplitWorkspaceCount, bind -- SUPER+<slot> to focus (or create) workspace -- "hyprsplit-<monitor name>-<slot>" on that monitor
The
workspaceCountsetting below must matchhyprsplitWorkspaceCountin your bindings file.
Clone this repo into your Omarchy plugins directory:
git clone https://github.com/Maduki-tech/hyprsplit-workspaces-quickshell.git \
~/.config/omarchy/plugins/local.hyprsplit-workspacesThen, in Omarchy's bar settings, swap the omarchy.workspaces widget for
Hyprsplit Workspaces.
| Setting | Default | Description |
|---|---|---|
workspaceCount |
5 |
Number of workspace slots per monitor. Must match hyprsplitWorkspaceCount in bindings.lua. |
Remove the plugin directory, or swap the bar widget back to
omarchy.workspaces, to return to Omarchy's built-in indicator:
rm -rf ~/.config/omarchy/plugins/local.hyprsplit-workspacesBased on omarchy.workspaces
(/usr/share/omarchy/shell/plugins/bar/widgets/Workspaces.qml), part of
Omarchy.