# set modifier set $super Mod4 set $alt Mod1 # set font font pango: Noto Sans 8 # Use Mouse+$super to drag floating windows to their wanted position floating_modifier $super #autostart exec_always --no-startup-id hsetroot -cover ~/Pictures/wallpaper/wallhaven-39gogv.jpg exec --no-startup-id xsettingsd & exec --no-startup-id compton -b exec --no-startup-id ibus-daemon & exec --no-startup-id spotify # start a terminal bindsym $super+Return exec i3-sensible-terminal # start dmenu (a program launcher) bindsym $super+Shift+d exec i3-dmenu-desktop --dmenu="dmenu -i -fn 'Noto Sans:size=8'" bindsym $super+d exec rofi -lines 12 -padding 18 -width 60 -location 0 -show drun -sidebar-mode -columns 3 -font 'Noto Sans 8' # common apps keybinds bindsym Print exec scrot 'Cheese_%a-%d%b%y_%H.%M.png' -e 'viewnior ~/$f' bindsym $super+l exec i3lock -i ~/.wallpaper.png bindsym $super+Shift+w exec firefox bindsym $super+Shift+f exec thunar;workspace 3;focus #bindsym $super+Shift+g exec geany #change volume # bindsym XF86AudioRaiseVolume exec amixer -q set Master # bindsym XF86AudioLowerVolume exec amixer -q set Master 5%- # bindsym XF86AudioMute exec amixer set Master toggle bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 1 +5% bindsym XF86AudioLowerVolume exec pactl set-sink-volume 1 -5% bindsym XF86AudioMute exec pactl set-sink-mute 1 toggle # music control #bindsym XF86AudioNext exec mpc next #bindsym XF86AudioPrev exec mpc prev #bindsym XF86AudioPlay exec mpc toggle #bindsym XF86AudioStop exec mpc stop bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86AudioPlay exec playerctl play-pause mode "media" { bindsym Up exec pactl set-sink-volume 1 +5% bindsym Down exec pactl set-sink-volume 1 -5% bindsym Right exec playerctl next bindsym Left exec playerctl previous bindsym space exec playerctl play-pause bindsym Return mode "default" } bindsym $super+m mode "media" # brightness control bindsym XF86MonBrightnessUp exec xbacklight -inc 10 bindsym XF86MonBrightnessDown exec xbacklight -dec 10 # kill focused window bindsym $super+c kill # bindsym $alt+F4 kill # change focus bindsym $super+Left focus left bindsym $super+Down focus down bindsym $super+Up focus up bindsym $super+Right focus right # move focused window bindsym $super+Shift+Left move left bindsym $super+Shift+Down move down bindsym $super+Shift+Up move up bindsym $super+Shift+Right move right # split in horizontal orientation bindsym $super+h split h # split in vertical orientation bindsym $super+v split v # enter fullscreen mode for the focused container bindsym $super+f fullscreen toggle # change container layout split bindsym $super+s layout toggle split # toggle tiling / floating bindsym $super+space floating toggle # change focus between tiling / floating windows bindsym $super+Shift+space focus mode_toggle # switch to workspace bindsym $alt+Control+Right workspace next bindsym $alt+Control+Left workspace prev set $workspace1 "1: Terminal" set $workspace2 "2: " set $workspace3 "3: " set $workspace4 "4: Editor" set $workspace9 "9: Music" bindsym $super+1 workspace $workspace1 bindsym $super+2 workspace $workspace2 bindsym $super+3 workspace $workspace3 bindsym $super+4 workspace $workspace4 bindsym $super+5 workspace 5 bindsym $super+6 workspace 6 bindsym $super+7 workspace 7 bindsym $super+8 workspace 8 bindsym $super+9 workspace $workspace9 # move focused container to workspace bindsym $super+Shift+1 move container to workspace $workspace1 bindsym $super+Shift+2 move container to workspace $workspace2 bindsym $super+Shift+3 move container to workspace $workspace3 bindsym $super+Shift+4 move container to workspace $workspace4 bindsym $super+Shift+5 move container to workspace 5 bindsym $super+Shift+6 move container to workspace 6 bindsym $super+Shift+7 move container to workspace 7 bindsym $super+Shift+8 move container to workspace 8 bindsym $super+Shift+9 move container to workspace $workspace9 # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) bindsym $super+Shift+r restart # exit i3 bindsym $super+q exec "i3-nagbar -t warning -m 'Really, exit?' -b 'Yes' 'i3-msg exit'" # resize window (you can also use the mouse for that) mode "resize" { bindsym Left resize shrink width 5 px or 5 ppt bindsym Down resize grow height 5 px or 5 ppt bindsym Up resize shrink height 5 px or 5 ppt bindsym Right resize grow width 5 px or 5 ppt bindsym Return mode "default" } bindsym $super+r mode "resize" # panel bar { colors { background #2f343f statusline #2f343f separator #4b5262 # colour of border, background, and text focused_workspace #2f343f #bf616a #d8dee8 active_workspace #2f343f #2f343f #d8dee8 inactive_workspace #2f343f #2f343f #d8dee8 urgent_workspacei #2f343f #ebcb8b #2f343f } status_command i3status } # window rules, you can find the window class using xprop for_window [class=".*"] border pixel 4 assign [class=URxvt] $workspace1 assign [class=Firefox|Transmission-gtk] $workspace2 assign [class=Thunar|File-roller] $workspace3 assign [class=Code|Geany|Evince|Gucharmap|Soffice|libreoffice*] $workspace4 assign [class=Audacity|Vlc|mpv|Ghb|Xfburn|Gimp*|Inkscape] 5 assign [class=Lxappearance|System-config-printer.py|Lxtask|GParted|Pavucontrol|Exo-helper*|Lxrandr|Arandr] 6 assign [class=Spotify] $workspace9 for_window [class=Viewnior|feh|Audacious|File-roller|Lxappearance|Lxtask|Pavucontrol] floating enable for_window [class=URxvt|Firefox|Geany|Evince|Soffice|libreoffice*|mpv|Ghb|Xfburn|Gimp*|Inkscape|Vlc|Lxappearance|Audacity] focus for_window [class=Xfburn|GParted|System-config-printer.py|Lxtask|Pavucontrol|Exo-helper*|Lxrandr|Arandr] focus # colour of border, background, text, indicator, and child_border client.focused #bf616a #2f343f #d8dee8 #bf616a #d8dee8 client.focused_inactive #2f343f #2f343f #d8dee8 #2f343f #2f343f client.unfocused #2f343f #2f343f #d8dee8 #2f343f #2f343f client.urgent #2f343f #2f343f #d8dee8 #2f343f #2f343f client.placeholder #2f343f #2f343f #d8dee8 #2f343f #2f343f client.background #2f343f