diff --git a/.i3/config b/.i3/config index 22b3af8..977bfb1 100755 --- a/.i3/config +++ b/.i3/config @@ -93,24 +93,30 @@ bindsym $mod+a focus parent # focus the parent container bindsym $mod+p exec xrandr-toggle # manage workspaces -set $WS1 "1 web" +set $WS1 "1 ☀" +# http://unicode-table.com/en/2328/ KEYBOARD set $WS2 "2 emacs" set $WS3 "3 term" -set $WS4 "4 mail" +# http://unicode-table.com/en/234C/ +set $WS4 "4 ⍌" set $WS5 "5 IDE" +set $WS8 "8 pass" set $WS9 "9 misc" assign [class="^Iceweasel$"] $WS1 -assign [class="^emacs$"] $WS2 +assign [class=".*emacs.*"] $WS2 assign [class="^Eclipse$"] $WS5 +assign [class=".*\ -\ Oracle\ VM\ Virtualbox$"] $WS5 assign [class="^Icedove$"] $WS4 +assign [class=".*KeePass.*"] $WS8 -workspace $WS1 output VGA1 -workspace $WS2 output VGA1 -workspace $WS3 output LVDS1 -workspace $WS4 output LVDS1 -workspace $WS5 output VGA1 -workspace $WS9 output LVDS1 +workspace $WS1 output VGA-1 +workspace $WS2 output VGA-1 +workspace $WS3 output LVDS-1 +workspace $WS4 output LVDS-1 +workspace $WS5 output VGA-1 +workspace $WS8 output LVDS-1 +workspace $WS9 output LVDS-1 # switch to workspace bindsym $mod+1 workspace $WS1 @@ -120,7 +126,7 @@ bindsym $mod+4 workspace $WS4 bindsym $mod+5 workspace $WS5 bindsym $mod+6 workspace 6 bindsym $mod+7 workspace 7 -bindsym $mod+8 workspace 8 +bindsym $mod+8 workspace $WS8 bindsym $mod+9 workspace $WS9 bindsym $mod+0 workspace 10 @@ -132,18 +138,16 @@ bindsym $mod+Shift+4 move container to workspace $WS4 bindsym $mod+Shift+5 move container to workspace $WS5 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+8 move container to workspace $WS8 bindsym $mod+Shift+9 move container to workspace $WS9 bindsym $mod+Shift+0 move container to workspace 10 - # audio controls bindsym XF86AudioRaiseVolume exec amixer set Master 5+ #increase sound volume bindsym XF86AudioLowerVolume exec amixer set Master 5- #decrease sound volume bindsym XF86AudioMute exec amixer set Master 1+ toggle # mute sound bindsym XF86AudioMicMute exec amixer set Capture toggle # mute mic - # reload the configuration file bindsym $mod+Shift+c reload # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) @@ -153,26 +157,26 @@ bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcu # resize window (you can also use the mouse for that) mode "resize" { - # These bindings trigger as soon as you enter the resize mode + # 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 i 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 + # 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 i 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 - # 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 + # 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" + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" } bindsym $mod+r mode "resize" @@ -180,7 +184,27 @@ bindsym $mod+r mode "resize" # Start i3bar to display a workspace bar (plus the system information i3status # finds out, if available) bar { - status_command i3status --config ~/.i3/status.conf + + # i3blocks: http://kumarcode.com/Colorful-i3/ + # font pango:Source Sans Pro-10 10 + # status_command i3blocks -c ~/.i3/i3blocks.conf + # colors { + # separator #268bd2 + # background #002b36 + # statusline #839496 + # focused_workspace #fdf6e3 #6c71c4 #fdf6e3 + # active_workspace #fdf6e3 #6c71c4 #fdf6e3 + # inactive_workspace #002b36 #586e75 #002b36 + # urgent_workspace #d33682 #d33682 #fdf6e3 + # } + output LVDS-1 + status_command i3status --config ~/.i3/status.conf +} + +bar { + output VGA-1 + output DP-1 + status_command i3status --config ~/.i3/status_small.conf } # auto run commands @@ -198,4 +222,6 @@ exec --no-startup-id xrandr --output LVDS1 --left-of VGA1 --auto exec --no-startup-id xrandr --output VGA1 --auto exec --no-startup-id i3-msg 'workspace $WS1; exec iceweasel;' exec --no-startup-id i3-msg 'workspace $WS2; exec emacs24' -exec --no-startup-id i3-msg 'workspace $WS3; exec i3-sensible-terminal; exec i3-sensible-terminal' +exec --no-startup-id i3-msg 'workspace $WS3; exec urxvt; exec urxvt' +exec --no-startup-id i3-msg 'workspace $WS8; exec keepass2' +exec --no-startup-id i3-msg 'workspace $WS9; exec urxvt;' diff --git a/.i3/status.conf b/.i3/status.conf index 8038132..c126f57 100755 --- a/.i3/status.conf +++ b/.i3/status.conf @@ -32,6 +32,7 @@ wireless wlan0 { format_up = "W: (%quality at %essid) %ip" format_down = "W: down" } + wireless wlp3s0 { format_up = "W: (%quality at %essid) %ip" format_down = "W: down" @@ -45,7 +46,7 @@ ethernet eth0 { battery 0 { format = "%status %percentage %remaining" - format_down = "No battery" + format_down = "∞ PLUG" status_chr = "⚇ CHR" status_bat = "⚡ BAT" status_full = "☻ FULL" @@ -97,7 +98,7 @@ disk "/home" { volume master { format = "♪: %volume" - format_muted = "♪: muted (%volume)" + format_muted = "♮: %volume" device = "default" mixer = "Master" mixer_idx = 0 diff --git a/.i3/status_small.conf b/.i3/status_small.conf new file mode 100755 index 0000000..34d2ad8 --- /dev/null +++ b/.i3/status_small.conf @@ -0,0 +1,72 @@ +# i3status configuration file. +# see "man i3status" for documentation. + +# It is important that this file is edited as UTF-8. +# The following line should contain a sharp s: +# ß +# If the above line is not correctly displayed, fix your editor first! + +general { + colors = true + interval = 15 +} + +order += "run_watch Docker" +order += "run_watch DHCP" +order += "path_exists VPN" +order += "wireless wlp3s0" +order += "ethernet eth0" +order += "volume master" +order += "battery 0" +order += "load" +order += "tztime local" + +battery 0 { + format = "%status %percentage %remaining" + format_down = "∞ PLUG" + status_chr = "⚇ CHR" + status_bat = "⚡ BAT" + status_full = "☻ FULL" + path = "/sys/class/power_supply/BAT%d/uevent" + low_threshold = 10 +} + + +wireless wlp3s0 { + format_up = "W: %essid (%quality)" + format_down = "W: down" +} + +ethernet eth0 { + # if you use %speed, i3status requires root privileges + format_up = "E: up" + format_down = "E: down" +} + +run_watch Docker { + pidfile = "/run/docker.pid" +} + +run_watch DHCP { + pidfile = "/var/run/dhclient*.pid" +} + +path_exists VPN { + path = "/proc/sys/net/ipv4/conf/tun0" +} + +tztime local { + format = "DE %Y-%m-%d %a %H:%M:%S" +} + +load { + format = "%1min" +} + +volume master { + format = "♪: %volume" + format_muted = "♮: %volume" + device = "default" + mixer = "Master" + mixer_idx = 0 +}