# This file has been auto-generated by i3-config-wizard(1). # It will not be overwritten, so edit it as you like. # # Should you change your keyboard layout some time, delete # this file and re-run i3-config-wizard(1). # # i3 config file (v4) # # Please see http://i3wm.org/docs/userguide.html for a complete reference! # Mod4 = Super key # Mod1 = Alt key set $mod Mod4 # Font for window titles. Will also be used by the bar unless a different font # is used in the bar {} block below. font pango:Droid Sans 8 # arch blue #1793D1 # debian red #D70A53 # manjaro green #8CBC65 # matrix green #00FF00 # mint green #5FAA24 # ubuntu orange #F37320 set $color #1793D1 # This font is widely installed, provides lots of unicode glyphs, right-to-left # text rendering and scalability on retina/hidpi displays (thanks to pango). # font pango:DejaVu Sans Mono 8 # Before i3 v4.8, we used to recommend this one as the default: # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 # The font above is very space-efficient, that is, it looks good, sharp and # clear in small sizes. However, its unicode glyph coverage is limited, the old # X core fonts rendering does not support right-to-left and this being a bitmap # font, it doesn’t scale on retina/hidpi displays. # Use Mouse+$mod to drag floating windows to their wanted position floating_modifier $mod # start a terminal bindsym $mod+Return exec --no-startup-id i3-sensible-terminal # kill focused window bindsym $mod+Shift+q kill # Back and forth workplace switching workspace_auto_back_and_forth yes bindsym $mod+c workspace back_and_forth bindsym $mod+x workspace next bindsym $mod+z workspace prev # Set window border to 1px # new_window 1pixel #-------------------------------------------------------------------------------- # Show the next scratchpad window or hide the focused scratchpad window. # If there are multiple scratchpad windows, this command cycles through them. # bindsym Mod1+minus scratchpad show #-------------------------------------------------------------------------------- # i3-gaps from https://github.com/Airblader/i3 # Disable window titlebars entirely for_window [class="^.*"] border pixel 3 # Set inner/outer gaps gaps inner 10 gaps outer 5 # Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size. # gaps inner|outer current|all set|plus|minus # gaps inner all set 10 # gaps outer all plus 5 # Smart gaps (gaps used if only more than one container on the workspace) # smart_gaps on # Smart borders (draw borders around container only if it is not the only container on this workspace) # on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0) smart_borders on # Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces. set $mode_gaps Gaps: (o) outer, (i) inner set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) bindsym $mod+Shift+g mode "$mode_gaps" mode "$mode_gaps" { bindsym o mode "$mode_gaps_outer" bindsym i mode "$mode_gaps_inner" bindsym Return mode "default" bindsym Escape mode "default" } mode "$mode_gaps_inner" { bindsym plus gaps inner current plus 5 bindsym minus gaps inner current minus 5 bindsym 0 gaps inner current set 0 bindsym Shift+plus gaps inner all plus 5 bindsym Shift+minus gaps inner all minus 5 bindsym Shift+0 gaps inner all set 0 bindsym Return mode "default" bindsym Escape mode "default" } mode "$mode_gaps_outer" { bindsym plus gaps outer current plus 5 bindsym minus gaps outer current minus 5 bindsym 0 gaps outer current set 0 bindsym Shift+plus gaps outer all plus 5 bindsym Shift+minus gaps outer all minus 5 bindsym Shift+0 gaps outer all set 0 bindsym Return mode "default" bindsym Escape mode "default" } #-------------------------------------------------------------------------------- # start j4-dmenu-desktop background text box color text in box # bindsym $mod+d exec --no-startup-id j4-dmenu-desktop --dmenu="dmenu -i -p 'Arch Linux' -fn '8x16' -nb '#222222' -nf '#DDDDDD' -sb '#1793D1' -sf '#FFFFFF'" bindsym $mod+d exec "dmenu_run -i -p 'Arch Linux' -nb '#222222' -nf '#888888' -sb '$color' -sf '#DDDDDD'" # There also is the (new) i3-dmenu-desktop which only displays applications # shipping a .desktop file. It is a wrapper around dmenu, so you need that # installed. # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop #-------------------------------------------------------------------------------- # change focus # bindsym $mod+j focus left # bindsym $mod+k focus down # bindsym $mod+l focus up # bindsym $mod+semicolon focus right # alternatively, you can use the cursor keys: bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # move focused window # bindsym $mod+Shift+j move left # bindsym $mod+Shift+k move down # bindsym $mod+Shift+l move up # bindsym $mod+Shift+semicolon move right # alternatively, you can use the cursor keys: bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right # split in horizontal orientation bindsym $mod+h split h # split in vertical orientation bindsym $mod+v split v # enter fullscreen mode for the focused container 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 # focus the child container # bindsym $mod+d focus child #-------------------------------------------------------------------------------- # Rename workspace with i3-input using numbers and text bindsym $mod+n exec i3-input -F 'rename workspace to "%s"' -P 'New name for this workspace: ' # Name the workspaces set $tag1 "1 urxvt" set $tag2 "2 thunar" set $tag3 "3 geany" set $tag4 "4 firefox" # switch to workspace bindsym $mod+1 workspace $tag1 bindsym $mod+2 workspace $tag2 bindsym $mod+3 workspace $tag3 bindsym $mod+4 workspace $tag4 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 # move focused container to workspace bindsym $mod+Shift+1 move container to workspace $tag1 bindsym $mod+Shift+2 move container to workspace $tag2 bindsym $mod+Shift+3 move container to workspace $tag3 bindsym $mod+Shift+4 move container to workspace $tag4 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 # browser pop-ups for_window [window_role="pop-up"] floating enable;border normal for_window [window_role="task_dialog"] floating enable;border normal #-------------------------------------------------------------------------------- # 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 # exit i3 (logs you out of your X session) # 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'" #-------------------------------------------------------------------------------- # resize window (you can also use the mouse for that) mode "resize" { # These bindings trigger as soon as you enter the resize mode # Pressing left will shrink the window’s width. # Pressing right will grow the window’s width. # Pressing up will shrink the window’s height. # Pressing down will grow the window’s height. bindsym j resize shrink width 10 px or 10 ppt bindsym k resize grow height 10 px or 10 ppt bindsym l resize shrink height 10 px or 10 ppt bindsym semicolon resize grow width 10 px or 10 ppt # same bindings, but for the arrow keys bindsym Left resize shrink width 10 px or 10 ppt bindsym Down resize grow height 10 px or 10 ppt bindsym Up resize shrink height 10 px or 10 ppt bindsym Right resize grow width 10 px or 10 ppt # back to normal: Enter or Escape bindsym Return mode "default" bindsym Escape mode "default" } bindsym $mod+r mode "resize" #-------------------------------------------------------------------------------- # Start i3bar to display a workspace bar with information bar { height 16 tray_output primary position top # strip_workspace_numbers yes # mode hide colors { background #222222 separator #222222 statusline #dddddd focused_workspace $color $color #ffffff active_workspace #333333 #333333 #888888 inactive_workspace #333333 #333333 #888888 urgent_workspace #900000 #900000 #ffffff } # status_command $HOME/.i3/conky-i3bar status_command i3status -c $HOME/.i3/i3status.conf } #-------------------------------------------------------------------------------- # class border backgr. text client.focused $color $color #dddddd client.focused_inactive #333333 #333333 #888888 client.unfocused #333333 #333333 #888888 client.urgent #900000 #900000 #ffffff #-------------------------------------------------------------------------------- # Startup programs exec --no-startup-id "devmon --no-gui" exec --no-startup-id /usr/bin/compton --config ~/.i3/compton.conf exec --no-startup-id feh --bg-fill ~/Pictures/login_background/bg.png #-------------------------------------------------------------------------------- # Custom KeyBinds bindsym $mod+Shift+w exec --no-startup-id firefox bindsym $mod+Shift+f exec --no-startup-id thunar bindsym $mod+Shift+t exec --no-startup-id i3-sensible-terminal bindsym $mod+Shift+e exec --no-startup-id geany bindsym $mod+Shift+m exec --no-startup-id ~/bin/startup_minecraft.sh bindsym $mod+Shift+x exec --no-startup-id lxappearance bindsym $mod+Shift+p exec --no-startup-id xfce4-screenshooter bindsym $mod+Shift+z exec --no-startup-id android-file-transfer bindsym $mod+Shift+i exec --no-startup-id urxvt -name mocp -e mocp bindsym $mod+Shift+o exec --no-startup-id urxvt -name ranger -e ranger bindsym $mod+Shift+u exec --no-startup-id urxvt -name tty-clock -e tty-clock -C 2 -c for_window [class="minecraft"] floating enable for_window [class="Lxappearance"] floating enable for_window [class="Transmission-gtk"] floating enable for_window [class="Xfce4-screenshooter"] floating enable for_window [class="Android-file-transfer"] floating enable for_window [class="Vlc"] floating enable #-------------------------------------------------------------------------------- # Multimedia Keys # Alsamixer bindsym $mod+k exec amixer -q set Master 5%+ unmute bindsym $mod+j exec amixer -q set Master 5%- unmute bindsym $mod+m exec amixer -q set Master mute #-------------------------------------------------------------------------------- # Shutdown, Reboot, Lock Screen, and Logout #657b83 set $sysmenu "system: [P]oweroff re[B]oot [L]ock logou[T] " bindsym $mod+Shift+Return mode $sysmenu mode $sysmenu { bindsym p exec shutdown -P now bindsym b exec shutdown -r now bindsym l exec sh ~/.i3/i3lock.sh, mode "default" bindsym t exec --no-startup-id i3-msg exit, mode "default" bindsym Return mode "default" bindsym Escape mode "default" } #-------------------------------------------------------------------------------- #