# Danny's i3 config set $mod Mod4 # Default font font pango:Terminus 10 # Use Mouse+$mod to drag floating windows to their wanted position floating_modifier $mod bindsym $mod+Return exec i3-sensible-terminal bindsym $mod+Shift+q kill bindsym $mod+d exec --no-startup-id i3-dmenu-desktop # Focus windows bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # Move windows bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right # Disable window borders new_window none # Split horizontal/vertical bindsym $mod+h split h bindsym $mod+v split v # Fullscreen toggle bindsym $mod+f fullscreen toggle # change container layout (stacked, tabbed, toggle split) bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split # toggle tiling / floating bindsym $mod+Shift+space floating toggle # change focus between tiling / floating windows bindsym $mod+space focus mode_toggle # focus the parent container bindsym $mod+a focus parent # scratchpad stuffs bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show # 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+Control+1 workspace 11 bindsym $mod+Control+2 workspace 12 bindsym $mod+Control+3 workspace 13 bindsym $mod+Control+4 workspace 14 bindsym $mod+Control+5 workspace 15 bindsym $mod+Control+6 workspace 16 # 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+Shift+Control+1 move container to workspace 11 bindsym $mod+Shift+Control+2 move container to workspace 12 bindsym $mod+Shift+Control+3 move container to workspace 13 bindsym $mod+Shift+Control+4 move container to workspace 14 bindsym $mod+Shift+Control+5 move container to workspace 15 bindsym $mod+Shift+Control+6 move container to workspace 16 # reload the configuration file bindsym $mod+Shift+c reload # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) bindsym $mod+Shift+r restart # i3blocks bar { status_command i3blocks position top } # resize window (you can also use the mouse for that) set $mode_resize Resize window mode "$mode_resize" { bindsym h resize shrink width 10 px or 10 ppt bindsym j resize grow height 10 px or 10 ppt bindsym k resize shrink height 10 px or 10 ppt bindsym l resize grow width 10 px or 10 ppt bindsym Return mode "default" bindsym Escape mode "default" } # logout, lock screen, etc. set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown mode "$mode_system" { bindsym l exec --no-startup-id xautolock -locknow, mode "default" bindsym e exec --no-startup-id i3-msg exit, mode "default" bindsym s exec --no-startup-id xautolock -locknow && systemctl suspend, mode "default" bindsym h exec --no-startup-id xautolock -locknow && systemctl hibernate, mode "default" bindsym r exec --no-startup-id systemctl reboot, mode "default" bindsym Shift+s exec --no-startup-id systemctl poweroff -i, mode "default" bindsym Return mode "default" bindsym Escape mode "default" } # Volume bindsym $mod+Shift+greater exec --no-startup-id amixer sset Master 5%+ && pkill -RTMIN+10 i3blocks bindsym $mod+Shift+less exec --no-startup-id amixer sset Master 5%- && pkill -RTMIN+10 i3blocks bindsym $mod+Shift+m exec --no-startup-id amixer sset Master toggle && pkill -RTMIN+10 i3blocks bindsym $mod+Shift+t exec --no-startup-id amixer sset Front toggle && pkill -RTMIN+10 i3blocks bindsym XF86AudioRaiseVolume exec --no-startup-id amixer sset Master 5%+ && pkill -RTMIN+10 i3blocks bindsym XF86AudioLowerVolume exec --no-startup-id amixer sset Master 5%- && pkill -RTMIN+10 i3blocks bindsym XF86AudioMute exec --no-startup-id amixer sset Master toggle && pkill -RTMIN+10 i3blocks # Screen brightness bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 10% bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 10% # Screenshot bindsym --release $mod+Shift+Print exec --no-startup-id "scrot -s -F ss_%Y-%m-%d_$wx$h.png" # System menu bindsym $mod+Shift+s mode "$mode_system" # Resize bindsym $mod+r mode "$mode_resize" # Cycle focused workspace bindsym $mod+Tab workspace next bindsym $mod+Shift+Tab workspace prev # Rofi binds bindsym $mod+Shift+w exec --no-startup-id "rofi -show window" bindsym $mod+Shift+p exec --no-startup-id "rofi-pass" # Start helpful programs exec --no-startup-id nitrogen --restore & exec --no-startup-id xautolock -time 5 -locker "i3lock -c 000000" exec --no-startup-id picom -Ccb & exec --no-startup-id tilda & exec --no-startup-id dex -a & # Make some windows float for_window [window_role="pop-up"] floating enable for_window [window_role="task_dialog"] floating enable for_window [window_role="About"] floating enable for_window [class="^Pavucontrol$"] floating enable for_window [title="pinentry$"] floating enable for_window [title="Discord Updater$"] floating enable