From e39a2344ba9629f35958a9e7bea8f3f536e521f4 Mon Sep 17 00:00:00 2001 From: Max Christian Pohle Date: Sat, 25 Aug 2018 00:20:38 +0200 Subject: base16 .Xresources compatible colors and more improved shortcuts and window borders --- config | 342 ++++++++++++++++++++++++++++++++++++++++++---------------- i3status.conf | 71 +++++++----- 2 files changed, 295 insertions(+), 118 deletions(-) diff --git a/config b/config index aa35d87..e79bc77 100644 --- a/config +++ b/config @@ -9,7 +9,7 @@ # # Please see http://i3wm.org/docs/userguide.html for a complete reference! -fake-outputs 3840x1080+0+0 +# fake-outputs 3840x1080+0+0 set $mod Mod4 # Font for window titles. Will also be used by the bar unless a different font @@ -22,7 +22,19 @@ set $mod Mod4 # font pango:Source Code Pro SemiBold 9 # font pango:Liberation Sans Mono Bold 11 # font pango:DejaVu Sans Bold 9 -font pango:Roboto Nerd Font Bold 9 +# font pango:Roboto Nerd Font Bold 8 +# font pango:FuraCode Nerd Font Mono Retina 9 +# font pango:Monoid Nerd Font Mono Retina 9 +# font pango:Hasklug Nerd Font 9 +# font pango:Roboto Nerd Font Bold 8 +# font pango:3270Narrow Nerd Font 10 +# font pango:mplus nerd font 9 +# font pango:dejavu sans nerd font 9 +# font pango:Anonymice Nerd Font 9 +#font pango:Inconsolata Nerd Font 9 +font pango:Code New Roman Nerd Font 9 +# font pango:ProFont IIx Nerd Font 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 @@ -37,13 +49,16 @@ floating_modifier $mod # start a terminal # bindsym $mod+Return exec i3-sensible-terminal -bindsym $mod+Return exec xfce4-appfinder +bindsym $mod+Return exec --no-startup-id xfce4-appfinder bindsym Mod1+F2 exec --no-startup-id rofi -show run -bg #222222 -fg #888888 -hlbg #285577 -hlfg #ffffff -bindsym $mod+t exec xfce4-terminal +bindsym $mod+t exec --no-startup-id xfce4-terminal # bindsym $mod+t exec termite # bindsym $mod+t exec urxvt -bindsym $mod+e exec thunar -bindsym $mod+l exec i3lock +bindsym $mod+e exec --no-startup-id thunar +bindsym $mod+l exec --no-startup-id ~/.local/bin/i3lock -f -i "/home/max/.local/share/backgrounds/IMG_5656 - IMG_5684-02.png" +bindsym $mod+F10 exec pactl set-sink-mute 0 toggle +bindsym $mod+F11 exec pactl set-sink-volume 0 -5% +bindsym $mod+F12 exec pactl set-sink-volume 0 +5% # kill focused window bindsym $mod+Shift+q kill @@ -60,13 +75,16 @@ bindsym $mod+d exec --no-startup-id i3-dmenu-desktop # alternatively, you can use the cursor keys: -bindsym $mod+Left focus left ; exec pkill -SIGRTMIN+11 i3blocks -bindsym $mod+Down focus down ; exec pkill -SIGRTMIN+11 i3blocks -bindsym $mod+Up focus up ; exec pkill -SIGRTMIN+11 i3blocks -bindsym $mod+Right focus right ; exec pkill -SIGRTMIN+11 i3blocks +# exec pkill -SIGRTMIN+11 i3blocks +bindsym $mod+Left focus left +bindsym $mod+Right focus right +bindsym $mod+Down focus down +bindsym $mod+Up focus up -bindsym Mod1+Tab focus right -bindsym Mod1+Shift+Tab focus left +bindsym $mod+Tab focus output right +bindsym $mod+Shift+Tab focus output left +bindsym mod1+Tab focus right +bindsym mod1+Shift+Tab focus left # alternatively, you can use the cursor keys: @@ -83,11 +101,13 @@ bindsym $mod+Shift+Right move right ; exec pkill -SIGRTMIN+11 i3blocks # enter fullscreen mode for the focused container bindsym $mod+f fullscreen toggle +bindsym $mod+g fullscreen toggle global # change container layout (stacked, tabbed, toggle split) bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+q layout toggle split +bindsym $mod+x layout toggle all # toggle tiling / floating bindsym $mod+Shift+space floating toggle @@ -104,29 +124,67 @@ bindsym $mod+a focus parent workspace 1 output VGA1 workspace_layout tabbed +# customize workspace names +set $WS1 1:❶ +set $WS2 2:❷ +set $WS3 3:❸ +set $WS4 4:❹ +set $WS5 5:❺ +set $WS6 6:❻ +set $WS7 7:❼ +set $WS8 8:❽ +set $WS9 9:❾ +set $WS10 10:⓿ + + # 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 music -bindsym $mod+0 workspace background +bindsym Mod4+1 workspace $WS1 +bindsym Mod4+2 workspace $WS2 +bindsym Mod4+3 workspace $WS3 +bindsym Mod4+4 workspace $WS4 +bindsym Mod4+5 workspace $WS5 +bindsym Mod4+6 workspace $WS6 +bindsym Mod4+7 workspace $WS7 +bindsym Mod4+8 workspace $WS8 +bindsym Mod4+9 workspace $WS9 +bindsym Mod4+0 workspace $WS10 # 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 music -bindsym $mod+Shift+0 move container to workspace background +bindsym Mod4+Shift+1 move container to workspace $WS1 +bindsym Mod4+Shift+2 move container to workspace $WS2 +bindsym Mod4+Shift+3 move container to workspace $WS3 +bindsym Mod4+Shift+4 move container to workspace $WS4 +bindsym Mod4+Shift+5 move container to workspace $WS5 +bindsym Mod4+Shift+6 move container to workspace $WS6 +bindsym Mod4+Shift+7 move container to workspace $WS7 +bindsym Mod4+Shift+8 move container to workspace $WS8 +bindsym Mod4+Shift+9 move container to workspace $WS9 +bindsym Mod4+Shift+0 move container to workspace $WS10 + + +# # switch to workspace +# bindsym $mod+1 workspace number 1 +# bindsym $mod+2 workspace number 2 +# bindsym $mod+3 workspace number 3 +# bindsym $mod+4 workspace number 4 +# bindsym $mod+5 workspace number 5 +# bindsym $mod+6 workspace number 6 +# bindsym $mod+7 workspace number 7 +# bindsym $mod+8 workspace number 8 +# bindsym $mod+9 workspace number 9 +# bindsym $mod+0 workspace number 0 +# # +# # # move focused container to workspace +# bindsym $mod+Shift+1 move container to workspace number 1 +# bindsym $mod+Shift+2 move container to workspace number 2 +# bindsym $mod+Shift+3 move container to workspace number 3 +# bindsym $mod+Shift+4 move container to workspace number 4 +# bindsym $mod+Shift+5 move container to workspace number 5 +# bindsym $mod+Shift+6 move container to workspace number 6 +# bindsym $mod+Shift+7 move container to workspace number 7 +# bindsym $mod+Shift+8 move container to workspace number 8 +# bindsym $mod+Shift+9 move container to workspace number 9 +# bindsym $mod+Shift+0 move container to workspace number 0 # Pulse Audio controls bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume @@ -156,69 +214,72 @@ bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcu bindsym $mod+m move scratchpad bindsym $mod+Shift+m scratchpad show ; resize set 1920 920 ; move position center -for_window [class="^.*"] border normal 2 -for_window [title="^.*Thunderbird"] border pixel 0 -for_window [title="^.*Chromium"] border pixel 0 -for_window [class="Gvim"] border pixel 0 -# for_window [title="^.*\|"] border pixel 4 -for_window [title="^HexChat.*"] border pixel 0 -for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks -for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks -for_window [title="cairo-dock"] floating enable ; border none -for_window[class="Plank"] floating enable,move absolute center - -for_window [class=".*"] title_format "┋ %title" +# for_window [class="^.*"] border normal 3 +# for_window [title="^.*Thunderbird"] border pixel 0 +# for_window [title="^.*Chromium"] border pixel 0 +# for_window [class="Gvim"] border pixel 0 +# for_window [class="(?i)xfce4-terminal"] border pixel 0 +# for_window [class="(?i)xfce4-appfinder"] border pixel 0 +# # for_window [title="^.*\|"] border pixel 4 +# for_window [title="^HexChat.*"] border pixel 0 +# for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks +# for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks +# for_window [title="cairo-dock"] floating enable ; border none +# for_window[class="Plank"] floating enable,move absolute center + +# for_window [class=".*"] title_format "┋ %title" + # for_window [con_id="__focused__"] title_format "%title" -# hide_edge_borders both +hide_edge_borders both # smart_borders on # gaps inner 5 # gaps outer 5 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 ~/.config/i3/i3status.conf - # status_command i3blocks - colors { - # background #2a3448 - # statusline #ffffff - background #ffffff - statusline #6060af - focused_workspace #6060af #ffffff #6060af - active_workspace #6060af #ffffff #888888 - inactive_workspace #ffffff #ffffff #888888 - urgent_workspace #2f343a #900000 #ffffff - binding_mode #2f343a #900000 #ffffff - } - # tray_output VGA1 - # output HDMI1 - # tray_output HDMI1 - tray_padding 2 - #font pango:DejaVu Sans Mono 11 - #font pango:DejaVu Sans Mono 11 - #font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 - # font pango:DejaVu Sans Mono, Icons 8 - # font pango:DejaVu Sans Mono, Awesome 8 - # separator_symbol "┋" - separator_symbol "│" - position bottom - # output VGA1 - binding_mode_indicator yes - # strip_workspace_numbers yes -} +# # Start i3bar to display a workspace bar (plus the system information i3status +# # finds out, if available) +# bar { +# status_command i3status --config ~/.config/i3/i3status.conf +# # status_command i3blocks +# colors { +# # background #2a3448 +# # statusline #ffffff +# background #ffffff +# statusline #6060af +# focused_workspace #6060af #ffffff #6060af +# active_workspace #6060af #ffffff #888888 +# inactive_workspace #ffffff #ffffff #888888 +# urgent_workspace #2f343a #900000 #ffffff +# binding_mode #2f343a #900000 #ffffff +# } +# # tray_output VGA1 +# # output HDMI1 +# # tray_output HDMI1 +# tray_padding 2 +# #font pango:DejaVu Sans Mono 11 +# #font pango:DejaVu Sans Mono 11 +# #font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 +# # font pango:DejaVu Sans Mono, Icons 8 +# # font pango:DejaVu Sans Mono, Awesome 8 +# # separator_symbol "┋" +# separator_symbol "│" +# position bottom +# # output VGA1 +# binding_mode_indicator yes +# # strip_workspace_numbers yes +# } # client.focused #ffffff #061229 #ffffff #5299BF #ffffff # client.unfocused #000000 #061229 #ffffff #ff0000 #000000 -#colors: border backgr. text indicator +#colors: border backgr. text indicator -client.focused #ffffff #ffffff #000000 #000000 -client.focused_inactive #ffffff #ffffff #888888 #ffffff -client.unfocused #ffffff #ffffff #888888 #ffffff -client.urgent #2a3448 #900000 #5299bf #ffffff -client.background #000000 #000000 #000000 #ffffff +client.focused #ffffff #000000 #ffffff #ffff00 +client.focused_inactive #ffffff #000000 #888888 #ffff00 +client.unfocused #ffffff #000000 #444444 #ffff00 +client.urgent #2a3448 #900000 #5299bf #ffff00 +client.background #000000 #000000 #0000ff #ffff00 bindsym $mod+F2 exec i3-input -F 'rename workspace to "%s"' -P 'New name: ' @@ -266,16 +327,16 @@ mode "resize" { # 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 $mod+h resize shrink width 1 px or 1 ppt + bindsym $mod+h resize shrink width 4 px or 4 ppt bindsym $mod+j resize grow height 4 px or 4 ppt bindsym $mod+k resize shrink height 4 px or 4 ppt - bindsym $mod+l resize grow width 1 px or 1 ppt + bindsym $mod+l resize grow width 4 px or 4 ppt # same bindings, but for the arrow keys - bindsym Left resize shrink width 1 px or 1 ppt + bindsym Left resize shrink width 4 px or 4 ppt bindsym Up resize grow height 4 px or 4 ppt bindsym Down resize shrink height 4 px or 4 ppt - bindsym Right resize grow width 1 px or 1 ppt + bindsym Right resize grow width 4 px or 4 ppt # back to normal: Enter or Escape bindsym Return mode "default" @@ -288,13 +349,13 @@ mode "resize" { assign [class="^Thunderbird$"] → background -exec --no-startup-id setxkbmap -option caps:escape -exec --no-startup-id xset r rate 330 40 -exec --no-startup-id dbus-launch gnome-settings-daemon -exec --no-startup-id dbus-launch nm-applet +# exec --no-startup-id /usr/lib/gnome-settings-daemon/gnome-settings-daemon +exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=secrets +exec dbus-launch gnome-settings-daemon +exec dbus-launch nm-applet # exec xrandr --output HDMI1 --fb 3270x1080 --scale 1.05468x1.05468 # exec xrandr --output HDMI1 --fb 3270x1080 --right-of VGA1 --panning 1350x1080+1920+0 --scale 1.05468x1.05468 @@ -308,6 +369,105 @@ exec --no-startup-id dbus-launch setsid udiskie -2 -s exec --no-startup-id dbus-launch setsid pidgin exec --no-startup-id dbus-launch setsid hexchat # exec --no-startup-id dbus-launch nextcloud +# exec --no-startup-id /usr/lib/gnome-settings-daemon/gnome-settings-daemon +exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=secrets +exec dbus-launch gnome-settings-daemon +exec dbus-launch nm-applet + +# exec xrandr --output HDMI1 --fb 3270x1080 --scale 1.05468x1.05468 +# exec xrandr --output HDMI1 --fb 3270x1080 --right-of VGA1 --panning 1350x1080+1920+0 --scale 1.05468x1.05468 +# exec xrandr --output DVI-D-1-0 --right-of VGA-1 +# exec xrandr --output DVI-D-1-0 --auto --right-of VGA-1 +# exec /usr/bin/xrandr-reset.sh +# exec xrandr --auto --output HDMI-1-1 --right-of DVI-I-2 +exec xrandr --output HDMI-1 --right-of VGA-1 + +# start compositor... +exec nitrogen --restore +exec compton -b --config ~/.config/i3/compton.conf +# exec dbus-launch setsid udiskie -2 -s +exec setsid hexchat --minimize=2 + + + +exec setxkbmap -option caps:escape +exec xset r rate 330 40 +exec xinput --set-prop 'Xornet gaming mouse' 'libinput Accel Speed' 0.1 + + + +# ============================================== +# base16 Xressource depenend color configuration +# with default values from base16-tomorrow-night +# ============================================== + +# load xrdb +exec xrdb ~/.Xresources + +# main variables variable Xressource default +set_from_resource $base00 base16.color0 #1d1f21 +set_from_resource $base01 base16.color10 #282a2e +set_from_resource $base02 base16.color11 #373b41 +set_from_resource $base03 base16.color8 #969896 +set_from_resource $base04 base16.color12 #b4b7b4 +set_from_resource $base05 base16.color7 #c5c8c6 +set_from_resource $base06 base16.color13 #e0e0e0 +set_from_resource $base07 base16.color15 #ffffff +set_from_resource $base08 base16.color1 #cc6666 +set_from_resource $base09 base16.color9 #de935f +set_from_resource $base0A base16.color3 #f0c674 +set_from_resource $base0B base16.color2 #b5bd68 +set_from_resource $base0C base16.color6 #8abeb7 +set_from_resource $base0D base16.color4 #81a2be +set_from_resource $base0E base16.color5 #b294bb +set_from_resource $base0F base16.color14 #a3685a +# derived vars... variable Xressource default +set_from_resource $background base16.background $base00 +set_from_resource $foreground base16.foreground $base05 +set_from_resource $foreground base16.cursor $base05 + +# Basic bar configuration using the Base16 variables. +bar { + # status_command i3status + # status_command i3status --config ~/.config/i3/i3status.conf + # status_command conky -c ~/.config/i3/conki3rc + status_command /home/max/src/i3status/i3status --config ~/.config/i3/i3status.conf + + tray_padding 2 + mode dock + strip_workspace_numbers yes + separator_symbol "│" + + colors { + background $background + separator $base01 + statusline $base04 + + # Border Bg Text + # focused_workspace $base05 $base0D $base00 + # active_workspace $base05 $base03 $base00 + # inactive_workspace $base03 $base01 $base05 + # urgent_workspace $base08 $base08 $base00 + # binding_mode $base00 $base0A $base00 + + focused_workspace $background $background $base05 + active_workspace $background $background $base05 + inactive_workspace $background $background $base03 + urgent_workspace $background $background $base08 + binding_mode $background $background $base00 + } +} + +# Basic color configuration using the Base16 variables for windows and borders. +# Property Name Border BG Text Indicator Child Border +client.focused $base05 $base0D $base00 $base0D $base0D +client.focused_inactive $base01 $base01 $base05 $base03 $base01 +client.unfocused $base01 $base00 $base05 $base01 $base01 +client.urgent $base08 $base08 $base00 $base08 $base08 +client.placeholder $base00 $base00 $base05 $base00 $base00 +client.background $base07 + + # vim: iskeyword+=\$,\-,\# nospell diff --git a/i3status.conf b/i3status.conf index aeee8ee..127af25 100644 --- a/i3status.conf +++ b/i3status.conf @@ -10,11 +10,11 @@ general { colors = true #color_good = "#88ff88" #color_bad = "#880000" - color_good = "#00aa00" - color_bad = "#aa0000" - color_degraded = "#aaaaaa" + color_good = "#ffffff" + color_bad = "#666666" interval = 1 output_format = i3bar + separator = 'X' } order += "ipv6" @@ -25,12 +25,14 @@ order += "run_watch DHCP" order += "ethernet _first_" order += "ethernet enp7s0" # order += "battery 0" -order += "volume master" order += "cpu_temperature 1" order += "cpu_usage" -order += "load" +order += "cpu_temperature 2" +# order += "load" order += "disk /" -order += "tztime local" +order += "volume master" +order += "tztime localdate" +order += "tztime localtime" ipv6 { @@ -39,68 +41,83 @@ ipv6 cpu_temperature 1 { - format = "%degrees°C" + format = " %degrees°C " path = "/sys/class/thermal/thermal_zone2/temp" } +cpu_temperature 2 +{ + format = " %degrees°C" + path = "/sys/class/drm/card0/device/hwmon/hwmon1/temp1_input" +} + wireless _first_ { format_up = "W: (%quality at %essid) %ip" format_down = "W: down" } ethernet _first_ { + # if you use %speed, i3status requires root privileges - format_up = " %ip (%speed)" - format_down = "E1: down" + format_up = " %interface %ip (%speed)" + format_down = " %interface" } -# ethernet enp7s0 { -# # if you use %speed, i3status requires root privileges -# format_up = "E2: %ip (%speed)" -# format_down = "E2: down" -# -# } +ethernet enp7s0 { + # if you use %speed, i3status requires root privileges + format_up = " %interface %ip (%speed)" + format_down = " %interface" +} battery 0 { format = "%status %percentage %remaining" } -# run_watch DHCP { -# pidfile = "/var/run/dhclient*.pid" -# format = "%title" -# } +run_watch DHCP { + pidfile = "/var/run/dhclient*.pid" + format = "%title" + format_down = "" +} path_exists VPN { # path exists when a VPN tunnel launched by nmcli/nm-applet is active path = "/proc/sys/net/ipv4/conf/tun0" - format_down = "" + separator = false + separator_block_width = 8 + format = " " + format_down = " " } run_watch VPN { pidfile = "/var/run/NetworkManager/nm-openvpn-*" } -tztime local { - format = "%Y-%m-%d %H:%M" +tztime localtime { + format = " %H:%M" } -load { - format = "%5min" +tztime localdate { + format = " %Y-%m-%d:%A" } +# load { +# format = "%5min" +# } + disk "/" { - format = "%avail" + format = " %avail" + prefix_type = custom } volume master { - format = "♪: %volume" + format = " %volume" format_muted = "♪: muted (%volume)" device = "pulse:0" } cpu_usage { - format = "%usage" + format = " %usage" } -- cgit v1.2.3