Files
dotfiles/mango/mango/keybindings.conf
2025-12-05 15:51:25 +09:00

136 lines
3.6 KiB
Plaintext

# Key Bindings
# key name refer to `xev` or `wev` command output,
# mod keys name: super,ctrl,alt,shift,none
# rofi
bind=SUPER+SHIFT,x,spawn,rofi-settings-manager.sh
bind=SUPER+SHIFT,p,spawn,rofi-power-manager.sh
bind=SUPER+SHIFT,h,spawn,rofi-help-manager.sh
bind=SUPER+SHIFT,c,spawn,rofi-config-manager.sh
bind=SUPER,d,spawn,rofi-app-manager.sh
# reload config
bind=SUPER,r,reload_config
# utility
bind=SUPER+ALT,p,spawn,ss.sh
bind=SUPER+ALT,v,spawn,sc.sh
bind=SUPER,Return,spawn,ghostty
bind=SUPER,e,spawn,env GDK_BACKEND=x11 thunar
bind=none,XF86AudioRaiseVolume,spawn,wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bind=none,XF86AudioLowerVolume,spawn,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bind=none,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bind=none,XF86AudioMicMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bind=none,XF86MonBrightnessUp,spawn,python ~/.local/bin/brightness.py +
bind=none,XF86MonBrightnessDown,spawn,python ~/.local/bin/brightness.py -
# exit
bind=SUPER,m,quit
bind=SUPER+SHIFT,q,killclient,
# misc
# monitor switch
bind=SUPER,bracketleft,focusmon,left
bind=SUPER,bracketright,focusmon,right
# switch window focus
# bind=SUPER,Tab,focusstack,next
bind=SUPER,Left,focusdir,left
bind=SUPER,Right,focusdir,right
bind=SUPER,Up,focusdir,up
bind=SUPER,Down,focusdir,down
# swap window
bind=SUPER+SHIFT,Up,exchange_client,up
bind=SUPER+SHIFT,Down,exchange_client,down
bind=SUPER+SHIFT,Left,exchange_client,left
bind=SUPER+SHIFT,Right,exchange_client,right
# switch window status
bind=SUPER,g,toggleglobal,
bind=ALT,Tab,toggleoverview,
bind=SUPER,t,togglefloating,
bind=ALT,a,togglemaximizescreen,
bind=ALT,f,togglefullscreen,
# bind=ALT+SHIFT,f,togglefakefullscreen,
bind=SUPER,o,toggleoverlay,
# scratchpad, use super+t to restore it
bind=SUPER,i,minimized,
bind=SUPER+SHIFT,I,restore_minimized
bind=SUPER,s,toggle_scratchpad
# scroller layout
bind=ALT,e,set_proportion,1.0
bind=ALT,x,switch_proportion_preset,
# bind=SUPER,s,setlayout,scroller
# switch layout
bind=SUPER,n,switch_layout
bind=SUPER,comma,setlayout,tile
bind=SUPER,period,setlayout,scroller
# tag switch
bind=ALT,Left,viewtoleft,0
bind=ALT,Right,viewtoright,0
bind=CTRL+SUPER,Left,tagtoleft,0
bind=CTRL+SUPER,Right,tagtoright,0
bind=Ctrl,1,view,1,0
bind=Ctrl,2,view,2,0
bind=Ctrl,3,view,3,0
bind=Ctrl,4,view,4,0
bind=Ctrl,5,view,5,0
bind=Ctrl,6,view,6,0
bind=Ctrl,7,view,7,0
bind=Ctrl,8,view,8,0
bind=Ctrl,9,view,9,0
# tag: move client to the tag and focus it
# tagsilent: move client to the tag and not focus it
# bind=Alt,1,tagsilent,1
bind=Alt,1,tag,1,0
bind=Alt,2,tag,2,0
bind=Alt,3,tag,3,0
bind=Alt,4,tag,4,0
bind=Alt,5,tag,5,0
bind=Alt,6,tag,6,0
bind=Alt,7,tag,7,0
bind=Alt,8,tag,8,0
bind=Alt,9,tag,9,0
# window monitor shift
bind=ALT+SHIFT,Left,tagmon,left
bind=ALT+SHIFT,Right,tagmon,right
# gaps
# bind=ALT+SHIFT,X,incgaps,1
# bind=ALT+SHIFT,Z,incgaps,-1
# bind=ALT+SHIFT,R,togglegaps
# movewin
# bind=SUPER+SHIFT,Up,movewin,+0,-50
# bind=SUPER+SHIFT,Down,movewin,+0,+50
# bind=SUPER+SHIFT,Left,movewin,-50,+0
# bind=SUPER+SHIFT,Right,movewin,+50,+0
# resizewin
bind=SUPER+ALT,Up,resizewin,+0,-50
bind=SUPER+ALT,Down,resizewin,+0,+50
bind=SUPER+ALT,Left,resizewin,-50,+0
bind=SUPER+ALT,Right,resizewin,+50,+0
# Mouse Button Bindings
# NONE mode key only work in ov mode
mousebind=SUPER,btn_left,moveresize,curmove
# mousebind=NONE,btn_middle,togglemaximizescreen,0
mousebind=SUPER,btn_right,moveresize,curresize
mousebind=NONE,btn_left,toggleoverview,1
mousebind=NONE,btn_right,killclient,0
# Axis Bindings
axisbind=SUPER,UP,viewtoleft_have_client
axisbind=SUPER,DOWN,viewtoright_have_client