set $mod Mod4 font pango:monospace 8 focus_follows_mouse no floating_modifier $mod # KDE overrides https://userbase.kde.org/Tutorials/Using_Other_Window_Managers_with_Plasma#Configure_i3 for_window [title="Desktop — Plasma"] kill; floating enable; border none for_window [class="plasmashell"] floating enable; for_window [class="Plasma"] floating enable; border none for_window [title="plasma-desktop"] floating enable; border none for_window [title="win7"] floating enable; border none for_window [class="krunner"] floating enable; border none for_window [class="Kmix"] floating enable; border none for_window [class="Klipper"] floating enable; border none for_window [class="Plasmoidviewer"] floating enable; border none for_window [class="(?i)*nextcloud*"] floating disable for_window [class="plasmashell" window_type="notification"] floating enable, border none, move right 700px, move down 450px no_focus [class="plasmashell" window_type="notification"] # i3 shortcuts bindsym $mod+Shift+r restart bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" # Media Controls set $playerctl playerctl -i firefox # ignore firefox when doing media control bindsym XF86AudioRaiseVolume exec --no-startup-id pactl -- set-sink-volume @DEFAULT_SINK@ +2% #increase sound volume bindsym XF86AudioLowerVolume exec --no-startup-id pactl -- set-sink-volume @DEFAULT_SINK@ -2% #decrease sound volume bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle # mute sound bindsym XF86AudioPause exec $aplayerctl play-pause bindsym XF86AudioNext exec $aplayerctl next bindsym XF86AudioPrev exec $aplayerctl previous bindsym $mod+Shift+XF86AudioMute exec --no-startup-id amixer set Capture toggle && amixer get Capture | grep '\[off\]' && notify-send "🎙 MIC OFF" || notify-send "🎙 MIC ON" # mute mic # Some of my devices don't have full media controls bindsym $mod+XF86AudioMute exec $aplayerctl play-pause bindsym $mod+XF86AudioRaiseVolume exec $aplayerctl next bindsym $mod+XF86AudioLowerVolume exec $aplayerctl previous # Brightness bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl s +5% bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl s 5%- # Colour Temperature bindsym $mod+F11 exec --no-startup-id redshift -ox bindsym $mod+F12 exec --no-startup-id redshift -O 3000 # Applications bindsym $mod+l exec --no-startup-id {{ home }}/.config/i3/lock.sh && sleep 1 bindsym $mod+Shift+l exec --no-startup-id pranklock bindsym $mod+K exec --no-startup-id bitwarden bindsym $mod+d exec --no-startup-id rofi -show drun -sidebar-mode bindsym $mod+Tab exec --no-startup-id rofi -show window bindsym $mod+c exec --no-startup-id rofi -show calc -modi calc -no-show-match -no-sort bindsym $mod+Return exec alacritty bindsym $mod+n exec --no-startup-id nautilus bindsym $mod+Shift+g exec --no-startup-id nvim-qt bindsym Control+Shift+Escape exec --no-startup-id gnome-system-monitor bindsym Control+Q exec --no-startup-id /bin/false bindsym $mod+Shift+Delete exec --no-startup-id rofi-powermenu bindcode 124 exec --no-startup-id rofi-powermenu bindsym XF86Eject exec --no-startup-id rofi-powermenu bindsym $mod+P exec --no-startup-id rofi-screenlayout bindsym $mod+Shift+c exec --no-startup-id vscode-project-list bindsym $mod+period exec --no-startup-id rofimoji --action clipboard --no-frecency --files emojis emoticons math symbols_for_legacy_computing bindsym $mod+Shift+w exec --no-startup-id website-link # Notifications bindsym $mod+m exec --no-startup-id dunstctl close bindsym $mod+Shift+m exec --no-startup-id dunstctl close-all bindsym $mod+Shift+comma exec --no-startup-id dunstctl history-pop bindsym $mod+Shift+period exec --no-startup-id dunstctl context # Screenshots bindsym Print exec --no-startup-id flameshot gui bindsym XF86LaunchB exec --no-startup-id flameshot gui bindsym Shift+Print exec --no-startup-id flameshot screen -c bindsym Shift+XF86LaunchB exec --no-startup-id flameshot screen -c bindsym $mod+Print exec --no-startup-id flameshot-upload bindsym $mod+XF86LaunchB exec --no-startup-id flameshot-upload bindsym $mod+Shift+q kill # Focus bindsym $mod+a focus parent bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # Movement bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right # Layout bindsym $mod+v split v bindsym $mod+f fullscreen toggle bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split bindsym $mod+Shift+space floating toggle bindsym $mod+space focus mode_toggle # Workspaces {% for i in range(1, 10) %} bindsym $mod+{{ i }} workspace {{ i }} bindsym $mod+Shift+{{ i }} move container to workspace {{ i }} {% endfor %} bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show # Resize set $resize_increment 5 mode "resize" { bindsym Left resize shrink width $resize_increment px or $resize_increment ppt bindsym Down resize grow height $resize_increment px or $resize_increment ppt bindsym Up resize shrink height $resize_increment px or $resize_increment ppt bindsym Right resize grow width $resize_increment px or $resize_increment ppt bindsym Escape mode "default" } bindsym $mod+r mode "resize" # Gaps mode "gaps" { bindsym b border pixel 2 bindsym Shift+b border normal bindsym Up gaps inner all plus 5 bindsym Down gaps inner all minus 5 bindsym Left gaps outer all minus 5 bindsym Right gaps outer all plus 5 bindsym Escape mode "default" } bindsym $mod+g mode "gaps" # Autostart exec /usr/lib/polkit-1/polkitd --no-debug exec picom --dbus --xrender-sync-fence exec ssh-agent -Da /tmp/ssh-agent-$USER.sock exec bitwarden exec dunst exec xfce4-power-manager --no-daemon exec_always --no-startup-id {{ home }}/.config/polybar/launch.sh exec_always /usr/bin/ibus-daemon -drx exec dex -as ~/.config/autostart