aboutsummaryrefslogtreecommitdiff
path: root/.i3
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <msabate@suse.com>2019-08-22 18:30:24 +0200
committerMiquel Sabaté Solà <msabate@suse.com>2019-08-22 18:30:24 +0200
commit4ead9be4468d8d58c027bf6e6616e3b4d6e727eb (patch)
tree18ab19fd5213c9d302b165eafa46a6f1f8902e75 /.i3
parent04f4a7df197ce327f36b666869a1ca2f09934e58 (diff)
downloaddotfiles-4ead9be4468d8d58c027bf6e6616e3b4d6e727eb.tar.gz
dotfiles-4ead9be4468d8d58c027bf6e6616e3b4d6e727eb.zip
Complete re-structuring so it's easier to install
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
Diffstat (limited to '.i3')
-rw-r--r--.i3/config244
1 files changed, 244 insertions, 0 deletions
diff --git a/.i3/config b/.i3/config
new file mode 100644
index 0000000..b2915ae
--- /dev/null
+++ b/.i3/config
@@ -0,0 +1,244 @@
+# Largely based on https://github.com/flavio/dotfiles.
+
+# i3 config file (v4)
+#
+# Please see http://i3wm.org/docs/userguide.html for a complete reference!
+
+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. ISO 10646 = Unicode
+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, if you need a lot of unicode glyphs or
+# right-to-left text rendering, you should instead use pango for rendering and
+# chose a FreeType font, such as:
+font pango:DejaVu Sans Mono 10
+
+#class border backgr. text indicator
+client.focused #888888 #dddddd #222222 #2e9ef4
+client.focused_inactive #333333 #555555 #bbbbbb #484e50
+client.unfocused #333333 #333333 #888888 #292d2e
+client.urgent #2f343a #900000 #ffffff #900000
+
+
+# Use Mouse+$mod to drag floating windows to their wanted position
+floating_modifier $mod
+
+# start a terminal
+bindsym $mod+Return exec konsole
+
+# kill focused window
+bindsym $mod+Shift+q kill
+
+# Start dmenu (a program launcher)
+bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
+
+# Change focus
+bindsym $mod+Up focus up
+bindsym $mod+Down focus down
+bindsym $mod+Left focus left
+bindsym $mod+Right focus right
+bindsym $mod+j focus left
+bindsym $mod+k focus right
+
+# Move focused window
+bindsym $mod+Shift+Up move up
+bindsym $mod+Shift+Down move down
+bindsym $mod+Shift+Left move left
+bindsym $mod+Shift+Right move right
+bindsym $mod+Shift+j move left
+bindsym $mod+Shift+k 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
+
+# Cool lock. Thanks franky!
+bindsym $mod+l exec xlock -mode eyes
+
+# 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
+
+# Go 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
+
+# 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
+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"
+
+# Get volume keys working
+bindsym XF86AudioRaiseVolume exec amixer -q set Master 5%+ unmute
+bindsym XF86AudioLowerVolume exec amixer -q set Master 5%- unmute
+bindsym XF86AudioMute exec amixer -q set Master toggle
+
+# Back & Forth support + $mod+z shortcut.
+workspace_auto_back_and_forth yes
+bindsym $mod+z workspace back_and_forth
+bindsym $mod+Shift+z move container to workspace back_and_forth; workspace back_and_forth
+
+# Disallow the mouse from changing the focus. I prefer to be explicit with the
+# mouse and click to get focus if I'm using it.
+focus_follows_mouse no
+
+# Bindings for specific applications.
+bindsym $mod+Shift+f [class="Firefox"] focus
+bindsym $mod+Shift+t [class="Tor"] focus
+
+# Scrot
+bindsym Print exec scrot -u
+
+# Toggle keyboard layout US <-> CAT
+bindsym $mod+F1 exec ~/bin/toggle-keyboard-layout.sh
+
+# Emacs. By default we go with daemon mode, but if something is wrong, it's
+# cool to have a safe way to start Emacs.
+bindsym $mod+m exec emacsclient -c -a ""
+bindsym $mod+Shift+m exec emacs
+
+# Start i3bar to display a workspace bar (plus the system information i3status
+# finds out, if available). This setup has DP-1 as the monitor on the right,
+# and DVI-I-1 as the monitor on the left. The tray will only be shown to the
+# right.
+bar {
+ output DP-1
+ position top
+ status_command i3status
+ workspace_buttons yes
+ tray_output DP-1
+
+ colors {
+ separator #666666
+ background #333333
+ statusline #bbbbbb
+ focused_workspace #888888 #dddddd #222222
+ active_workspace #333333 #555555 #bbbbbb
+ inactive_workspace #333333 #555555 #bbbbbb
+ urgent_workspace #2f343a #900000 #ffffff
+ }
+}
+
+bar {
+ output DVI-I-1
+ position top
+ status_command i3status
+ workspace_buttons yes
+ tray_output DP-1
+
+ colors {
+ separator #666666
+ background #333333
+ statusline #bbbbbb
+ focused_workspace #888888 #dddddd #222222
+ active_workspace #333333 #555555 #bbbbbb
+ inactive_workspace #333333 #555555 #bbbbbb
+ urgent_workspace #2f343a #900000 #ffffff
+ }
+}
+
+# NOTE: If you are using a laptop, use this bar config.
+#bar {
+#position top
+#status_command i3status
+#workspace_buttons yes
+#tray_output eDP1
+#
+#colors {
+#separator #666666
+#background #333333
+#statusline #bbbbbb
+#focused_workspace #888888 #dddddd #222222
+#active_workspace #333333 #555555 #bbbbbb
+#inactive_workspace #333333 #555555 #bbbbbb
+#urgent_workspace #2f343a #900000 #ffffff
+#}
+#}
+
+# Start dunst notification manager at boot
+exec --no-startup-id dunst
+
+# Proper configuration of multi monitor
+# NOTE: remove this if you are using a laptop.
+exec --no-startup-id xrandr --output DP-1 --right-of DVI-I-1
+
+# Disable system bell
+exec --no-startup-id xset b off
+
+# Disable screensaver and power saving feature: they may crash on Tumbleweed.
+exec --no-startup-id xset -dpms
+exec --no-startup-id xset s off
+
+# Network manager
+# NOTE: uncomment this if you are in a laptop
+# exec --no-startup-id nm-applet
+
+# Wallpaper
+exec --no-startup-id nitrogen --restore