#workspace #button #hyprland #display #symbols #line #command-line-tool

bin+lib hyprland_workspace_display

Command line utility to display hyprland workspaces

2 releases

0.2.1 Jun 30, 2023
0.2.0 Jun 30, 2023

#25 in #hyprland

MIT license

15KB
253 lines

Hyprland Workspace Display

hyprspacedp

crates.io docs.rs

This is a utility for getting symbols for Hyprland workspaces.
Getting eww widgets (buttons in a box) for the workspaces is also possible and rather customizable.
Unicode icons are also supported.

If any features are missing or there are any bugs please open an issue.
Pull requests are also always welcome.

Info

Multiple monitors and special workspaces are not and WILL NOT be supported.
Except someone wants to make a pull request to add that functionality.

Examples

--help is your best friend.

Basic symbols

hyprspacedp --workspace-amount 10 \
            --empty-symbol o \
            --full-symbol 'O' \
            --active-symbol "α"

--workspace-amount can also be shortened to -n.

Output:

O α O O o o o o o o

Basic Eww widgets

hyprspacedp -n 10 \
            --empty-symbol o \
            --full-symbol 'O' \
            --active-symbol "α" \
            --eww-widgets

Output:

(box (button 'O')(button 'α')(button 'O')(button 'O')(button 'o')(button 'o')(button 'o')(button 'o')(button 'o')(button 'o'))

Eww widgets with box customizations

hyprspacedp -n 10 \
            --empty-symbol o \
            --full-symbol 'O' \
            --active-symbol "α" \
            --eww-widgets \
            --eww-class-box workspaces \
            --eww-orientation vertical

Formatted Output:
(normally it is all in one line)

(box 
  :class 'workspaces' 
  :orientation 'vertical' 
  (button 'O')(button 'α')(button 'O')(button 'O')(button 'o')(button 'o')(button 'o')(button 'o')(button 'o')(button 'o'))

Eww widgets with button customizations

hyprspacedp -n 10 \
            --empty-symbol o \
            --full-symbol O \
            --active-symbol α \
            --eww-widgets \
            --eww-class-button "workspac -{NR}" \
            --eww-onclick "hyprctl dispatch workspace {NR}"

Formatted Output:
(normally it is all in one line)

(box 
(button 
  :class 'workspace-1' 
  :onclick 'hyprctl dispatch workspace 1'
  'O')
(button 
  :class 'workspace-2' 
  :onclick 'hyprctl dispatch workspace 2' 
  'α')
(button :class 'workspace-3' :onclick 'hyprctl dispatch workspace 3' 'O')(button :class 'workspace-4' :onclick 'hyprctl dispatch workspace 4' 'O')(button :class 'workspace-5' :onclick 'hyprctl dispatch workspace 5' 'o')(button :class 'workspace-6' :onclick 'hyprctl dispatch workspace 6' 'o')(button :class 'workspace-7' :onclick 'hyprctl dispatch workspace 7' 'o')(button :class 'workspace-8' :onclick 'hyprctl dispatch workspace 8' 'o')(button :class 'workspace-9' :onclick 'hyprctl dispatch workspace 9' 'o')(button :class 'workspace-10' :onclick 'hyprctl dispatch workspace 10' 'o'))

Dependencies

~3–12MB
~162K SLoC