Skip to content

Instantly share code, notes, and snippets.

@fgui
Last active October 16, 2015 08:08
Show Gist options
  • Save fgui/6be0987a07ca035c7e40 to your computer and use it in GitHub Desktop.
Save fgui/6be0987a07ca035c7e40 to your computer and use it in GitHub Desktop.
i3wm config
# config i3
# 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 somewhen, 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!
set $mod Mod4
# font for window titles. ISO 10646 = Unicode
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
font pango:Ubuntu Mono 11
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+Q kill
# start dmenu (a program launcher)
bindsym $mod+F2 exec dmenu_run
bindsym $mod+F3 exec i3-dmenu-desktop
bindsym $mod+s exec synapse
bindsym $mod+c exec --no-startup-id unity-control-center
bindsym $mod+Ctrl+8 exec --no-startup-id google-chrome
bindsym $mod+Ctrl+1 exec --no-startup-id password-gorilla
bindsym $mod+Ctrl+5 exec --no-startup-id nautilus
bindsym $mod+Ctrl+0 exec --no-startup-id eclipse.sh
bindsym $mod+Ctrl+9 exec --no-startup-id emacs
# bindsym $mod+Ctrl+s exec --no-startup-id (i3lock -c 333333 && sleep 1 && systemctl suspend)
bindsym $mod+Ctrl+s exec --no-startup-id systemctl suspend
# bindsym $mod+Ctrl+k exec --no-startup-id xmodmap /home/francesc/.Xmodmap
#lock
bindsym $mod+l exec i3lock
# change focus
bindsym $mod+n focus left
bindsym $mod+e focus down
bindsym $mod+i focus up
bindsym $mod+o 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+N move left
bindsym $mod+Shift+E move down
bindsym $mod+Shift+I move up
bindsym $mod+Shift+O 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+t fullscreen
# change container layout (stacked, tabbed, default)
bindsym $mod+r layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+f layout default
# 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
#bindcode $mod+d focus child
# switch to workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2/team
bindsym $mod+3 workspace 3/skype
bindsym $mod+4 workspace 4/vm
bindsym $mod+5 workspace 5/files
bindsym $mod+6 workspace 6/shell
bindsym $mod+7 workspace 7/lightTable
bindsym $mod+8 workspace 8/www
bindsym $mod+9 workspace 9/emacs
bindsym $mod+0 workspace 10/eclipse
# move focused container to workspace
bindsym $mod+Shift+exclam move workspace 1
bindsym $mod+Shift+at move workspace 2/team
bindsym $mod+Shift+numbersign move workspace 3/skype
bindsym $mod+Shift+dollar move workspace 4/vm
bindsym $mod+Shift+percent move workspace 5/files
bindsym $mod+Shift+asciicircum move workspace 6/shell
bindsym $mod+Shift+ampersand move workspace 7/lightTable
bindsym $mod+Shift+asterisk move workspace 8/www
bindsym $mod+Shift+parenleft move workspace 9/emacs
bindsym $mod+Shift+parenright move workspace 10/eclipse
# 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+P restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+F exit
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# They resize the border in the direction you pressed, e.g.
# when pressing left, the window is resized so that it has
# more space on its left
bindsym n resize shrink left 10 px or 10 ppt
bindsym Shift+N resize grow left 10 px or 10 ppt
bindsym e resize shrink down 10 px or 10 ppt
bindsym Shift+E resize grow down 10 px or 10 ppt
bindsym i resize shrink up 10 px or 10 ppt
bindsym Shift+I resize grow up 10 px or 10 ppt
bindsym o resize shrink right 10 px or 10 ppt
bindsym Shift+O resize grow right 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink left 10 px or 10 ppt
bindsym Shift+Left resize grow left 10 px or 10 ppt
bindsym Down resize shrink down 10 px or 10 ppt
bindsym Shift+Down resize grow down 10 px or 10 ppt
bindsym Up resize shrink up 10 px or 10 ppt
bindsym Shift+Up resize grow up 10 px or 10 ppt
bindsym Right resize shrink right 10 px or 10 ppt
bindsym Shift+Right resize grow right 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+p mode "resize"
bindsym $mod+m move workspace to output right
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
mode hide
position top
#font pango:DejaVu Sans Mono 11
font pango:Ubuntu 11
colors {
#statusline #666666
#background #FFA500
}
}
exec --no-startup-id unity-settings-daemon
exec --no-startup-id nm-applet
exec --no-startup-id volumeicon
# exec --no-startup-id gnome-sound-applet
# exec --no-startup-id gnome-settings-daemon
exec --no-startup-id dropbox start
# exec --no-startup-id insync start
# elevation of privilegies window.
exec /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
assign[class="TeamViewer"] 2/team
assign[class="Skype"] 3/skype
assign[class="Emacs"] 9/emacs
assign[class="Eclipse"] 10/eclipse
assign[class="Gnome-terminal"] 6/shell
assign[class="Google-chrome"] 8/www
assign[class="Chromium-browser"] 8/www
assign[class="Firefox"] 8/www
#####
## start the basics that do not take to much juice.
## start browser and emacs
#####
# exec --no-startup-id i3-msg 'workspace 8/www; exec firefox'
exec --no-startup-id i3-msg 'workspace 9/emacs; exec /usr/bin/emacs'
# exec --no-startup-id i3-msg 'workspace 6/shell; exec /usr/bin/gnome-terminal'
# exec --no-startup-id i3-msg 'workspace 5/files; exec nemo --no-desktop'
# exec --no-startup-id (sleep 3 && xmodmap /home/francesc/.Xmodmap)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment