diff options
Diffstat (limited to 'river/init')
-rwxr-xr-x | river/init | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/river/init b/river/init new file mode 100755 index 0000000..c3e0fb2 --- /dev/null +++ b/river/init @@ -0,0 +1,167 @@ +#!/bin/sh + +. ~/.profile + +mod="Alt" + +riverctl attach-mode bottom +riverctl map normal $mod Return spawn alacritty +riverctl map normal $mod+Control Return spawn 'cage alacritty' +riverctl map normal $mod+Shift Q close +riverctl map normal Alt+Super Q spawn 'loginctl suspend' +riverctl map normal $mod+Shift E exit +riverctl map normal $mod J focus-view next +riverctl map normal $mod K focus-view previous +riverctl map normal $mod+Shift J swap next +riverctl map normal $mod+Shift K swap previous +riverctl map normal $mod D spawn bemenu-run +riverctl map normal $mod P spawn passmenu +riverctl map normal $mod R spawn 'j4-dmenu-desktop --dmenu="bemenu -l 15"' +riverctl map normal $mod C spawn swayidletog +riverctl map normal $mod Q spawn 'loginctl lock-session' +riverctl map normal $mod W spawn "waytoggle" +riverctl map normal $mod Y spawn 'alacritty --class ytfzft -e ytfzf -l' +riverctl map normal $mod+Shift Y spawn 'cage -d -- alacritty -e ytfzf -l' +riverctl map normal Alt+Super Q spawn qbc +riverctl map normal Alt+Super W spawn lwc +riverctl map normal Alt+Super E spawn fdc +riverctl map normal Alt+Super Comma spawn dmenumount +riverctl map normal Alt+Super Period spawn dmenuumount +riverctl map normal Alt+Control v spawn 'alacritty -e bluetoothctl' + +riverctl map normal None XF86_MonBrightnessUp spawn 'light -A 1' +riverctl map normal None XF86_MonBrightnessDown spawn 'light -U 1' +riverctl map normal None XF86_AudioMute spawn 'volsv -t' +riverctl map normal None XF86_AudioMicMute spawn 'pamixer --source 1 -t' +riverctl map normal None XF86_AudioLowerVolume spawn 'volsv -d' +riverctl map normal None XF86_AudioRaiseVolume spawn 'volsv -i' +riverctl map normal None XF86_AudioNext spawn 'playerctl next' +riverctl map normal None XF86_AudioPrev spawn 'playerctl previous' +riverctl map normal None XF86_AudioPlay spawn 'playerctl play-pause' +riverctl map normal None XF86_AudioStop spawn 'playerctl stop' + +# Mod+Period and Mod+Comma to focus the next/previous output +riverctl map normal $mod+Control Period focus-output next +riverctl map normal $mod+Control Comma focus-output previous + +# Mod+Shift+{Period,Comma} to send the focused view to the next/previous output +riverctl map normal $mod+Control+Shift Period send-to-output next +riverctl map normal $mod+Control+Shift Comma send-to-output previous + +# Mod+Return to bump the focused view to the top of the layout stack, making +# it the new master +riverctl map normal $mod+Shift Return zoom + +# Mod+H and Mod+L to decrease/increase the width of the master column by 5% +riverctl map normal $mod H send-layout-cmd rivertile "main-ratio -0.05" +riverctl map normal $mod L send-layout-cmd rivertile "main-ratio +0.05" + +# Mod+Shift+H and Mod+Shift+L to increment/decrement the number of +# master views in the layout +riverctl map normal $mod+Shift H send-layout-cmd rivertile "main-count +1" +riverctl map normal $mod+Shift L send-layout-cmd rivertile "main-count -1" + +for i in $(seq 1 9); do + tagmask=$((1 << ($i - 1))) + + # Mod+[1-9] to focus tag [0-8] + riverctl map normal $mod $i set-focused-tags $tagmask + + # Mod+Shift+[1-9] to tag focused view with tag [0-8] + riverctl map normal $mod+Shift $i set-view-tags $tagmask + + # Mod+Ctrl+[1-9] to toggle focus of tag [0-8] + riverctl map normal $mod+Control $i toggle-focused-tags $tagmask + + # Mod+Shift+Ctrl+[1-9] to toggle tag [0-8] of focused view + riverctl map normal $mod+Shift+Control $i toggle-view-tags $tagmask +done + +# Mod+0 to focus all tags +# Mod+Shift+0 to tag focused view with all tags +all_tags_mask=$(((1 << 32) - 1)) +riverctl map normal $mod 0 set-focused-tags $all_tags_mask +riverctl map normal $mod+Shift 0 set-view-tags $all_tags_mask + +# Mod+Space to toggle float +riverctl map normal $mod Space toggle-float + +# Mod+F to toggle fullscreen +riverctl map normal $mod F toggle-fullscreen + + +# Super+Alt+{H,J,K,L} to move views +riverctl map normal Super+Alt H move left 100 +riverctl map normal Super+Alt J move down 100 +riverctl map normal Super+Alt K move up 100 +riverctl map normal Super+Alt L move right 100 + +# Super+Alt+Control+{H,J,K,L} to snap views to screen edges +riverctl map normal Super+Alt+Control H snap left +riverctl map normal Super+Alt+Control J snap down +riverctl map normal Super+Alt+Control K snap up +riverctl map normal Super+Alt+Control L snap right + +# Super+Alt+Shift+{H,J,K,L} to resize views +riverctl map normal Super+Alt+Shift H resize horizontal -100 +riverctl map normal Super+Alt+Shift J resize vertical 100 +riverctl map normal Super+Alt+Shift K resize vertical -100 +riverctl map normal Super+Alt+Shift L resize horizontal 100 + +# Mod+{Up,Right,Down,Left} to change master orientation +riverctl map normal $mod Up layout rivertile top +riverctl map normal $mod Right layout rivertile right +riverctl map normal $mod Down layout rivertile down +riverctl map normal $mod Left layout rivertile left + +# 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 bottom" +riverctl map normal Super Left send-layout-cmd rivertile "main-location left" + +# Mod+S to change to Full layout +riverctl map normal $mod S layout full + +riverctl map normal $mod T layout rivertile left + +# Declare a passthrough mode. This mode has only a single mapping to return to +# normal mode. This makes it useful for testing a nested wayland compositor +riverctl declare-mode passthrough + +# Mod+F11 to enter passthrough mode +riverctl map normal $mod F11 enter-mode passthrough + +# Mod+F11 to return to normal mode +riverctl map passthrough $mod F11 enter-mode normal + +# Set app-ids of views which should float +riverctl float-filter-add "float" +riverctl float-filter-add "popup" +riverctl float-filter-add 'ytfzft' + +# Set app-ids of views which should use client side decorations +riverctl csd-filter-add app-id "gedit" +riverctl csd-filter-add app-id "libreoffice" +riverctl csd-filter-add app-id "firedragon" + +riverctl focus-follows-cursor normal +riverctl map-pointer normal $Mod BTN_LEFT move-view +riverctl map-pointer normal $mod BTN_RIGHT resize-view + +## AUTOSTART + +#setsid -f swaybg -i ~/background.jpg +#setsid -f mpd +#gsettings set org.gnome.desktop.interface gtk-theme Plata-Noir-Compact +#gsettings set org.gnome.desktop.interface icon-theme Paper-Mono-Dark +#setsid -f dbus-daemon --session --address=unix:path=$XDG_RUNTIME_DIR/bus +#setsid -f swayidle timeout 300 'loginctl lock-session' timeout 600 'loginctl suspend' lock slockd before-sleep slockd +#setsid -f mako +#setsid -f waybar +setsid -f ~/.config/autostart.sh + +# Set the layout on startup +riverctl default-layout rivertile + +exec rivertile -view-padding 6 -outer-padding 6 |