2016-03-31 02:06:44 +00:00
|
|
|
# i3 config file (v4)
|
|
|
|
#
|
|
|
|
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
|
|
|
|
|
|
|
|
set $mod Mod4
|
2018-05-29 00:21:53 +00:00
|
|
|
set $alt Mod1
|
2016-03-31 02:06:44 +00:00
|
|
|
floating_modifier $mod
|
|
|
|
|
2018-07-30 08:15:50 +00:00
|
|
|
font pango:sans 9
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# kill focused window
|
|
|
|
bindsym $mod+apostrophe kill
|
2018-05-29 00:21:53 +00:00
|
|
|
bindsym $alt+F4 kill
|
2016-03-31 02:06:44 +00:00
|
|
|
|
2016-08-03 16:09:30 +00:00
|
|
|
# change window focus
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+d focus left
|
|
|
|
bindsym $mod+h focus down
|
2018-10-20 12:37:04 +00:00
|
|
|
bindsym $mod+t focus up
|
|
|
|
bindsym $mod+n focus right
|
2016-08-03 16:09:30 +00:00
|
|
|
|
2016-03-31 02:06:44 +00:00
|
|
|
# move focused window
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+Shift+d move left
|
2018-10-20 12:37:04 +00:00
|
|
|
bindsym $mod+Shift+h move down
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+Shift+t move up
|
2018-10-20 12:37:04 +00:00
|
|
|
bindsym $mod+Shift+n move right
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# split in horizontal orientation
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+m split h
|
|
|
|
bindsym $mod+w split v
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# enter fullscreen mode for the focused container
|
2016-10-04 08:48:07 +00:00
|
|
|
bindsym $mod+Shift+f fullscreen toggle global
|
2016-03-31 02:06:44 +00:00
|
|
|
bindsym $mod+f fullscreen toggle
|
|
|
|
|
|
|
|
# change container layout (stacked, tabbed, toggle split)
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+p layout stacking
|
2016-03-31 02:06:44 +00:00
|
|
|
bindsym $mod+comma layout tabbed
|
|
|
|
bindsym $mod+period layout toggle split
|
|
|
|
|
|
|
|
# toggle tiling / floating
|
|
|
|
bindsym $mod+u floating toggle
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+e sticky toggle
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# focus the parent container
|
|
|
|
bindsym $mod+a focus parent
|
2016-10-12 14:03:09 +00:00
|
|
|
bindsym $mod+o focus child
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# Screen configs #
|
2017-10-25 12:44:10 +00:00
|
|
|
set $bl "DP-5"
|
|
|
|
set $tl "DP-1"
|
|
|
|
set $br "HDMI-0"
|
|
|
|
set $tr "DP-3"
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# Workspace -> Screen
|
2016-08-26 20:36:21 +00:00
|
|
|
workspace 1 output $bl
|
|
|
|
workspace 2 output $br
|
|
|
|
workspace 3 output $tl
|
|
|
|
workspace 4 output $tr
|
|
|
|
workspace 5 output $bl
|
|
|
|
workspace 6 output $br
|
|
|
|
workspace 7 output $tl
|
|
|
|
workspace 8 output $tr
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# switch to workspace
|
|
|
|
bindsym $mod+1 workspace 1
|
|
|
|
bindsym $mod+2 workspace 2
|
|
|
|
bindsym $mod+3 workspace 3
|
|
|
|
bindsym $mod+4 workspace 4
|
|
|
|
bindsym $mod+5 workspace 5
|
|
|
|
bindsym $mod+6 workspace 6
|
|
|
|
bindsym $mod+7 workspace 7
|
|
|
|
bindsym $mod+8 workspace 8
|
|
|
|
bindsym $mod+9 workspace 9
|
|
|
|
bindsym $mod+0 workspace 10
|
|
|
|
|
2016-08-03 16:09:30 +00:00
|
|
|
# move workspaces across screens
|
2018-05-29 00:21:53 +00:00
|
|
|
bindsym $mod+$alt+d move workspace to output left
|
|
|
|
bindsym $mod+$alt+n move workspace to output right
|
|
|
|
bindsym $mod+$alt+t move workspace to output up
|
|
|
|
bindsym $mod+$alt+h move workspace to output down
|
2016-08-03 16:09:30 +00:00
|
|
|
|
2016-03-31 02:06:44 +00:00
|
|
|
# move focused container to workspace
|
|
|
|
bindsym $mod+Shift+1 move container to workspace 1
|
|
|
|
bindsym $mod+Shift+2 move container to workspace 2
|
|
|
|
bindsym $mod+Shift+3 move container to workspace 3
|
|
|
|
bindsym $mod+Shift+4 move container to workspace 4
|
|
|
|
bindsym $mod+Shift+5 move container to workspace 5
|
|
|
|
bindsym $mod+Shift+6 move container to workspace 6
|
|
|
|
bindsym $mod+Shift+7 move container to workspace 7
|
|
|
|
bindsym $mod+Shift+8 move container to workspace 8
|
|
|
|
bindsym $mod+Shift+9 move container to workspace 9
|
|
|
|
bindsym $mod+Shift+0 move container to workspace 10
|
|
|
|
|
2016-10-12 14:03:55 +00:00
|
|
|
# opens logout/shutdown menu
|
2016-04-02 17:59:24 +00:00
|
|
|
bindsym $mod+Shift+Escape exec --no-startup-id ~/.config/i3/powermenu.sh
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
set $bg-color #2f343f
|
|
|
|
set $inactive-bg-color #2f343f
|
|
|
|
set $text-color #f3f4f5
|
|
|
|
set $inactive-text-color #676E7D
|
|
|
|
set $urgent-bg-color #E53935
|
|
|
|
|
|
|
|
# window colors
|
|
|
|
# border background text indicator
|
2016-04-01 11:47:30 +00:00
|
|
|
client.focused $bg-color $bg-color $text-color $bg-color
|
|
|
|
client.unfocused $inactive-bg-color $inactive-bg-color $inactive-text-color $bg-color
|
|
|
|
client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color $bg-color
|
|
|
|
client.urgent $urgent-bg-color $urgent-bg-color $text-color $bg-color
|
2016-03-31 02:06:44 +00:00
|
|
|
|
2016-08-03 16:08:38 +00:00
|
|
|
# Window rules
|
2017-08-24 13:52:09 +00:00
|
|
|
for_window [class="Pinentry"] floating enable
|
2016-09-12 09:19:31 +00:00
|
|
|
for_window [class="Pavucontrol"] floating enable
|
|
|
|
for_window [class="Blueman-manager"] floating enable
|
2020-03-22 11:10:14 +00:00
|
|
|
for_window [class="floating-term" instance="termite"] floating enable
|
|
|
|
for_window [class="Alacritty" instance="floating-term"] floating enable
|
2020-07-14 20:03:06 +00:00
|
|
|
for_window [class="^jetbrains-.+$" title="win0"] floating enable
|
2016-08-03 16:08:38 +00:00
|
|
|
for_window [window_role="floating-term"] floating enable
|
2020-09-08 20:53:57 +00:00
|
|
|
for_window [class="^Rofi$"] floating enable
|
2016-08-03 16:08:38 +00:00
|
|
|
|
2018-11-14 11:08:45 +00:00
|
|
|
new_window none
|
2016-04-19 15:43:25 +00:00
|
|
|
new_float none
|
|
|
|
|
2020-07-18 15:49:25 +00:00
|
|
|
gaps inner 24
|
2018-11-14 11:08:45 +00:00
|
|
|
gaps outer 4
|
2016-03-31 02:06:44 +00:00
|
|
|
|
2016-04-19 15:43:55 +00:00
|
|
|
focus_follows_mouse yes
|
2020-03-21 22:33:10 +00:00
|
|
|
popup_during_fullscreen smart
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# keybindings
|
2018-11-05 20:19:44 +00:00
|
|
|
bindsym $mod+Shift+j reload
|
2020-03-28 14:14:38 +00:00
|
|
|
bindsym --release $mod+x exec xkill
|
2020-03-22 12:33:26 +00:00
|
|
|
bindsym $mod+c exec notify-send "Try again" "You meant \\\$mod+b"
|
2020-08-18 11:49:31 +00:00
|
|
|
bindsym $mod+b exec systemd-run-i3 -n firefox
|
|
|
|
bindsym $mod+Return exec systemd-run-i3 -n alacritty
|
|
|
|
bindsym $mod+Ctrl+Return exec systemd-run-i3 -n alacritty --class floating
|
|
|
|
bindsym $mod+Shift+Return exec systemd-run-i3 -n alacritty --working-directory "$(xcwd)"
|
|
|
|
bindsym $mod+Ctrl+Shift+Return exec systemd-run-i3 -n alacritty --class floating --working-directory "$(xcwd)"
|
|
|
|
bindsym $mod+v exec systemd-run-i3 -n alacritty -e sh -c "($SHELL -c $EDITOR || :) && $SHELL"
|
|
|
|
bindsym $mod+Ctrl+v exec systemd-run-i3 -n alacritty --class floating -e sh -c "($SHELL -c $EDITOR || : ) && $SHELL"
|
2018-11-29 04:01:50 +00:00
|
|
|
bindsym $mod+l exec dm-tool switch-to-greeter
|
2020-08-18 11:49:31 +00:00
|
|
|
bindsym $mod+space exec "pkill rofi; rofi -show run -sidebar-mode -terminal i3-sensible-terminal -normal-window -run-command 'systemd-run-i3 -n {cmd}'"
|
2018-12-28 13:54:40 +00:00
|
|
|
bindsym $mod+Shift+p exec rofi-pass --root $(grep path ~/.config/gopass/config.yml | sed -E 's|^.*fs\+file://||g' | tr '\n' ':') | sed 's/:$//g'
|
2020-07-22 19:54:58 +00:00
|
|
|
bindsym $mod+Shift+e exec "pkill rofi; rofi -show emoji -modi emoji -normal-window"
|
2020-03-28 14:17:50 +00:00
|
|
|
bindsym $mod+Shift+i exec rofi-fontawesome
|
2022-10-26 22:03:13 +00:00
|
|
|
bindsym --release Print exec screenshot --clip
|
|
|
|
bindsym --release $mod+Print exec screenshot
|
2020-08-11 08:04:41 +00:00
|
|
|
bindsym --release Shift+Print exec screenshot --active
|
|
|
|
bindsym --release $mod+Shift+Print exec screenshot --active --clip
|
2020-08-18 11:49:31 +00:00
|
|
|
bindsym $mod+Shift+x exec systemd-run-i3 -n i3-sensible-terminal --class floating-term --hold -e /bin/echo "$(xprop -id $(xdotool getactivewindow))"
|
2020-08-19 12:43:31 +00:00
|
|
|
bindsym $mod+$alt+space exec systemd-run-i3 -s background -n ~/.config/i3/cycleaudio.py
|
2020-08-18 11:49:31 +00:00
|
|
|
bindsym $mod+numbersign exec systemd-run-i3 -n i3-sensible-terminal --hold -e sh -c 'xclip -o | gpg --decrypt 2>&1'
|
2020-08-10 19:26:49 +00:00
|
|
|
bindsym $mod+r exec bash -c 'pwgen -snc 32 1 | tee >(xargs notify-send Generated\ password\:) | xclip -i -r'
|
2023-01-01 14:59:37 +00:00
|
|
|
bindsym $mod+g exec systemd-run-i3 -n bash -xc 'xclip -o | gh gist create -d Paste - 2>&1 | grep -vE "^[-✓] Creat(ing|ed) gist" | tee >(xclip -i >&2 >/dev/null) | xargs -r notify-send -c transfer'
|
2021-11-23 11:04:38 +00:00
|
|
|
bindsym --release $mod+i exec systemd-run-i3 -s background -n sh -c 'sleep 0.5 && xdotool getactivewindow type --delay 10 -- "$(xclip -o -selection clipboard)"'
|
2021-11-23 11:05:34 +00:00
|
|
|
bindsym $mod+z exec otp | rofi -dmenu -p otp | xargs otp
|
2016-03-31 02:06:44 +00:00
|
|
|
|
|
|
|
# Media player controls
|
2018-12-02 06:17:49 +00:00
|
|
|
bindsym XF86AudioPlay exec --no-startup-id playerctl -a play-pause
|
|
|
|
bindsym XF86AudioPause exec --no-startup-id playerctl -a pause
|
|
|
|
bindsym XF86AudioStop exec --no-startup-id playerctl -a stop
|
|
|
|
bindsym XF86AudioNext exec --no-startup-id playerctl -a next
|
|
|
|
bindsym XF86AudioPrev exec --no-startup-id playerctl -a previous
|
2018-11-05 20:19:44 +00:00
|
|
|
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +1000
|
|
|
|
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -1000
|
|
|
|
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
|
2020-08-19 12:43:31 +00:00
|
|
|
bindsym XF86MonBrightnessUp exec light -A 5
|
|
|
|
bindsym XF86MonBrightnessDown exec light -U 5
|
2016-03-31 02:06:44 +00:00
|
|
|
|
2016-05-01 13:10:48 +00:00
|
|
|
# vim:ft=i3
|