# General settings set $mod Mod4 floating_modifier $mod font pango:DejaVu Sans, pango:Noto Color Emoji 12 focus_follows_mouse no # Compositor exec picom # Autolock exec xautolock -time 10 -locker 'i3lock -d' -corners 000- -cornersize 30 bindsym $mod+Control+Shift+l exec xautolock -locknow # Assignments assign [class="Firefox"] 1 assign [class="thunderbird"] 2 assign [class="Zotero"] 3 # Menus bindsym $mod+d exec dmenu_run -i -fn 'DejaVu Sans' bindsym $mod+p exec passmenu -i -l 20 -fn 'DejaVu Sans' bindsym $mod+Shift+S exec suspend-menu # kill focused window bindsym $mod+Shift+Q kill # Programs bindsym $mod+Return exec urxvt bindsym $mod+Shift+v exec urxvt -e vim bindsym $mod+Shift+m exec urxvt -e cmus for_window [class="URxvt" instance="floating-large"] floating toggle resize set 1200 800 # Super+i is the settings icon on my Lenovo Yoga bindsym $mod+i exec urxvt -name floating-large -e htop bindsym $mod+Shift+i exec urxvt -name floating-large -e sudo htop for_window [class="URxvt" instance="floating-small"] floating toggle resize set 600 400 bindsym XF86Calculator exec urxvt -name floating-small -e python3 # Special keys bindsym Print exec scrot -z '/tmp/%Y-%m-%d-%H%M%S_$wx$h.png' bindsym Shift+Print exec scrot -z -u '/tmp/%Y-%m-%d-%H%M%S_$wx$h.png' bindsym --release Control+Print exec scrot -z -s '/tmp/%Y-%m-%d-%H%M%S_$wx$h.png' bindsym XF86AudioMute exec amixer sset Master toggle && kill -s 10 `pidof i3status` bindsym XF86AudioRaiseVolume exec amixer sset Master 1%+ && kill -s 10 `pidof i3status` bindsym XF86AudioLowerVolume exec amixer sset Master 1%- && kill -s 10 `pidof i3status` bindsym XF86MonBrightnessUp exec bash -c 'echo "$(($(cat /sys/class/backlight/amdgpu_bl0/brightness)+10))" > /sys/class/backlight/amdgpu_bl0/brightness' bindsym XF86MonBrightnessDown exec bash -c 'echo "$(($(cat /sys/class/backlight/amdgpu_bl0/brightness)-10))" > /sys/class/backlight/amdgpu_bl0/brightness' bindsym Shift+XF86MonBrightnessUp exec bash -c 'echo 255 > /sys/class/backlight/amdgpu_bl0/brightness' bindsym Shift+XF86MonBrightnessDown exec bash -c 'echo 1 > /sys/class/backlight/amdgpu_bl0/brightness' bindsym Ctrl+XF86MonBrightnessUp exec night-light increase bindsym Ctrl+XF86MonBrightnessDown exec night-light decrease bindsym Ctrl+Shift+XF86MonBrightnessUp exec night-light day bindsym Ctrl+Shift+XF86MonBrightnessDown exec night-light night bindsym $mod+F7 exec toggle-dp bindsym $mod+Shift+F7 exec toggle-dp-brightness # change focus bindsym $mod+j focus left bindsym $mod+k focus down bindsym $mod+l focus up bindsym $mod+semicolon focus right # between tiling/floating bindsym $mod+space focus mode_toggle # to parent bindsym $mod+a focus parent # move focused window bindsym $mod+Shift+J move left bindsym $mod+Shift+K move down bindsym $mod+Shift+L move up bindsym $mod+Shift+colon move right # move workspaces to monitors bindsym $mod+Up move workspace to output up bindsym $mod+Down move workspace to output up # splits bindsym $mod+h split h bindsym $mod+v split v # change container layout / fullscreen / floating-tiling bindsym $mod+f fullscreen bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split bindsym $mod+Shift+space floating toggle # 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 bindsym $mod+n exec --no-startup-id newws # 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 bindsym $mod+r mode "resize" mode "resize" { bindsym j resize shrink width 1 px or 1 ppt bindsym k resize grow height 1 px or 1 ppt bindsym l resize shrink height 1 px or 1 ppt bindsym semicolon resize grow width 1 px or 1 ppt bindsym Shift+j resize shrink width 5 px or 5 ppt bindsym Shift+k resize grow height 5 px or 5 ppt bindsym Shift+l resize shrink height 5 px or 5 ppt bindsym Shift+semicolon resize grow width 5 px or 5 ppt # back to normal bindsym Return mode "default" bindsym Escape mode "default" bindsym $mod+r mode "default" } bar { output primary font pango:DejaVu Sans, pango:Note Color Emoji 16 status_command i3status.py tray_output primary } bar { output nonprimary font pango:DejaVu Sans, pango:Note Color Emoji 10 status_command cat - tray_output none mode hide }