2016-10-03 12:16:20 +03:00
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
2017-02-02 18:50:11 +02:00
set $i3_term default-terminal-emulator
2016-11-14 15:08:29 +02:00
set $i3_font -*-terminus-bold-*-*-*-14-*-*-*-*-*-iso10646-*
2017-01-09 13:29:21 +02:00
set $dmenu_font xos4 Terminus:Bold:pixelsize=14
2016-10-03 12:16:20 +03:00
2016-11-14 15:08:29 +02:00
font $i3_font
2016-10-03 12:16:20 +03:00
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
2016-12-06 13:28:07 +02:00
bindsym $mod+x exec $i3_term
2016-10-03 12:16:20 +03:00
# kill focused window
2016-10-03 19:38:17 +03:00
bindsym $mod+Shift+c kill
2016-10-03 12:16:20 +03:00
2017-12-18 12:59:59 +02:00
# workaround for firefox
bindsym Control+q exec /bin/true
2016-10-03 12:16:20 +03:00
# start dmenu (a program launcher)
2017-06-13 18:05:19 +03:00
bindsym $mod+s exec dmenu_displays -i -fn "$dmenu_font"
2016-11-17 19:00:15 +02:00
bindsym $mod+d exec dmenu_run -p run -i -fn "$dmenu_font"
2018-07-18 16:13:38 +03:00
bindsym $mod+p exec dmenu_ssh "$i3_term -e termcompat ssh" -i -fn "$dmenu_font"
2017-06-06 14:29:58 +03:00
bindsym $mod+u exec dmenu_pass -i -fn "$dmenu_font"
2017-01-10 16:47:30 +02:00
bindsym $mod+Tab exec rofi -show window
2016-10-03 12:16:20 +03:00
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l 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+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l 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+b split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
2016-10-03 13:56:19 +03:00
bindsym $mod+f fullscreen
2016-10-03 12:16:20 +03:00
# change container layout (stacked, tabbed, toggle split)
2017-06-13 17:52:54 +03:00
#bindsym $mod+s layout stacking
2016-10-03 12:16:20 +03:00
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
2016-10-03 13:56:19 +03:00
bindsym $mod+Shift+Return floating toggle
2016-10-03 12:16:20 +03:00
# change focus between tiling / floating windows
2016-10-03 13:56:19 +03:00
bindsym $mod+Return focus mode_toggle
2016-10-03 12:16:20 +03:00
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
2017-06-13 17:52:54 +03:00
bindsym $mod+Shift+a focus child
2016-10-03 12:16:20 +03:00
2016-10-03 12:47:29 +03:00
# move to another screen
bindsym $mod+Shift+o move workspace to output left
2016-10-03 12:16:20 +03:00
# 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
2016-10-04 14:42:26 +03:00
bindsym $mod+o workspace back_and_forth
2016-10-03 12:16:20 +03:00
# 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
# reload the configuration file
2016-10-03 19:38:17 +03:00
bindsym $mod+Shift+r reload
2016-10-03 12:16:20 +03:00
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
2016-10-04 13:53:32 +03:00
bindsym $mod+Control+r restart
2016-10-03 12:16:20 +03:00
# 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'"
# lock screen
2017-08-08 14:02:56 +03:00
bindsym $mod+z exec "xscreensaver-command -lock"
2017-03-17 12:00:48 +02:00
# toggle touchpad
bindsym XF86TouchpadToggle exec "touchpad-toggle"
bindsym XF86KbdBrightnessDown exec "keybrightness d"
bindsym XF86KbdBrightnessUp exec "keybrightness u"
2016-10-03 12:16:20 +03:00
# resize window (you can also use the mouse for that)
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 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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
bar {
position top
2016-10-23 02:33:58 +03:00
status_command /home/von/vdstatus/vdstatus
2016-10-03 12:16:20 +03:00
}
2016-10-20 10:40:37 +03:00
workspace_layout tabbed
2016-10-03 12:16:20 +03:00
new_window pixel 1
new_float pixel 1
hide_edge_borders both
2016-10-04 14:42:26 +03:00
workspace_auto_back_and_forth yes
2016-10-04 14:48:46 +03:00
force_focus_wrapping yes
2016-10-04 14:42:26 +03:00
2016-10-03 12:16:20 +03:00
# rules
2017-10-20 11:10:41 +03:00
# software
2018-06-22 20:05:04 +03:00
for_window [class="jetbrains-toolbox"] floating enable
2017-10-20 11:10:41 +03:00
for_window [class="Vpnui"] floating enable
for_window [class="Deadbeef"] floating enable
for_window [class="Google-musicmanager"] floating enable
for_window [class="mpv"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [class="pinentry"] floating enable
for_window [class="plugin-container"] floating enable
for_window [class="Qmmp"] floating enable
for_window [class="Vncviewer"] floating enable
2019-01-29 12:18:16 +02:00
for_window [class="X64"] floating enable
2017-10-20 11:10:41 +03:00
for_window [class="(?i)firefox" instance="^(?!Navigator$)"] floating enable
for_window [title="^Cacti - Realtime"] floating enable
for_window [instance="sun-awt-X11-XFramePeer" title="(?i)kvm"] floating enable
2016-10-04 03:10:26 +03:00
# games
2016-10-03 12:16:20 +03:00
for_window [class="Awesomenauts.bin.x86"] floating enable
for_window [class="Civ5XP"] floating enable
2017-10-20 11:10:41 +03:00
for_window [class="EoCApp"] floating enable
for_window [class="HitmanPro"] floating enable
for_window [class="Mojosetup"] floating enable
for_window [class="Pandora"] floating enable
for_window [class="Strife"] floating enable
for_window [class="Symphony.bin.x86_64"] floating enable
for_window [class="^Binding of Isaac"] floating enable
2016-10-03 12:16:20 +03:00
for_window [class="ck2"] floating enable
for_window [class="csgo_linux"] floating enable
for_window [class="deponia_tcj"] floating enable
for_window [class="dota_linux"] floating enable
for_window [class="game.x86_64"] floating enable
for_window [class="hl2_linux"] floating enable
2016-10-04 03:10:26 +03:00
for_window [class="jng_gold"] floating enable
2016-10-03 12:16:20 +03:00
for_window [class="witcher2"] floating enable
2016-10-04 03:10:26 +03:00
for_window [title="^GunsOfIcarusOnline$"] floating enable
for_window [title="^Hand of Fate$"] floating enable
for_window [title="^Serious Sam 3 - Linux$"] floating enable
2017-10-20 11:10:41 +03:00
# wine
2016-10-03 12:16:20 +03:00
for_window [instance="Steam.exe"] floating enable
for_window [instance="Civ4BeyondSword.exe"] floating enable
for_window [instance="KB.exe"] floating enable
for_window [instance="nwn2main.exe"] floating enable
2017-10-20 11:10:41 +03:00
# scratchpad
2017-05-19 19:42:34 +03:00
for_window [class="keepassxc"] move scratchpad, scratchpad show
2018-07-06 15:47:53 +03:00
for_window [title="^vimwiki$"] move scratchpad, scratchpad show
2017-06-13 17:52:54 +03:00
for_window [class="Vpnui"] move scratchpad, scratchpad show
2017-05-19 19:42:34 +03:00
bindsym $mod+i [class="keepassxc"] scratchpad show
2018-07-06 15:47:53 +03:00
bindsym $mod+n [title="^vimwiki$"] scratchpad show
2017-06-13 17:52:54 +03:00
bindsym $mod+y [class="Vpnui"] scratchpad show
2016-10-03 12:16:20 +03:00
# execs
exec --no-startup-id /home/von/.autostart
exec --no-startup-id xrdb /home/von/.Xresources