Watch
1
0
Fork
You've already forked dotfiles
0
dotfiles/.config/gnome-settings/key-bindings.ini

310 lines
9.3 KiB
INI

# Unify all key bindings to conveniently keep them consistent
# Target: `i3wm` defaults are the spec
# => We make GNOME/forge bend to match
# Modifier layers
#
# <Control> alone In-app shortcuts
# <Control><Shift> alone In-app shortcuts
#
# <Super> alone Window and workspace navigation
#
# <Super><Shift> Move window in a direction or to a workspace
#
# <Super><Control> Swap windows (GNOME/forge only)
#
# <Super><Alt> Grow windows
# <Super><Alt><Shift> Shrink windows
#
# <Control><Alt> Media, session/power, and GNOME/forge-only extras
[org/gnome/desktop/wm/keybindings]
activate-window-menu=@as []
# <Super><Shift>q is i3wm's default
close=['<Super>q', '<Super><Shift>q', '<Alt>F4']
maximize=@as []
unmaximize=@as []
toggle-maximized=['<Super>f', 'F11']
minimize=@as []
switch-applications=@as []
switch-applications-backward=@as []
switch-input-source=@as []
switch-input-source-backward=@as []
switch-group=@as []
switch-group-backward=@as []
switch-panels=@as []
switch-panels-backward=@as []
cycle-group=@as []
cycle-group-backward=@as []
cycle-panels=@as []
cycle-panels-backward=@as []
cycle-windows=@as []
cycle-windows-backward=@as []
begin-move=@as []
begin-resize=@as []
# <Super>1-5 is i3wm's default
switch-to-workspace-1=['<Super>1']
switch-to-workspace-2=['<Super>2']
switch-to-workspace-3=['<Super>3']
switch-to-workspace-4=['<Super>4']
switch-to-workspace-5=['<Super>5']
switch-to-workspace-6=['<Super>6']
switch-to-workspace-7=['<Super>7']
switch-to-workspace-8=['<Super>8']
switch-to-workspace-9=['<Super>9']
switch-to-workspace-10=['<Super>0']
switch-to-workspace-last=@as []
switch-to-workspace-up=@as []
switch-to-workspace-down=@as []
switch-to-workspace-left=['<Super>comma']
# In [org/freedesktop/ibus/panel/emoji], "hotkey" must be "@as []"
# to turn GNOME's Emoji picker off, which also uses <Super>period
switch-to-workspace-right=['<Super>period']
# <Super><Shift>1-5 is i3wm's default
move-to-workspace-1=['<Super><Shift>1']
move-to-workspace-2=['<Super><Shift>2']
move-to-workspace-3=['<Super><Shift>3']
move-to-workspace-4=['<Super><Shift>4']
move-to-workspace-5=['<Super><Shift>5']
move-to-workspace-6=['<Super><Shift>6']
move-to-workspace-7=['<Super><Shift>7']
move-to-workspace-8=['<Super><Shift>8']
move-to-workspace-9=['<Super><Shift>9']
move-to-workspace-10=['<Super><Shift>0']
move-to-workspace-last=@as []
move-to-workspace-up=@as []
move-to-workspace-down=@as []
move-to-workspace-left=['<Super><Shift>comma']
move-to-workspace-right=['<Super><Shift>period']
[org/gnome/mutter/keybindings]
toggle-tiled-left=@as []
toggle-tiled-right=@as []
[org/gnome/settings-daemon/plugins/media-keys]
email=@as []
help=@as []
home=@as []
search=['<Super>slash']
terminal=@as []
www=@as []
screensaver=@as []
logout=@as []
# Besides the numkeys, we use "/", ".", and "," to control the media
play=['<Control><Alt>slash']
next=['<Control><Alt>Right']
previous=['<Control><Alt>Left']
# I often type "m" for "mute" intuitively
volume-mute=['<Control><Alt>m']
volume-up=['<Control><Alt>Up']
volume-down=['<Control><Alt>Down']
magnifier=@as []
magnifier-zoom-in=@as []
magnifier-zoom-out=@as []
on-screen-keyboard=@as []
screenreader=@as []
custom-keybindings=['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom9/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom10/']
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0]
binding='<Control><Alt>Home'
command='gnome-session-quit --reboot'
name='Reboot Machine'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1]
binding='<Control><Alt>End'
command='gnome-session-quit --power-off'
name='Shutdown Machine'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2]
binding='<Control><Alt>BackSpace'
command='gnome-session-quit --logout'
name='Log out (1)'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3]
binding='<Control><Alt>Delete'
command='gnome-session-quit --logout'
name='Log out (2)'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4]
binding='<Control><Alt>l'
command='loginctl lock-session'
name='Lock Screen'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5]
binding='<Control><Alt>s'
command='systemctl suspend'
name='Suspend'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6]
binding='<Super>Tab'
command='rofi -show window'
name='Windows'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7]
binding='<Super>space'
command='rofi -show drun'
name='Launcher (1)'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8]
# i3wm's default
binding='<Super>d'
command='rofi -show drun'
name='Launcher (2)'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom9]
# i3wm's default, used for our "primary" terminal with `zsh`
binding='<Super>Return'
command='/usr/bin/alacritty'
name='Terminal (alacritty)'
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom10]
# Gnome's actual default, used for our "secondary" terminal with `bash`
binding='<Control><Alt>t'
command='/usr/bin/gnome-terminal'
name='Terminal (gnome-terminal)'
[org/gnome/shell/extensions/forge/keybindings]
prefs-open=['<Control><Alt>p']
focus-border-toggle=@as []
prefs-tiling-toggle=@as []
# Changing the gap size dynamically is not needed
window-gap-size-decrease=@as []
window-gap-size-increase=@as []
workspace-active-tile-toggle=['<Super><Shift>y']
window-toggle-float=['<Super><Shift>space']
window-toggle-always-float=@as []
window-focus-up=['<Super>k', '<Super>Up']
window-focus-down=['<Super>j', '<Super>Down']
window-focus-left=['<Super>h', '<Super>Left']
window-focus-right=['<Super>l', '<Super>Right']
window-move-up=['<Super><Shift>k', '<Super><Shift>Up']
window-move-down=['<Super><Shift>j', '<Super><Shift>Down']
window-move-left=['<Super><Shift>h', '<Super><Shift>Left']
window-move-right=['<Super><Shift>l', '<Super><Shift>Right']
window-swap-up=['<Super><Control>k', '<Super><Control>Up']
window-swap-down=['<Super><Control>j', '<Super><Control>Down']
window-swap-left=['<Super><Control>h', '<Super><Control>Left']
window-swap-right=['<Super><Control>l', '<Super><Control>Right']
window-swap-last-active=['<Super><Control>Return']
# <Super><Alt> + hjkl grows the edge in that direction,
# whereas <Super><Alt><Shift> + hjkl shrinks the same edge, mirroring i3's resize mode
window-resize-top-increase=['<Super><Alt>k', '<Super><Alt>Up']
window-resize-top-decrease=['<Super><Alt><Shift>j', '<Super><Alt><Shift>Down']
window-resize-bottom-increase=['<Super><Alt>j', '<Super><Alt>Down']
window-resize-bottom-decrease=['<Super><Alt><Shift>k', '<Super><Alt><Shift>Up']
window-resize-left-increase=['<Super><Alt>h', '<Super><Alt>Left']
window-resize-left-decrease=['<Super><Alt><Shift>l', '<Super><Alt><Shift>Right']
window-resize-right-increase=['<Super><Alt>l', '<Super><Alt>Right']
window-resize-right-decrease=['<Super><Alt><Shift>h', '<Super><Alt><Shift>Left']
window-snap-center=@as []
window-snap-one-third-left=@as []
window-snap-one-third-right=@as []
window-snap-two-third-left=@as []
window-snap-two-third-right=@as []
# Container stuff
con-split-horizontal=['<Super>b']
con-split-vertical=['<Super>v']
con-split-layout-toggle=['<Super>e']
con-stacked-layout-toggle=['<Super>s']
con-tabbed-layout-toggle=['<Super>w']
con-tabbed-showtab-decoration-toggle=@as []
[org/gnome/shell/extensions/nightthemeswitcher/time]
nightthemeswitcher-ondemand-keybinding=['<Control><Alt>d']
[org/gnome/shell/extensions/project-hamster]
show-hamster-dropdown=['<Control><Alt>h']
[org/gnome/shell/keybindings]
focus-active-notification=@as []
open-application-menu=@as []
# Disable Gnome's default behavior of opening "favorite" apps
# with <Super>1-10 and instead switch workspaces
switch-to-application-1=@as []
switch-to-application-2=@as []
switch-to-application-3=@as []
switch-to-application-4=@as []
switch-to-application-5=@as []
switch-to-application-6=@as []
switch-to-application-7=@as []
switch-to-application-8=@as []
switch-to-application-9=@as []
switch-to-application-10=@as []
toggle-message-tray=['<Control><Alt>n']
toggle-overview=@as []
[org/gnome/terminal/legacy/keybindings]
close-tab='<Control>w'
close-window='<Control>q'
find='<Control>f'
find-clear=''
find-next='<Control>g'
find-previous='<Control><Shift>g'
new-tab='<Control>t'
new-window='<Control>n'
# "equal" because it is below "plus" on a US keyboard
zoom-in='<Control>equal'
zoom-out='<Control>minus'
# To avoid conflict with "switch-to-workspace-right" in [org/gnome/desktop/wm/keybindings]
[org/freedesktop/ibus/panel/emoji]
hotkey=@as []