gentoo-desktop/dotconfig/river/binds
Luc Bijl 39ac3ca6c4 dotconfig/river/binds: update
Added screenshot bin capability.
2025-08-17 19:43:47 +02:00

131 lines
4.5 KiB
Bash
Executable file

#!/bin/sh
# Super+Shift+Q to exit river
riverctl map normal Super+Shift Q spawn "openrc -U g && openrc -U default"
## Aplication mapping ##
# Super+Backspace to spawn waylock
riverctl map normal Super BackSpace spawn "waylock -ignore-empty-password -init-color 0x000000 -input-color 0x3D3D3D -input-alt-color 0x3D3D3D -fail-color 0xFFFFFF"
# Super+Return to spawn foot
riverctl map normal Super Return spawn footclient
# Super+Space to spawn fuzzel
riverctl map normal Super Space spawn fuzzel
# Super+D to dismiss mako notification
riverctl map normal Super d spawn "makoctl dismiss"
# Super+T to spawn datetime
riverctl map normal Super T spawn "$HOME/.local/bin/datetime"
# Super+B to spawn battery state
riverctl map normal Super B spawn "$HOME/.local/bin/battery"
# MonBrightnessUp to increase brightness by 5%
riverctl map normal None XF86_MonBrightnessUp spawn "$HOME/.local/bin/brightness"
# MonBrightnessDown to decrease brightness by 5%
riverctl map normal None XF86_MonBrightnessDown spawn "$HOME/.local/bin/brightness"
# Print to spawn interactive screenshot
riverctl map normal None Print spawn "$HOME/.local/bin/screenshot interactive"
# Shift+Print to spawn screenshot
riverctl map normal Shift Print spawn "$HOME/.local/bin/screenshot plain"
## Focused view mapping ##
# Super+Q to close the focused view
riverctl map normal Super Q close
# Super+F to fullscreen toggle the focused view
riverctl map normal Super F toggle-fullscreen
# Super+BTN_MIDDLE to toggle float of the focused view
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
# Super+BTN_LEFT to move the floated focused view
riverctl map-pointer normal Super BTN_LEFT move-view
# Super+BTN_RIGHT to resize the floated focused view
riverctl map-pointer normal Super BTN_RIGHT resize-view
# Super+{K;J} to focus next/previous view
riverctl map normal Super K focus-view next
riverctl map normal Super J focus-view previous
# Super+Shift+{K;J} to swap the focused view with the next/previous view
riverctl map normal Super+Shift K swap next
riverctl map normal Super+Shift J swap previous
# Super+{.;,} to focus the next/previous output
riverctl map normal Super Period focus-output next
riverctl map normal Super Comma focus-output previous
# Super+Shift+{.;,} to send the focused view to the next/previous output
riverctl map normal Super+Shift Period send-to-output next
riverctl map normal Super+Shift Comma send-to-output previous
## Rivertile mapping ##
# Super+{Up;Right;Down;Left} to change layout orientation
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
riverctl map normal Super Down send-layout-cmd rivertile "main-location down"
riverctl map normal Super Left send-layout-cmd rivertile "main-location left"
# Super+Shift+{Up;Down} to increment/decrement the main count of rivertile
riverctl map normal Super+Shift Up send-layout-cmd rivertile "main-count +1"
riverctl map normal Super+Shift Down send-layout-cmd rivertile "main-count -1"
# Super+Shift+{Right;Left} to increase/decrease the main ratio of rivertile
riverctl map normal Super+Shift Right send-layout-cmd rivertile "main-ratio +0.05"
riverctl map normal Super+Shift Left send-layout-cmd rivertile "main-ratio -0.05"
## Tag mapping ##
for i in $(seq 1 9)
do
j=$((1 << ($i - 1)))
# Super+[1-9] to focus tag [0-8]
riverctl map normal Super $i set-focused-tags $j
# Super+Shift+[1-9] to tag focused view with tag [0-8]
riverctl map normal Super+Shift $i set-view-tags $j
# Super+Control+[1-9] to toggle focus of tag [0-8]
riverctl map normal Super+Control $i toggle-focused-tags $j
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
riverctl map normal Super+Shift+Control $i toggle-view-tags $j
done
all_tags=$(((1 << 32) - 1))
# Super+O to focus all tags
riverctl map normal Super O set-focused-tags $all_tags
# Super+Shift+O to tag focused view with all tags
riverctl map normal Super+Shift O set-view-tags $all_tags
## Media mapping ##
# AudioRaiseVolume to increase volume audio sink by 5%
riverctl map normal None XF86AudioRaiseVolume spawn "$HOME/.local/bin/audio sink volup"
# AudioLowerVolume to decrease volume audio sink by 5%
riverctl map normal None XF86AudioLowerVolume spawn "$HOME/.local/bin/audio sink voldown"
# AudioMute to toggle mute audio sink
riverctl map normal None XF86AudioMute spawn "$HOME/.local/bin/audio sink toggle"
# AudioMicMute to toggle mute audio source
riverctl map normal None XF86AudioMicMute spawn "$HOME/.local/bin/audio source toggle"