diff --git a/README.md b/README.md index 13b5ec8a2..3c3102d9c 100644 --- a/README.md +++ b/README.md @@ -14,9 +14,9 @@ https://github.com/user-attachments/assets/0840f496-575c-4ca6-83a8-87bb01a85c5f ## Components -- Widgets: [`Quickshell`](https://quickshell.outfoxxed.me) -- Window manager: [`Hyprland`](https://hyprland.org) -- Dots: [`caelestia`](https://github.com/caelestia-dots) +- Widgets: [`Quickshell`](https://quickshell.outfoxxed.me) +- Window manager: [`Hyprland`](https://hyprland.org) +- Dots: [`caelestia`](https://github.com/caelestia-dots) ## Installation @@ -74,32 +74,32 @@ For home-manager, you can also use the Caelestia's home manager module (explaine Dependencies: -- [`caelestia-cli`](https://github.com/caelestia-dots/cli) -- [`quickshell-git`](https://quickshell.outfoxxed.me) - this has to be the git version, not the latest tagged version -- [`ddcutil`](https://github.com/rockowitz/ddcutil) -- [`brightnessctl`](https://github.com/Hummer12007/brightnessctl) -- [`app2unit`](https://github.com/Vladimir-csp/app2unit) -- [`libcava`](https://github.com/LukashonakV/cava) -- [`networkmanager`](https://networkmanager.dev) -- [`lm-sensors`](https://github.com/lm-sensors/lm-sensors) -- [`fish`](https://github.com/fish-shell/fish-shell) -- [`aubio`](https://github.com/aubio/aubio) -- [`libpipewire`](https://pipewire.org) -- `glibc` -- `qt6-declarative` -- `gcc-libs` -- [`material-symbols`](https://fonts.google.com/icons) -- [`caskaydia-cove-nerd`](https://www.nerdfonts.com/font-downloads) -- [`swappy`](https://github.com/jtheoof/swappy) -- [`libqalculate`](https://github.com/Qalculate/libqalculate) -- [`bash`](https://www.gnu.org/software/bash) -- `qt6-base` -- `qt6-declarative` +- [`caelestia-cli`](https://github.com/caelestia-dots/cli) +- [`quickshell-git`](https://quickshell.outfoxxed.me) - this has to be the git version, not the latest tagged version +- [`ddcutil`](https://github.com/rockowitz/ddcutil) +- [`brightnessctl`](https://github.com/Hummer12007/brightnessctl) +- [`app2unit`](https://github.com/Vladimir-csp/app2unit) +- [`libcava`](https://github.com/LukashonakV/cava) +- [`networkmanager`](https://networkmanager.dev) +- [`lm-sensors`](https://github.com/lm-sensors/lm-sensors) +- [`fish`](https://github.com/fish-shell/fish-shell) +- [`aubio`](https://github.com/aubio/aubio) +- [`libpipewire`](https://pipewire.org) +- `glibc` +- `qt6-declarative` +- `gcc-libs` +- [`material-symbols`](https://fonts.google.com/icons) +- [`caskaydia-cove-nerd`](https://www.nerdfonts.com/font-downloads) +- [`swappy`](https://github.com/jtheoof/swappy) +- [`libqalculate`](https://github.com/Qalculate/libqalculate) +- [`bash`](https://www.gnu.org/software/bash) +- `qt6-base` +- `qt6-declarative` Build dependencies: -- [`cmake`](https://cmake.org) -- [`ninja`](https://github.com/ninja-build/ninja) +- [`cmake`](https://cmake.org) +- [`ninja`](https://github.com/ninja-build/ninja) To install the shell manually, install all dependencies and clone this repo to `$XDG_CONFIG_HOME/quickshell/caelestia`. Then simply build and install using `cmake`. @@ -138,6 +138,8 @@ via an `exec-once` in the hyprland config. ### Shortcuts/IPC +See the full list → [Keyboard Shortcuts](SHORTCUT.md) + All keybinds are accessible via Hyprland [global shortcuts](https://wiki.hyprland.org/Configuring/Binds/#dbus-global-shortcuts). If using the entire caelestia dots, the keybinds are already configured for you. Otherwise, [this file](https://github.com/caelestia-dots/caelestia/blob/main/hypr/hyprland/keybinds.conf#L1-L39) @@ -220,9 +222,9 @@ For example, to disable the bar on DP-1: ```json { - "bar": { - "persistent": false - } + "bar": { + "persistent": false + } } ``` @@ -262,495 +264,497 @@ For example, to disable the bar on DP-1: ```json { - "enabled": true, - "appearance": { - "deformScale": 1, - "anim": { - "durations": { - "scale": 1 - } - }, - "font": { - "family": { - "clock": "Rubik", - "material": "Material Symbols Rounded", - "mono": "CaskaydiaCove NF", - "sans": "Rubik" - }, - "size": { - "scale": 1 - } - }, - "padding": { - "scale": 1 - }, - "rounding": { - "scale": 1 + "enabled": true, + "appearance": { + "deformScale": 1, + "anim": { + "durations": { + "scale": 1 + } + }, + "font": { + "family": { + "clock": "Rubik", + "material": "Material Symbols Rounded", + "mono": "CaskaydiaCove NF", + "sans": "Rubik" + }, + "size": { + "scale": 1 + } + }, + "padding": { + "scale": 1 + }, + "rounding": { + "scale": 1 + }, + "spacing": { + "scale": 1 + }, + "transparency": { + "enabled": false, + "base": 0.85, + "layers": 0.4 + } + }, + "general": { + "logo": "caelestia", + "showOverFullscreen": false, + "mediaGifSpeedAdjustment": 300, + "sessionGifSpeed": 0.7, + "apps": { + "terminal": ["foot"], + "audio": ["pavucontrol"], + "playback": ["mpv"], + "explorer": ["thunar"] + }, + "battery": { + "warnLevels": [ + { + "level": 20, + "title": "Low battery", + "message": "You might want to plug in a charger", + "icon": "battery_android_frame_2" }, - "spacing": { - "scale": 1 + { + "level": 10, + "title": "Did you see the previous message?", + "message": "You should probably plug in a charger now", + "icon": "battery_android_frame_1" }, - "transparency": { - "enabled": false, - "base": 0.85, - "layers": 0.4 + { + "level": 5, + "title": "Critical battery level", + "message": "PLUG THE CHARGER RIGHT NOW!!", + "icon": "battery_android_alert", + "critical": true } + ], + "criticalLevel": 3 }, - "general": { - "logo": "caelestia", - "showOverFullscreen": false, - "mediaGifSpeedAdjustment": 300, - "sessionGifSpeed": 0.7, - "apps": { - "terminal": ["foot"], - "audio": ["pavucontrol"], - "playback": ["mpv"], - "explorer": ["thunar"] + "idle": { + "lockBeforeSleep": true, + "inhibitWhenAudio": true, + "timeouts": [ + { + "timeout": 180, + "idleAction": "lock" }, - "battery": { - "warnLevels": [ - { - "level": 20, - "title": "Low battery", - "message": "You might want to plug in a charger", - "icon": "battery_android_frame_2" - }, - { - "level": 10, - "title": "Did you see the previous message?", - "message": "You should probably plug in a charger now", - "icon": "battery_android_frame_1" - }, - { - "level": 5, - "title": "Critical battery level", - "message": "PLUG THE CHARGER RIGHT NOW!!", - "icon": "battery_android_alert", - "critical": true - } - ], - "criticalLevel": 3 + { + "timeout": 300, + "idleAction": "dpms off", + "returnAction": "dpms on" }, - "idle": { - "lockBeforeSleep": true, - "inhibitWhenAudio": true, - "timeouts": [ - { - "timeout": 180, - "idleAction": "lock" - }, - { - "timeout": 300, - "idleAction": "dpms off", - "returnAction": "dpms on" - }, - { - "timeout": 600, - "idleAction": ["systemctl", "suspend-then-hibernate"] - } - ] + { + "timeout": 600, + "idleAction": ["systemctl", "suspend-then-hibernate"] } - }, - "background": { - "desktopClock": { - "enabled": false, - "scale": 1.0, - "position": "bottom-right", - "shadow": { - "enabled": true, - "opacity": 0.7, - "blur": 0.4 - }, - "background": { - "enabled": false, - "opacity": 0.7, - "blur": true - }, - "invertColors": false - }, + ] + } + }, + "background": { + "desktopClock": { + "enabled": false, + "scale": 1.0, + "position": "bottom-right", + "shadow": { "enabled": true, - "visualiser": { - "blur": false, - "enabled": false, - "autoHide": true, - "rounding": 1, - "spacing": 1 - } + "opacity": 0.7, + "blur": 0.4 + }, + "background": { + "enabled": false, + "opacity": 0.7, + "blur": true + }, + "invertColors": false }, - "bar": { - "activeWindow": { - "compact": false, - "inverted": false, - "showOnHover": true - }, - "clock": { - "background": false, - "showDate": false, - "showIcon": true - }, - "dragThreshold": 20, - "entries": [ - { - "id": "logo", - "enabled": true - }, - { - "id": "workspaces", - "enabled": true - }, - { - "id": "spacer", - "enabled": true - }, - { - "id": "activeWindow", - "enabled": true - }, - { - "id": "spacer", - "enabled": true - }, - { - "id": "tray", - "enabled": true - }, - { - "id": "clock", - "enabled": true - }, - { - "id": "statusIcons", - "enabled": true - }, - { - "id": "power", - "enabled": true - } - ], - "persistent": true, - "popouts": { - "activeWindow": true, - "statusIcons": true, - "tray": true - }, - "scrollActions": { - "brightness": true, - "workspaces": true, - "volume": true - }, - "showOnHover": true, - "status": { - "showAudio": false, - "showBattery": true, - "showBluetooth": true, - "showKbLayout": false, - "showMicrophone": false, - "showNetwork": true, - "showWifi": true, - "showLockStatus": true - }, - "tray": { - "background": false, - "compact": false, - "iconSubs": [], - "recolour": false - }, - "workspaces": { - "activeIndicator": true, - "activeLabel": "󰮯", - "activeTrail": false, - "label": " ", - "occupiedBg": false, - "occupiedLabel": "󰮯", - "perMonitorWorkspaces": true, - "showWindows": true, - "shown": 5, - "specialWorkspaceIcons": [ - { - "name": "steam", - "icon": "sports_esports" - } - ], - "windowIcons": [ - { - "regex": "steam(_app_(default|[0-9]+))?", - "icon": "sports_esports" - } - ] - }, - "excludedScreens": [""], - "activeWindow": { - "inverted": false - } + "enabled": true, + "visualiser": { + "blur": false, + "enabled": false, + "autoHide": true, + "rounding": 1, + "spacing": 1 + } + }, + "bar": { + "activeWindow": { + "compact": false, + "inverted": false, + "showOnHover": true }, - "border": { - "rounding": 25, - "smoothing": 32, - "thickness": 10 + "clock": { + "background": false, + "showDate": false, + "showIcon": true }, - "dashboard": { - "enabled": true, - "showOnHover": true, - "showDashboard": true, - "showMedia": true, - "showPerformance": true, - "showWeather": true, - "dragThreshold": 50, - "mediaUpdateInterval": 500 + "dragThreshold": 20, + "entries": [ + { + "id": "logo", + "enabled": true + }, + { + "id": "workspaces", + "enabled": true + }, + { + "id": "spacer", + "enabled": true + }, + { + "id": "activeWindow", + "enabled": true + }, + { + "id": "spacer", + "enabled": true + }, + { + "id": "tray", + "enabled": true + }, + { + "id": "clock", + "enabled": true + }, + { + "id": "statusIcons", + "enabled": true + }, + { + "id": "power", + "enabled": true + } + ], + "persistent": true, + "popouts": { + "activeWindow": true, + "statusIcons": true, + "tray": true }, - "launcher": { - "actionPrefix": ">", - "actions": [ - { - "name": "Calculator", - "icon": "calculate", - "description": "Do simple math equations (powered by Qalc)", - "command": ["autocomplete", "calc"], - "enabled": true, - "dangerous": false - }, - { - "name": "Scheme", - "icon": "palette", - "description": "Change the current colour scheme", - "command": ["autocomplete", "scheme"], - "enabled": true, - "dangerous": false - }, - { - "name": "Wallpaper", - "icon": "image", - "description": "Change the current wallpaper", - "command": ["autocomplete", "wallpaper"], - "enabled": true, - "dangerous": false - }, - { - "name": "Variant", - "icon": "colors", - "description": "Change the current scheme variant", - "command": ["autocomplete", "variant"], - "enabled": true, - "dangerous": false - }, - { - "name": "Transparency", - "icon": "opacity", - "description": "Change shell transparency", - "command": ["autocomplete", "transparency"], - "enabled": false, - "dangerous": false - }, - { - "name": "Random", - "icon": "casino", - "description": "Switch to a random wallpaper", - "command": ["caelestia", "wallpaper", "-r"], - "enabled": true, - "dangerous": false - }, - { - "name": "Light", - "icon": "light_mode", - "description": "Change the scheme to light mode", - "command": ["setMode", "light"], - "enabled": true, - "dangerous": false - }, - { - "name": "Dark", - "icon": "dark_mode", - "description": "Change the scheme to dark mode", - "command": ["setMode", "dark"], - "enabled": true, - "dangerous": false - }, - { - "name": "Shutdown", - "icon": "power_settings_new", - "description": "Shutdown the system", - "command": ["systemctl", "poweroff"], - "enabled": true, - "dangerous": true - }, - { - "name": "Reboot", - "icon": "cached", - "description": "Reboot the system", - "command": ["systemctl", "reboot"], - "enabled": true, - "dangerous": true - }, - { - "name": "Logout", - "icon": "exit_to_app", - "description": "Log out of the current session", - "command": ["loginctl", "terminate-user", ""], - "enabled": true, - "dangerous": true - }, - { - "name": "Lock", - "icon": "lock", - "description": "Lock the current session", - "command": ["loginctl", "lock-session"], - "enabled": true, - "dangerous": false - }, - { - "name": "Sleep", - "icon": "bedtime", - "description": "Suspend then hibernate", - "command": ["systemctl", "suspend-then-hibernate"], - "enabled": true, - "dangerous": false - }, - { - "name": "Settings", - "icon": "settings", - "description": "Configure the shell", - "command": ["caelestia", "shell", "controlCenter", "open"], - "enabled": true, - "dangerous": false - } - ], - "dragThreshold": 50, - "vimKeybinds": false, - "enableDangerousActions": false, - "maxShown": 7, - "maxWallpapers": 9, - "specialPrefix": "@", - "useFuzzy": { - "apps": false, - "actions": false, - "schemes": false, - "variants": false, - "wallpapers": false - }, - "showOnHover": false, - "favouriteApps": [], - "hiddenApps": [] + "scrollActions": { + "brightness": true, + "workspaces": true, + "volume": true }, - "lock": { - "recolourLogo": false, - "hideNotifs": false + "showOnHover": true, + "status": { + "showAudio": false, + "showBattery": true, + "showBluetooth": true, + "showKbLayout": false, + "showMicrophone": false, + "showNetwork": true, + "showWifi": true, + "showLockStatus": true }, - "notifs": { - "actionOnClick": false, - "clearThreshold": 0.3, - "defaultExpireTimeout": 5000, - "expandThreshold": 20, - "openExpanded": false, - "expire": false + "tray": { + "background": false, + "compact": false, + "iconSubs": [], + "recolour": false }, - "osd": { + "workspaces": { + "activeIndicator": true, + "activeLabel": "󰮯", + "activeTrail": false, + "label": " ", + "occupiedBg": false, + "occupiedLabel": "󰮯", + "perMonitorWorkspaces": true, + "showWindows": true, + "shown": 5, + "specialWorkspaceIcons": [ + { + "name": "steam", + "icon": "sports_esports" + } + ], + "windowIcons": [ + { + "regex": "steam(_app_(default|[0-9]+))?", + "icon": "sports_esports" + } + ] + }, + "excludedScreens": [""], + "activeWindow": { + "inverted": false + } + }, + "border": { + "rounding": 25, + "smoothing": 32, + "thickness": 10 + }, + "dashboard": { + "enabled": true, + "showOnHover": true, + "showDashboard": true, + "showMedia": true, + "showPerformance": true, + "showWeather": true, + "dragThreshold": 50, + "mediaUpdateInterval": 500 + }, + "launcher": { + "actionPrefix": ">", + "actions": [ + { + "name": "Calculator", + "icon": "calculate", + "description": "Do simple math equations (powered by Qalc)", + "command": ["autocomplete", "calc"], + "enabled": true, + "dangerous": false + }, + { + "name": "Scheme", + "icon": "palette", + "description": "Change the current colour scheme", + "command": ["autocomplete", "scheme"], + "enabled": true, + "dangerous": false + }, + { + "name": "Wallpaper", + "icon": "image", + "description": "Change the current wallpaper", + "command": ["autocomplete", "wallpaper"], + "enabled": true, + "dangerous": false + }, + { + "name": "Variant", + "icon": "colors", + "description": "Change the current scheme variant", + "command": ["autocomplete", "variant"], + "enabled": true, + "dangerous": false + }, + { + "name": "Transparency", + "icon": "opacity", + "description": "Change shell transparency", + "command": ["autocomplete", "transparency"], + "enabled": false, + "dangerous": false + }, + { + "name": "Random", + "icon": "casino", + "description": "Switch to a random wallpaper", + "command": ["caelestia", "wallpaper", "-r"], + "enabled": true, + "dangerous": false + }, + { + "name": "Light", + "icon": "light_mode", + "description": "Change the scheme to light mode", + "command": ["setMode", "light"], + "enabled": true, + "dangerous": false + }, + { + "name": "Dark", + "icon": "dark_mode", + "description": "Change the scheme to dark mode", + "command": ["setMode", "dark"], + "enabled": true, + "dangerous": false + }, + { + "name": "Shutdown", + "icon": "power_settings_new", + "description": "Shutdown the system", + "command": ["systemctl", "poweroff"], + "enabled": true, + "dangerous": true + }, + { + "name": "Reboot", + "icon": "cached", + "description": "Reboot the system", + "command": ["systemctl", "reboot"], + "enabled": true, + "dangerous": true + }, + { + "name": "Logout", + "icon": "exit_to_app", + "description": "Log out of the current session", + "command": ["loginctl", "terminate-user", ""], + "enabled": true, + "dangerous": true + }, + { + "name": "Lock", + "icon": "lock", + "description": "Lock the current session", + "command": ["loginctl", "lock-session"], "enabled": true, - "enableBrightness": true, - "enableMicrophone": false, - "hideDelay": 2000 + "dangerous": false + }, + { + "name": "Sleep", + "icon": "bedtime", + "description": "Suspend then hibernate", + "command": ["systemctl", "suspend-then-hibernate"], + "enabled": true, + "dangerous": false + }, + { + "name": "Settings", + "icon": "settings", + "description": "Configure the shell", + "command": ["caelestia", "shell", "controlCenter", "open"], + "enabled": true, + "dangerous": false + } + ], + "dragThreshold": 50, + "vimKeybinds": false, + "enableDangerousActions": false, + "maxShown": 7, + "maxWallpapers": 9, + "specialPrefix": "@", + "useFuzzy": { + "apps": false, + "actions": false, + "schemes": false, + "variants": false, + "wallpapers": false }, - "paths": { - "mediaGif": "root:/assets/bongocat.gif", - "sessionGif": "root:/assets/kurukuru.gif", - "noNotifsPic": "root:/assets/dino.png", - "lockNoNotifsPic": "root:/assets/dino.png", - "wallpaperDir": "~/Pictures/Wallpapers", - "lyricsDir": "~/Music/lyrics" + "showOnHover": false, + "favouriteApps": [], + "hiddenApps": [] + }, + "lock": { + "recolourLogo": false, + "hideNotifs": false + }, + "notifs": { + "actionOnClick": false, + "clearThreshold": 0.3, + "defaultExpireTimeout": 5000, + "expandThreshold": 20, + "openExpanded": false, + "expire": false + }, + "osd": { + "enabled": true, + "enableBrightness": true, + "enableMicrophone": false, + "hideDelay": 2000 + }, + "paths": { + "mediaGif": "root:/assets/bongocat.gif", + "sessionGif": "root:/assets/kurukuru.gif", + "noNotifsPic": "root:/assets/dino.png", + "lockNoNotifsPic": "root:/assets/dino.png", + "wallpaperDir": "~/Pictures/Wallpapers", + "lyricsDir": "~/Music/lyrics" + }, + "services": { + "audioIncrement": 0.1, + "brightnessIncrement": 0.1, + "maxVolume": 1.0, + "defaultPlayer": "Spotify", + "gpuType": "", + "playerAliases": [ + { "from": "com.github.th_ch.youtube_music", "to": "YT Music" } + ], + "weatherLocation": "", + "useFahrenheit": false, + "useFahrenheitPerformance": false, + "useTwelveHourClock": false, + "smartScheme": true, + "visualiserBars": 45 + }, + "session": { + "dragThreshold": 30, + "enabled": true, + "vimKeybinds": false, + "icons": { + "logout": "logout", + "shutdown": "power_settings_new", + "hibernate": "downloading", + "reboot": "cached" }, - "services": { - "audioIncrement": 0.1, - "brightnessIncrement": 0.1, - "maxVolume": 1.0, - "defaultPlayer": "Spotify", - "gpuType": "", - "playerAliases": [{ "from": "com.github.th_ch.youtube_music", "to": "YT Music" }], - "weatherLocation": "", - "useFahrenheit": false, - "useFahrenheitPerformance": false, - "useTwelveHourClock": false, - "smartScheme": true, - "visualiserBars": 45 + "commands": { + "logout": ["loginctl", "terminate-user", ""], + "shutdown": ["systemctl", "poweroff"], + "hibernate": ["systemctl", "hibernate"], + "reboot": ["systemctl", "reboot"] + } + }, + "sidebar": { + "dragThreshold": 80, + "enabled": true + }, + "utilities": { + "enabled": true, + "maxToasts": 4, + "toasts": { + "audioInputChanged": true, + "audioOutputChanged": true, + "capsLockChanged": true, + "chargingChanged": true, + "configLoaded": true, + "dndChanged": true, + "gameModeChanged": true, + "kbLayoutChanged": true, + "kbLimit": true, + "numLockChanged": true, + "vpnChanged": true, + "nowPlaying": false }, - "session": { - "dragThreshold": 30, - "enabled": true, - "vimKeybinds": false, - "icons": { - "logout": "logout", - "shutdown": "power_settings_new", - "hibernate": "downloading", - "reboot": "cached" - }, - "commands": { - "logout": ["loginctl", "terminate-user", ""], - "shutdown": ["systemctl", "poweroff"], - "hibernate": ["systemctl", "hibernate"], - "reboot": ["systemctl", "reboot"] + "vpn": { + "enabled": true, + "provider": [ + { + "name": "wireguard", + "interface": "your-connection-name", + "displayName": "Wireguard (Your VPN)", + "enabled": false } + ] }, - "sidebar": { - "dragThreshold": 80, + "quickToggles": [ + { + "id": "wifi", "enabled": true - }, - "utilities": { + }, + { + "id": "bluetooth", + "enabled": true + }, + { + "id": "mic", + "enabled": true + }, + { "enabled": true, - "maxToasts": 4, - "toasts": { - "audioInputChanged": true, - "audioOutputChanged": true, - "capsLockChanged": true, - "chargingChanged": true, - "configLoaded": true, - "dndChanged": true, - "gameModeChanged": true, - "kbLayoutChanged": true, - "kbLimit": true, - "numLockChanged": true, - "vpnChanged": true, - "nowPlaying": false - }, - "vpn": { - "enabled": true, - "provider": [ - { - "name": "wireguard", - "interface": "your-connection-name", - "displayName": "Wireguard (Your VPN)", - "enabled": false - } - ] - }, - "quickToggles": [ - { - "id": "wifi", - "enabled": true - }, - { - "id": "bluetooth", - "enabled": true - }, - { - "id": "mic", - "enabled": true - }, - { - "enabled": true, - "id": "settings" - }, - { - "id": "gameMode", - "enabled": true - }, - { - "id": "dnd", - "enabled": true - }, - { - "id": "vpn", - "enabled": true - } - ] - } + "id": "settings" + }, + { + "id": "gameMode", + "enabled": true + }, + { + "id": "dnd", + "enabled": true + }, + { + "id": "vpn", + "enabled": true + } + ] + } } ``` @@ -865,7 +869,7 @@ which helped me a lot with learning how to use Quickshell. Finally another thank you to all the configs I took inspiration from (only one for now): -- [Axenide/Ax-Shell](https://github.com/Axenide/Ax-Shell) +- [Axenide/Ax-Shell](https://github.com/Axenide/Ax-Shell) ## Stonks 📈 diff --git a/SHORTCUT.md b/SHORTCUT.md new file mode 100644 index 000000000..96140bf82 --- /dev/null +++ b/SHORTCUT.md @@ -0,0 +1,204 @@ +# Keybindings Reference + +> **Key notation:** `Super` = Windows/Meta key  |  `+` = hold together  |  `,` = then press + +--- + +## Launcher + +| Shortcut | Action | +| -------------------------- | -------------------------- | +| `Super` (tap) | Open app launcher | +| Any input while Super held | Interrupt / close launcher | + +--- + +## Applications + +| Shortcut | Opens | +| --------------------- | ------------------------- | +| `Super + T` | Terminal (foot) | +| `Super + W` | Browser (Zen) | +| `Super + C` | Code editor (VSCodium) | +| `Super + E` | File explorer (Thunar) | +| `Super + Alt + E` | File explorer (Nemo) | +| `Super + G` | GitHub Desktop | +| `Ctrl + Alt + Escape` | Task manager (qps) | +| `Ctrl + Alt + V` | Audio mixer (pavucontrol) | + +--- + +## Workspaces + +### Navigate to workspace + +| Shortcut | Action | +| ------------------------------- | -------------------------- | +| `Super + 1–9, 0` | Go to workspace 1–10 | +| `Ctrl + Super + 1–9, 0` | Go to workspace group 1–10 | +| `Ctrl + Super + →` | Next workspace | +| `Ctrl + Super + ←` | Previous workspace | +| `Super + Page Up` | Previous workspace | +| `Super + Page Down` | Next workspace | +| `Super + Scroll Up` | Previous workspace | +| `Super + Scroll Down` | Next workspace | +| `Ctrl + Super + Scroll Up/Down` | Jump workspace group ±10 | +| `Super + S` | Toggle special workspace | + +### Move window to workspace + +| Shortcut | Action | +| ----------------------------- | ------------------------------------ | +| `Super + Alt + 1–9, 0` | Move window to workspace 1–10 | +| `Ctrl + Super + Alt + 1–9, 0` | Move window to workspace group 1–10 | +| `Super + Alt + Page Up/Down` | Move window to prev/next workspace | +| `Super + Alt + Scroll` | Move window to prev/next workspace | +| `Ctrl + Super + Shift + →` | Move window to next workspace | +| `Ctrl + Super + Shift + ←` | Move window to previous workspace | +| `Ctrl + Super + Shift + ↑` | Move window to special workspace | +| `Ctrl + Super + Shift + ↓` | Move window out of special workspace | +| `Super + Alt + S` | Move window to special workspace | + +--- + +## Window Management + +### Focus & Move + +| Shortcut | Action | +| ---------------------------------- | ------------------------ | +| `Super + ← ↑ ↓ →` | Move focus in direction | +| `Super + Shift + ← ↑ ↓ →` | Move window in direction | +| `Super + Z` (hold & drag) | Move window freely | +| `Super + Left Mouse Button` (drag) | Move window freely | + +### Resize + +| Shortcut | Action | +| ----------------------------------- | --------------------------- | +| `Super + =` | Expand window width (+10%) | +| `Super + -` | Shrink window width (−10%) | +| `Super + Shift + =` | Expand window height (+10%) | +| `Super + Shift + -` | Shrink window height (−10%) | +| `Super + Alt + ← → ↑ ↓` | Resize window in direction | +| `Super + X` (hold & drag) | Resize window freely | +| `Super + Right Mouse Button` (drag) | Resize window freely | + +### Layout & State + +| Shortcut | Action | +| ------------------------ | ------------------------------------ | +| `Super + F` | Fullscreen | +| `Super + Alt + F` | Fullscreen (keep borders) | +| `Super + Alt + Space` | Toggle floating | +| `Super + P` | Pin window (stays on all workspaces) | +| `Super + Alt + \` | Picture-in-picture mode | +| `Ctrl + Super + \` | Center window | +| `Ctrl + Super + Alt + \` | Center & resize to 55×70% | +| `Super + Q` | Close window | + +### Window Groups (Tabs) + +| Shortcut | Action | +| -------------------------- | -------------------------- | +| `Super + ,` | Toggle group (tab) | +| `Super + U` | Ungroup (eject window) | +| `Alt + Tab` | Cycle next in group | +| `Shift + Alt + Tab` | Cycle previous in group | +| `Ctrl + Alt + Tab` | Change active tab forward | +| `Ctrl + Shift + Alt + Tab` | Change active tab backward | +| `Super + Shift + ,` | Lock/unlock active group | + +--- + +## Special Panels & Overlays + +| Shortcut | Action | +| ----------------------- | -------------------------- | +| `Super + M` | Toggle music panel | +| `Super + D` | Toggle communication panel | +| `Super + R` | Toggle to-do panel | +| `Ctrl + Shift + Escape` | Toggle system monitor | +| `Super + N` | Toggle sidebar | +| `Super + K` | Show all panels | + +--- + +## Screenshots & Recording + +| Shortcut | Action | +| ------------------------- | ------------------------------------ | +| `Print Screen` | Full screen capture → clipboard | +| `Super + Shift + S` | Capture region (freeze screen first) | +| `Super + Shift + Alt + S` | Capture region (live) | +| `Super + Shift + C` | Color picker | +| `Ctrl + Alt + R` | Record screen | +| `Super + Alt + R` | Record screen with microphone | +| `Super + Shift + Alt + R` | Record selected region | + +--- + +## Volume & Media + +### Volume + +| Shortcut | Action | +| ------------------- | -------------------------- | +| `Volume Up key` | Unmute & raise volume +10% | +| `Volume Down key` | Unmute & lower volume −10% | +| `Mute key` | Toggle speaker mute | +| `Super + Shift + M` | Toggle speaker mute | +| `Mic Mute key` | Toggle microphone mute | + +### Media Playback + +| Shortcut | Action | +| ---------------------- | -------------- | +| `Ctrl + Super + Space` | Play / Pause | +| `Play/Pause key` | Play / Pause | +| `Ctrl + Super + =` | Next track | +| `Next key` | Next track | +| `Ctrl + Super + -` | Previous track | +| `Previous key` | Previous track | +| `Stop key` | Stop playback | + +--- + +## Brightness + +| Shortcut | Action | +| --------------------- | ------------------- | +| `Brightness Up key` | Increase brightness | +| `Brightness Down key` | Decrease brightness | + +--- + +## Clipboard & Emoji + +| Shortcut | Action | +| ------------------------ | ------------------------------------ | +| `Super + V` | Open clipboard history | +| `Super + Alt + V` | Open clipboard history (delete mode) | +| `Ctrl + Shift + Alt + V` | Paste most recent clipboard entry | +| `Super + .` | Open emoji picker | + +--- + +## Session & Lock + +| Shortcut | Action | +| --------------------- | --------------------------- | +| `Super + L` | Lock screen | +| `Super + Alt + L` | Restore lock screen | +| `Super + Shift + L` | Sleep (suspend → hibernate) | +| `Ctrl + Alt + Delete` | Session menu | + +--- + +## Shell (Developer) + +| Shortcut | Action | +| -------------------------- | ----------------------- | +| `Ctrl + Super + Shift + R` | Kill shell (caelestia) | +| `Ctrl + Super + Alt + R` | Kill & restart shell | +| `Ctrl + Alt + C` | Clear all notifications |