25 Commits 6703969bae ... 4a489346ea

Author SHA1 Message Date
  demure 4a489346ea Updated conf with new options, and username field for new import. 1 year ago
  demure 4eda35b4cd Added json cli awk like program. 1 year ago
  demure f32dd7e00a Cleaned up mode name, and mode/binding sections. 1 year ago
  demure ea4ab83b22 Decreased reload delay. Added notify-screen. 1 year ago
  demure 81f2a6f2f8 Removed old ref to old account. 1 year ago
  demure 9fb5acac26 Added prompt handling for git detached head. 1 year ago
  demure 858ba15939 Added mpv profiles, and a podcast profile. 1 year ago
  demure 14720a40a3 Changed up mp3 macros. Now have Cap macro for tsp open. 1 year ago
  demure 81746274e8 Added shortened hostname to PS1 on secondary hosts. 1 year ago
  demure 4078205c39 Fixed oversight in setting last macro binding. 1 year ago
  demure 17ce337c48 Add xz decompress match to extract function. 1 year ago
  demure bf0b6a1853 Corrected wrong element from pasting and lazyness. 1 year ago
  demure 3b7f93cb88 Cleaned up more variables to becalled in a ${}. 1 year ago
  demure 177fec7d0e Guess what, did one more refactor on my git prompt... not using porcelain v2. 1 year ago
  demure 213243874c Stepped back, and used the right command for the right job. 1 year ago
  demure e122d40810 Added calendar icon for future use. Added commented out better ram icon, wasn't supported yet. Tweaked window icon. 1 year ago
  demure 42beb57dea Modified charge/drain time to show hour/min indicator, and drop seconds. 1 year ago
  demure ec32455a85 Added RSS section, made section background colors a bit easier to change, broke off gpg into on section. 1 year ago
  demure 18ed7efdcc re-re-factored git prompt. Now should be posix... 1 year ago
  demure 708d77c4c5 Updated regex to still match brach when there are no commits yet, presumably fixing bug reported by tukusejssirs. 1 year ago
  demure ca659c405e Cleaned up pipe trains to be succinct greps. Cleaned up $vars to be ${vars} 1 year ago
  demure b2fe1ec37f Desided my top level vim fold was a bit rediculous. Minor edits. 1 year ago
  demure 9b2f19566c Added listen alias. 1 year ago
  demure a8f0326d97 Merge branch 'git_branch_name' of tukusejssirs/dotfiles into master 1 year ago
  tukusejssirs 5fbd2b6d2c Fix displaying branch names with numbers, hyphens and underscores 1 year ago
10 changed files with 406 additions and 308 deletions
  1. 1 0
      README.md
  2. 56 15
      config/rofi-pass/config
  3. 234 228
      i3/config
  4. 3 1
      i3/lemonbar/README.md
  5. 20 3
      i3/lemonbar/i3_lemonbar.sh
  6. 31 20
      i3/lemonbar/i3_lemonbar_config
  7. 45 35
      i3/lemonbar/i3_lemonbar_parser.sh
  8. 16 5
      mpv/mpv.conf
  9. 0 1
      mutt/muttrc
  10. 0 0
      newsboat/config

+ 1 - 0
README.md

@@ -68,6 +68,7 @@ stow -t ~ laptop  ## gui programs
 * Added mutt with multiple accounts, using offlineimap, not-much, and msmtp **25AUG2015**  
 * Moved to i3 window manager, and set up a sweet lemonbar **30JAN2016**  
 * Got around to updating stow dir to reflect current software. (still needs some work) **16NOV2018**  
+* Spent a lot of time refactory my prompt command's git **14MAR2019**
 
 ### Plans: ###
 

+ 56 - 15
config/rofi-pass/config

@@ -1,47 +1,87 @@
-# permanently set alternative root dir
+# permanently set alternative root dir. Use ":" to separate multiple roots
+# which can be switched at runtime with shift+left/right
 # root=/path/to/root
 
-# optional rofi parameters:
-# keep in mind that 0.15.7 has different arguments compared to
-# latest git. for rofi-pass this means that "-i" will not work with
-# 0.15.7.
-rofiopts="-i -width 700 -no-levenshtein-sort"
+# rofi command. Make sure to have "$@" as last argument
+_rofi () {
+    rofi -i -no-auto-select "$@"
+}
+
+# default command to generate passwords
+_pwgen () {
+    pwgen -y "$@"
+}
+
+# image viewer to display qrcode of selected entry
+# qrencode is needed to generate the image and a viewer
+# that can read from pipes. Known viewers to work are feh and display
+_image_viewer () {
+    feh -
+#    display
+}
+
+# xdotool needs the keyboard layout to be set using setxkbmap
+# You can do this in your autostart scripts (e.g. xinitrc)
+
+# If for some reason, you cannot do this, you can set the command here.
+# and set fix_layout to true
+fix_layout=false
+
+layout_cmd () {
+    setxkbmap us
+}
 
 # fields to be used
 URL_field='url'
-USERNAME_field='username'
+USERNAME_field='login'
 AUTOTYPE_field='autotype'
 
 # delay to be used for :delay keyword
 delay=2
 
+# rofi-pass needs to close itself before it can type passwords. Set delay here.
+wait=0.2
+
+# delay between keypresses when typing (in ms)
+xdotool_delay=12
+
 ## Programs to be used
 # Editor
 EDITOR='gvim -f'
 
 # Browser
+#BROWSER='xdg-open'
 BROWSER='qutebrowser'
 
 ## Misc settings
 
-default_do='autopass' # copyPass, typeUser, typePass, copyUser, copyUrl, viewEntry, typeMenu, actionMenu, copyMenu, openUrl
-help_color='#0C73C2'
+default_do='menu' # menu, autotype, copyPass, typeUser, typePass, copyUser, copyUrl, viewEntry, typeMenu, actionMenu, copyMenu, openUrl
 auto_enter='false'
 notify='false'
-passlength='20'
-
-# seconds to wait before re-opening showEntry-menu
-# after autotyping an entry. Set to "off" to disable
-count=2
+default_autotype='user :tab pass'
 
 # color of the help messages
 # leave empty for autodetection
-help_color=""
+#help_color="#4872FF"
+help_color='#0C73C2'
 
 # Clipboard settings
 # Possible options: primary, clipboard, both
 clip=primary
 
+# Seconds before clearing pass from clipboard 
+clip_clear=45
+
+## Options for generating new password entries
+
+# open new password entries in editor
+edit_new_pass="true"
+
+# default_user is also used for password files that have no user field.
+#default_user="${ROFI_PASS_DEFAULT_USER-$(whoami)}"
+#default_user2=mary_ann
+#password_length=12
+
 # Custom Keybindings
 autotype="Alt+1"
 type_user="Alt+2"
@@ -58,3 +98,4 @@ action_menu="Alt+a"
 type_menu="Alt+t"
 help="Alt+h"
 switch="Alt+x"
+insert_pass="Alt+n"

+ 234 - 228
i3/config

@@ -37,6 +37,16 @@ workspace_auto_back_and_forth yes
 ### End Variables ### }}}
 
 ### Bindings ### {{{
+    ### i3 Keys ### {{{
+    ## reload the configuration file
+    bindsym $mod+Shift+c reload
+    ## restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
+    ## The pkill is to makke my fancy bar play nice
+    bindsym $mod+Shift+r exec pkill lemonbar && i3-msg 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' 'pkill lemonbar && i3-msg exit'"
+    ### End i3 Keys ### }}}
+
     ### Workspace Bindings ### {{{
         ### Last Workspace ### {{{
         ## Move to last workspace
@@ -166,189 +176,64 @@ workspace_auto_back_and_forth yes
         ### End Parent / Child Container ### }}}
     ### End Container Bindings ### }}}
 
-    ### i3 Modes ### {{{
-        ### Handy Menu Mode ### {{{
-        set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
-        mode "$mode_system" {
-            bindsym l exec --no-startup-id $Locker, mode "default"
-            bindsym e exec --no-startup-id pkill lemonbar && i3-msg exit, mode "default"
-            bindsym s exec --no-startup-id $Locker && systemctl suspend, mode "default"
-            bindsym h exec --no-startup-id $Locker && systemctl hibernate, mode "default"
-            bindsym r exec --no-startup-id systemctl reboot, mode "default"
-            bindsym Shift+s exec --no-startup-id systemctl poweroff -i, mode "default"
-            bindsym c exec --no-startup-id sudo /usr/bin/tomb close all, mode "default"
-            bindsym Shift+c exec --no-startup-id sudo /usr/bin/tomb slam, mode "default"
-            ## Invert screen colors
-            bindsym i exec --no-startup-id xcalib -invert -alter, mode "default"
-            ## Set brightness to my default of 30%
-            bindsym b exec --no-startup-id xbacklight -set 30, mode "default"
-            ## One minute timer, big
-            bindsym t exec urxvt -fn xft:PragmataProMono-Regular:pixelsize=70 -e termdown -WBb -c 10 -t TIME 1m, mode "default"
-            ## One minute timer, small
-            bindsym Shift+t exec urxvt -e termdown -WBb -c 10 -t TIME 1m, mode "default"
-            ## Flip screen horizontally
-            bindsym f exec --no-startup-id xrandr -x, mode "default"
-            ## Flip screen vertically
-            bindsym Shift+F exec --no-startup-id xrandr -y, mode "default"
-
-            ## back to normal: Enter or Escape
-            bindsym Return mode "default"
-            bindsym Escape mode "default"
-        }
+    ### Mouse Bindings ### {{{
+        ## Use Mouse+$mod to drag floating windows to their wanted position
+        floating_modifier $mod
 
-        bindsym $mod+Pause mode "$mode_system"
-        bindsym $mod+End mode "$mode_system"
-        bindsym XF86Tools mode "$mode_system"
-        ### End Handy Menu Mode ### }}}
-
-        ### App Quick Launch ### {{{
-        ## Launch mode, one app per key.
-        mode "launch" {
-            bindsym b exec qutebrowser ; mode "default"
-            bindsym c exec speedcrunch ; mode "default"
-            bindsym f exec firefox ; mode "default"
-            ## gksudo is dead
-            #bindsym g exec gksudo gameconqueror ; mode "default"
-            bindsym g exec urxvt -e sudo scanmem ; mode "default"
-            bindsym Shift+m exec --no-startup-id sudo /usr/bin/tomb open -k ~/vault.tomb.key ~/vault.tomb -g ; mode "default"
-            bindsym n exec urxvt -e terminal_velocity ; mode "default"
-            bindsym o exec libreoffice ; mode "default"
-            bindsym t exec i3-sensible-terminal ; mode "default"
-            bindsym v exec $HOME/bin/start-vpn.sh ; mode "default"
-            bindsym w exec urxvt -e wicd-curses ; mode "default"
-
-            ## Keeping this as an example
-            ## gnome-disks will not launch twice, gparted will. Avoid that.
-            #bindsym d exec ((pidof gpartedbin) || gksudo gparted); exec gnome-disks ; mode "default"
+        ## Seems like this only works on border or title bar...
+        #bindsym --whole-window --border button6 workspace prev
+        #bindsym --whole-window --border button7 workspace next
+        ## Removed --whole-window as it started working, and touchpoint scrolling affected.
+        bindsym --border button6 workspace prev
+        bindsym --border button7 workspace next
+    ### End Mouse Bindings ### }}}
 
-            bindsym Return mode "default"
-            bindsym Escape mode "default"
-        }
-        #bindsym $mod+Shift+g mode "launch"
-        bindsym $mod+g mode "launch"
-        ### End App Quick Launch ### }}}
-
-        ### App Focus Mode ### {{{
-        mode "App Focus" {
-            ## hardcoded focus keybindings
-            bindsym b [class="(?i)qutebrowser"] focus, mode "default"
-            bindsym w [class="(?i)terminal" title="weechat"] focus, mode "default"
-            #bindsym m [class="(?i)icedove"] focus, mode "default"
-            bindsym f [class="(?i)spacefm"] focus, mode "default"
-            bindsym z [class="(?i)zathura"] focus, mode "default"
-
-            ## back to normal: Enter or Escape
-            bindsym Return mode "default"
-            bindsym Escape mode "default"
-        }
-        bindsym $mod+Shift+g mode "App Focus"
-        ### End App Focus Mode ### }}}
-
-        ### Resize Window Mode ### {{{
-        ## 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 h resize shrink left 10 px or 10 ppt
-            bindsym j resize shrink down 10 px or 10 ppt
-            bindsym k resize shrink up 10 px or 10 ppt
-            bindsym l resize shrink right 10 px or 10 ppt
-            bindsym Shift+H resize grow left 10 px or 10 ppt
-            bindsym Shift+J resize grow down 10 px or 10 ppt
-            bindsym Shift+K resize grow up 10 px or 10 ppt
-            bindsym Shift+L resize grow right 10 px or 10 ppt
+    ### Scratch Pad ### {{{
+    ## Make the currently focused window a scratchpad
+    bindsym $mod+Shift+minus move scratchpad
 
-            ## Same bindings, but for the arrow keys
-            bindsym Left resize shrink left 10 px or 10 ppt
-            bindsym Down resize shrink down 10 px or 10 ppt
-            bindsym Up resize shrink up 10 px or 10 ppt
-            bindsym Right resize shrink right 10 px or 10 ppt
-            bindsym Shift+Left resize grow left 10 px or 10 ppt
-            bindsym Shift+Down resize grow down 10 px or 10 ppt
-            bindsym Shift+Up resize grow up 10 px or 10 ppt
-            bindsym Shift+Right resize grow right 10 px or 10 ppt
-
-            ## Go to precise mode
-            bindsym p mode "resize_precise"
+    ## Show the first scratchpad window
+    bindsym $mod+minus scratchpad show
+    ### End Scratch Pad ### }}}
 
-            ## Back to normal: Enter or Escape
-            bindsym Return mode "default"
-            bindsym Escape mode "default"
-        }
+    ### User Interface Bindings ### {{{
+        ### Brightness Bindings ### {{{
+        bindsym XF86MonBrightnessUp exec xbacklight -inc 5          ## Increase screen brightness
+        bindsym Shift+XF86MonBrightnessUp exec xbacklight -inc 1    ## Fine increase screen brightness
+        bindsym XF86MonBrightnessDown exec xbacklight -dec 5        ## Decrease screen brightness
+        bindsym Shift+XF86MonBrightnessDown exec xbacklight -dec 1  ## Fine decrease screen brightness
+        bindsym $mod+XF86MonBrightnessUp exec xbacklight -set 100   ## Set max screen brightness
+        bindsym $mod+XF86MonBrightnessDown exec xbacklight -set 1   ## Set min screen brightness
+        ### End Brightness Bindings ### }}}
 
-            ### Precise Resize ### {{{
-            mode "resize_precise" {
-                bindsym h resize shrink left 1 px or 1 ppt
-                bindsym j resize shrink down 1 px or 1 ppt
-                bindsym k resize shrink up 1 px or 1 ppt
-                bindsym l resize shrink right 1 px or 1 ppt
-                bindsym Shift+H resize grow left 1 px or 1 ppt
-                bindsym Shift+J resize grow down 1 px or 1 ppt
-                bindsym Shift+K resize grow up 1 px or 1 ppt
-                bindsym Shift+L resize grow right 1 px or 1 ppt
-
-                ## Same bindings, but for the arrow keys
-                bindsym Left resize shrink left 1 px or 1 ppt
-                bindsym Down resize shrink down 1 px or 1 ppt
-                bindsym Up resize shrink up 1 px or 1 ppt
-                bindsym Right resize shrink right 1 px or 1 ppt
-                bindsym Shift+Left resize grow left 1 px or 1 ppt
-                bindsym Shift+Down resize grow down 1 px or 1 ppt
-                bindsym Shift+Up resize grow up 1 px or 1 ppt
-                bindsym Shift+Right resize grow right 1 px or 1 ppt
-
-                ## Return to normal resize
-                bindsym p mode "resize"
-
-                ## Back to normal: Enter or Escape
-                bindsym Return mode "default"
-                bindsym Escape mode "default"
-            }
-            ### End Precise Resize ### }}}
-
-        bindsym $mod+r mode "resize"
-        ### End Resize Mode ### }}}
-
-        ## xrandr mode?
-
-        ### control-pianobar Mode ### {{{
-        mode "control-pianobar" {
-            bindsym p exec --no-startup-id ~/.config/pianobar/control-pianobar.sh play, mode "default"
-            bindsym q exec --no-startup-id ~/.config/pianobar/control-pianobar.sh quit, mode "default"
-            bindsym h exec --no-startup-id ~/.config/pianobar/control-pianobar.sh history, mode "default"
-            bindsym n exec --no-startup-id ~/.config/pianobar/control-pianobar.sh next, mode "default"
-            bindsym t exec --no-startup-id ~/.config/pianobar/control-pianobar.sh tired, mode "default"
-            bindsym s exec --no-startup-id ~/.config/pianobar/control-pianobar.sh switchstation, mode "default"
-            bindsym \, exec --no-startup-id ~/.config/pianobar/control-pianobar.sh previousstation, mode "default"
-            bindsym . exec --no-startup-id ~/.config/pianobar/control-pianobar.sh nextstation, mode "default"
-            bindsym l exec --no-startup-id ~/.config/pianobar/control-pianobar.sh love, mode "default"
-            bindsym b exec --no-startup-id ~/.config/pianobar/control-pianobar.sh ban, mode "default"
-            bindsym e exec --no-startup-id ~/.config/pianobar/control-pianobar.sh explain, mode "default"
-            bindsym c exec --no-startup-id ~/.config/pianobar/control-pianobar.sh current, mode "default"
-
-            ## back to normal: Enter or Escape
-            bindsym Return mode "default"
-            bindsym Escape mode "default"
-        }
+        ### Pulse Audio Controls ### {{{
+        ## Disabled old volume bindings after amixer started acting up
+        ##bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -q set Master 5%+          ## Increase sound volume
+        ##bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id amixer -q set Master 1%+    ## Fine increase sound volume
+        ##bindsym $mod+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%  ## Able to softvol increase
+        ##bindsym XF86AudioLowerVolume exec --no-startup-id amixer -q set Master 5%-          ## Decrease sound volume
+        ##bindsym Shift+XF86AudioLowerVolume exec --no-startup-id amixer -q set Master 1%-    ## Fine decrease sound volume
+        ##bindsym $mod+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%  ## Able to softvol decrease
+        ##bindsym XF86AudioMute exec --no-startup-id amixer -q set Master toggle              ## mute sound
 
-        bindsym $mod+m mode "control-pianobar"
-        ### End control-pianobar Mode ### }}}
-    ### End i3 Modes ### }}}
+        ## Softvol increase possible with pactl
+        bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%           ## Increase sound volume
+        bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +1%     ## Fine increase sound volume
+        bindsym $mod+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 100%     ## Set volume to "100%"
+        bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%           ## Decrease sound volume
+        bindsym Shift+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -1%     ## Fine decrease sound volume
+        bindsym $mod+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 50%      ## Set volume to "50%"
 
-    ### Misc Bindings ### {{{
-        ### i3 Keys ### {{{
-        ## reload the configuration file
-        bindsym $mod+Shift+c reload
-        ## restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
-        ## The pkill is to makke my fancy bar play nice
-        bindsym $mod+Shift+r exec pkill lemonbar && i3-msg 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' 'pkill lemonbar && i3-msg exit'"
-        ### End i3 Keys ### }}}
+        bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle                 ## mute sound
+        bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute 1 toggle            ## mute mic
+        ### End Pulse Audio ### }}}
 
+        ### Toggle redshift ### {{{
+        bindsym $mod+slash exec --no-startup-id pkill -USR1 redshift
+        ### End Toggle redshift ### }}}
+    ### End User Interface Bindings ### }}}
+
+    ### Program Call Bindings ### {{{
         ### Launch Term ### {{{
         ## start a terminal
         bindsym $mod+Return exec i3-sensible-terminal
@@ -379,41 +264,6 @@ workspace_auto_back_and_forth yes
         bindsym Shift+XF86Search exec rofi-pass     ## x260
         ### End Rofi Bindings ### }}}
 
-        ### Pulse Audio Controls ### {{{
-        ## Disabled old volume bindings after amixer started acting up
-        ##bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -q set Master 5%+          ## Increase sound volume
-        ##bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id amixer -q set Master 1%+    ## Fine increase sound volume
-        ##bindsym $mod+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%  ## Able to softvol increase
-        ##bindsym XF86AudioLowerVolume exec --no-startup-id amixer -q set Master 5%-          ## Decrease sound volume
-        ##bindsym Shift+XF86AudioLowerVolume exec --no-startup-id amixer -q set Master 1%-    ## Fine decrease sound volume
-        ##bindsym $mod+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%  ## Able to softvol decrease
-        ##bindsym XF86AudioMute exec --no-startup-id amixer -q set Master toggle              ## mute sound
-
-        ## Softvol increase possible with pactl
-        bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%           ## Increase sound volume
-        bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +1%     ## Fine increase sound volume
-        bindsym $mod+XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 100%     ## Set volume to "100%"
-        bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%           ## Decrease sound volume
-        bindsym Shift+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -1%     ## Fine decrease sound volume
-        bindsym $mod+XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 50%      ## Set volume to "50%"
-
-        bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle                 ## mute sound
-        bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute 1 toggle            ## mute mic
-        ### End Pulse Audio ### }}}
-
-        ### Toggle redshift ### {{{
-        bindsym $mod+slash exec --no-startup-id pkill -USR1 redshift
-        ### End Toggle redshift ### }}}
-
-        ### Brightness Bindings ### {{{
-        bindsym XF86MonBrightnessUp exec xbacklight -inc 5          ## Increase screen brightness
-        bindsym Shift+XF86MonBrightnessUp exec xbacklight -inc 1    ## Fine increase screen brightness
-        bindsym XF86MonBrightnessDown exec xbacklight -dec 5        ## Decrease screen brightness
-        bindsym Shift+XF86MonBrightnessDown exec xbacklight -dec 1  ## Fine decrease screen brightness
-        bindsym $mod+XF86MonBrightnessUp exec xbacklight -set 100   ## Set max screen brightness
-        bindsym $mod+XF86MonBrightnessDown exec xbacklight -set 1   ## Set min screen brightness
-        ### End Brightness Bindings ### }}}
-
         ### External IP Toggle For i3 lemonbar ### {{{
         ## Good example of a on/off flag, with awk. Replaces with three position code.
         ## awk -v TEMP=/tmp/i3_lemonbar_ip_${USER} 'BEGIN {{FILE=getline < TEMP < 0 ? "0" : "1"} {if($0==1){STATE=1} else {STATE=0}} {if(STATE==0){system("echo 1 > "TEMP)} else {system("echo 0 > "TEMP)}} }'
@@ -424,28 +274,184 @@ workspace_auto_back_and_forth yes
         ### Clipster Clipboard Manager ### {{{
         bindsym $mod+c exec clipster -sc
         ### End Clipster ### }}}
+    ### End Program Call Bindings ### }}}
+
+    ### Misc Bindings ### {{{
     ### End Misc Bindings ### }}}
+### End Bindings ### }}}
 
-    ### Mouse Bindings ### {{{
-        ## Use Mouse+$mod to drag floating windows to their wanted position
-        floating_modifier $mod
+### i3 Modes ### {{{
+    ### System Control  Mode ### {{{
+    mode "system-control" {
+        bindsym l exec --no-startup-id $Locker, mode "default"
+        bindsym e exec --no-startup-id pkill lemonbar && i3-msg exit, mode "default"
+        bindsym s exec --no-startup-id $Locker && systemctl suspend, mode "default"
+        bindsym h exec --no-startup-id $Locker && systemctl hibernate, mode "default"
+        bindsym r exec --no-startup-id systemctl reboot, mode "default"
+        bindsym Shift+s exec --no-startup-id systemctl poweroff -i, mode "default"
+        bindsym c exec --no-startup-id sudo /usr/bin/tomb close all, mode "default"
+        bindsym Shift+c exec --no-startup-id sudo /usr/bin/tomb slam, mode "default"
+        ## Invert screen colors
+        bindsym i exec --no-startup-id xcalib -invert -alter, mode "default"
+        ## Set brightness to my default of 30%
+        bindsym b exec --no-startup-id xbacklight -set 30, mode "default"
+        ## One minute timer, big
+        bindsym t exec urxvt -fn xft:PragmataProMono-Regular:pixelsize=70 -e termdown -WBb -c 10 -t TIME 1m, mode "default"
+        ## One minute timer, small
+        bindsym Shift+t exec urxvt -e termdown -WBb -c 10 -t TIME 1m, mode "default"
+        ## Flip screen horizontally
+        bindsym f exec --no-startup-id xrandr -x, mode "default"
+        ## Flip screen vertically
+        bindsym Shift+F exec --no-startup-id xrandr -y, mode "default"
+
+        ## back to normal: Enter or Escape
+        bindsym Return mode "default"
+        bindsym Escape mode "default"
+    }
+
+    bindsym $mod+Pause mode "system-control"
+    bindsym $mod+End mode "system-control"
+    bindsym XF86Tools mode "system-control"
+    ### End System Control Mode ### }}}
+
+    ### App Quick Launch ### {{{
+    ## Launch mode, one app per key.
+    mode "quick-launch" {
+        bindsym b exec qutebrowser ; mode "default"
+        bindsym c exec speedcrunch ; mode "default"
+        bindsym f exec firefox ; mode "default"
+        ## gksudo is dead
+        #bindsym g exec gksudo gameconqueror ; mode "default"
+        bindsym g exec urxvt -e sudo scanmem ; mode "default"
+        bindsym Shift+m exec --no-startup-id sudo /usr/bin/tomb open -k ~/vault.tomb.key ~/vault.tomb -g ; mode "default"
+        bindsym n exec urxvt -e terminal_velocity ; mode "default"
+        bindsym o exec libreoffice ; mode "default"
+        bindsym t exec i3-sensible-terminal ; mode "default"
+        bindsym v exec $HOME/bin/start-vpn.sh ; mode "default"
+        bindsym w exec urxvt -e wicd-curses ; mode "default"
+
+        ## Keeping this as an example
+        ## gnome-disks will not launch twice, gparted will. Avoid that.
+        #bindsym d exec ((pidof gpartedbin) || gksudo gparted); exec gnome-disks ; mode "default"
+
+        bindsym Return mode "default"
+        bindsym Escape mode "default"
+    }
+
+    #bindsym $mod+Shift+g mode "quick-launch"
+    bindsym $mod+g mode "quick-launch"
+    ### End App Quick Launch ### }}}
+
+    ### App Focus Mode ### {{{
+    mode "app-focus" {
+        ## hardcoded focus keybindings
+        bindsym b [class="(?i)qutebrowser"] focus, mode "default"
+        bindsym w [class="(?i)terminal" title="weechat"] focus, mode "default"
+        #bindsym m [class="(?i)icedove"] focus, mode "default"
+        bindsym f [class="(?i)spacefm"] focus, mode "default"
+        bindsym z [class="(?i)zathura"] focus, mode "default"
+
+        ## back to normal: Enter or Escape
+        bindsym Return mode "default"
+        bindsym Escape mode "default"
+    }
+
+    bindsym $mod+Shift+g mode "app-focus"
+    ### End App Focus Mode ### }}}
+
+    ### Resize Window Mode ### {{{
+    ## 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 h resize shrink left 10 px or 10 ppt
+        bindsym j resize shrink down 10 px or 10 ppt
+        bindsym k resize shrink up 10 px or 10 ppt
+        bindsym l resize shrink right 10 px or 10 ppt
+        bindsym Shift+H resize grow left 10 px or 10 ppt
+        bindsym Shift+J resize grow down 10 px or 10 ppt
+        bindsym Shift+K resize grow up 10 px or 10 ppt
+        bindsym Shift+L 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 Down resize shrink down 10 px or 10 ppt
+        bindsym Up resize shrink up 10 px or 10 ppt
+        bindsym Right resize shrink right 10 px or 10 ppt
+        bindsym Shift+Left resize grow left 10 px or 10 ppt
+        bindsym Shift+Down resize grow down 10 px or 10 ppt
+        bindsym Shift+Up resize grow up 10 px or 10 ppt
+        bindsym Shift+Right resize grow right 10 px or 10 ppt
+
+        ## Go to precise mode
+        bindsym p mode "resize_precise"
+
+        ## Back to normal: Enter or Escape
+        bindsym Return mode "default"
+        bindsym Escape mode "default"
+    }
+
+        ### Precise Resize ### {{{
+        mode "resize_precise" {
+            bindsym h resize shrink left 1 px or 1 ppt
+            bindsym j resize shrink down 1 px or 1 ppt
+            bindsym k resize shrink up 1 px or 1 ppt
+            bindsym l resize shrink right 1 px or 1 ppt
+            bindsym Shift+H resize grow left 1 px or 1 ppt
+            bindsym Shift+J resize grow down 1 px or 1 ppt
+            bindsym Shift+K resize grow up 1 px or 1 ppt
+            bindsym Shift+L resize grow right 1 px or 1 ppt
 
-        ## Seems like this only works on border or title bar...
-        #bindsym --whole-window --border button6 workspace prev
-        #bindsym --whole-window --border button7 workspace next
-        ## Removed --whole-window as it started working, and touchpoint scrolling affected.
-        bindsym --border button6 workspace prev
-        bindsym --border button7 workspace next
-    ### End Mouse Bindings ### }}}
-
-    ### Scratch Pad ### {{{
-    ## Make the currently focused window a scratchpad
-    bindsym $mod+Shift+minus move scratchpad
+            ## Same bindings, but for the arrow keys
+            bindsym Left resize shrink left 1 px or 1 ppt
+            bindsym Down resize shrink down 1 px or 1 ppt
+            bindsym Up resize shrink up 1 px or 1 ppt
+            bindsym Right resize shrink right 1 px or 1 ppt
+            bindsym Shift+Left resize grow left 1 px or 1 ppt
+            bindsym Shift+Down resize grow down 1 px or 1 ppt
+            bindsym Shift+Up resize grow up 1 px or 1 ppt
+            bindsym Shift+Right resize grow right 1 px or 1 ppt
+
+            ## Return to normal resize
+            bindsym p mode "resize"
 
-    ## Show the first scratchpad window
-    bindsym $mod+minus scratchpad show
-    ### End Scratch Pad ### }}}
-### End Bindings ### }}}
+            ## Back to normal: Enter or Escape
+            bindsym Return mode "default"
+            bindsym Escape mode "default"
+        }
+        ### End Precise Resize ### }}}
+
+    bindsym $mod+r mode "resize"
+    ### End Resize Mode ### }}}
+
+    ### Control Pianobar Mode ### {{{
+    mode "control-pianobar" {
+        bindsym p exec --no-startup-id ~/.config/pianobar/control-pianobar.sh play, mode "default"
+        bindsym q exec --no-startup-id ~/.config/pianobar/control-pianobar.sh quit, mode "default"
+        bindsym h exec --no-startup-id ~/.config/pianobar/control-pianobar.sh history, mode "default"
+        bindsym n exec --no-startup-id ~/.config/pianobar/control-pianobar.sh next, mode "default"
+        bindsym t exec --no-startup-id ~/.config/pianobar/control-pianobar.sh tired, mode "default"
+        bindsym s exec --no-startup-id ~/.config/pianobar/control-pianobar.sh switchstation, mode "default"
+        bindsym \, exec --no-startup-id ~/.config/pianobar/control-pianobar.sh previousstation, mode "default"
+        bindsym . exec --no-startup-id ~/.config/pianobar/control-pianobar.sh nextstation, mode "default"
+        bindsym l exec --no-startup-id ~/.config/pianobar/control-pianobar.sh love, mode "default"
+        bindsym b exec --no-startup-id ~/.config/pianobar/control-pianobar.sh ban, mode "default"
+        bindsym e exec --no-startup-id ~/.config/pianobar/control-pianobar.sh explain, mode "default"
+        bindsym c exec --no-startup-id ~/.config/pianobar/control-pianobar.sh current, mode "default"
+
+        ## back to normal: Enter or Escape
+        bindsym Return mode "default"
+        bindsym Escape mode "default"
+    }
+
+    bindsym $mod+m mode "control-pianobar"
+    ### End Control Pianobar Mode ### }}}
+
+    ## xrandr mode?
+### End i3 Modes ### }}}
 
 ### Window Treatments ### {{{
     ## (adding "(?i)" means ignore case)

+ 3 - 1
i3/lemonbar/README.md

@@ -104,6 +104,8 @@ bar {
 * IP display filters virtual interfaces for docker, qemu, and vpn. **08APR2017**
 * Added VPN on indicator. **17APR2017**
 * Due to change in debian, using pactl for volume checking. **12NOV2018**
+* Added RSS (newsboat) unread indicator. **13MAR2019**
+* Tweaked so that section backgrounds are easier to edit. **13MAR2019**
 
 
 ### **Things I want** ###
@@ -111,7 +113,7 @@ bar {
 * Make better separations between joined colored segments.
 
 
-##### **Last updated 16NOV2018** #####
+##### **Last updated 13MAR2019** #####
 
 [i3 lemonbar]: https://github.com/electro7/dotfiles/tree/master/.i3/lemonbar
 [lemonbar krypt-n]: https://github.com/krypt-n/bar

+ 20 - 3
i3/lemonbar/i3_lemonbar.sh

@@ -46,6 +46,7 @@ cnt_net=${upd_net}
 cnt_mem=${upd_mem}
 cnt_time=${upd_time}
 cnt_disk=${upd_disk}
+cnt_rss=${upd_rss}
 
 while :; do
 
@@ -87,14 +88,14 @@ while :; do
 
     ### Offlineimap, "EMA" ### {{{
     if [ $((cnt_mail++)) -ge ${upd_mail} ]; then
-        printf "%s%s\n" "EMA" "$(find $HOME/.mail/*/INBOX/new -type f 2>/dev/null | wc -l)" > "${panel_fifo}"
+        printf "%s%s\n" "EMA" "$(find ${HOME}/.mail/*/INBOX/new -type f 2>/dev/null | wc -l)" > "${panel_fifo}"
         cnt_mail=0
     fi
     ### End Offlineimap, "EMA" ### }}}
 
     ### Multi Music Player Display, "MMP" ### {{{
     if [ $((cnt_mmpd++)) -ge ${upd_mmpd} ]; then
-        mmpd_check="$(grep -qxs 1 $HOME/.config/pianobar/isplaying && cat $HOME/.config/pianobar/nowplaying || echo 'none')"
+        mmpd_check="$(grep -qxs 1 ${HOME}/.config/pianobar/isplaying && cat ${HOME}/.config/pianobar/nowplaying || echo 'none')"
         if [ "${mmpd_check}" != "none" ]; then
             printf "%s%s\n" "MMP" "${mmpd_check}" > "${panel_fifo}"
           else
@@ -151,7 +152,7 @@ while :; do
         if [ "${BAT0}" != "" ] || [ "${BAT1}" != "" ]; then
             ## Originally "/sys/class/power_supply/BAT{0..1}/uevent" but changed into variables make work for non thinkpad cases. paste fails if it can't find a passed file.
             ## "U" for unknown
-            printf "%s%s %s\n" "TMB" "$(paste -d = ${BAT0} ${BAT1} 2>/dev/null | awk 'BEGIN {CHARGE="U"} /ENERGY_FULL=/||/ENERGY_NOW=/||/STATUS=/||/CHARGE_NOW=/||/CHARGE_FULL=/ {split($0,a,"="); if(a[2]~/Discharging/||a[4]~/Discharging/){CHARGE="D"} else if(a[2]~/Charging/||a[4]~/Charging/){CHARGE="C"} else if (a[2]~/Full/||a[4]~/Full/){CHARGE="F"}; if(a[1]~/FULL/){FULL=a[2]+a[4]}; if(a[1]~/NOW/){NOW=a[2]+a[4]};} END {if(NOW!=""){PERC=int((NOW/FULL)*100)} else {PERC="none"}; printf("%s %s\n", PERC, CHARGE)}')" "$(acpi -b | awk '/[0-9][0-9]:[0-9][0-9]:[0-9][0-9] (until|remaining)/ {if($5!=""){TIME=$5}i} END {if(TIME!=""){print TIME} else {print "none"}}')" > "${panel_fifo}"
+            printf "%s%s %s\n" "TMB" "$(paste -d = ${BAT0} ${BAT1} 2>/dev/null | awk 'BEGIN {CHARGE="U"} /ENERGY_FULL=/||/ENERGY_NOW=/||/STATUS=/||/CHARGE_NOW=/||/CHARGE_FULL=/ {split($0,a,"="); if(a[2]~/Discharging/||a[4]~/Discharging/){CHARGE="D"} else if(a[2]~/Charging/||a[4]~/Charging/){CHARGE="C"} else if (a[2]~/Full/||a[4]~/Full/){CHARGE="F"}; if(a[1]~/FULL/){FULL=a[2]+a[4]}; if(a[1]~/NOW/){NOW=a[2]+a[4]};} END {if(NOW!=""){PERC=int((NOW/FULL)*100)} else {PERC="none"}; printf("%s %s\n", PERC, CHARGE)}')" "$(acpi -b | awk '/[0-9]+:[0-9]+:[0-9]+ (until|remaining)/ {if($5!=""){split($5,s,":");if(s[1]!="00"){HOUR=s[1]"h"};if(s[2]!="00"){MIN=s[2]"m"};TIME=HOUR MIN}} END {if(TIME!=""){print TIME} else {print "none"}}')" > "${panel_fifo}"
             else
             printf "%s%s\n" "TMB" "none" > "${panel_fifo}"
         fi
@@ -198,6 +199,22 @@ while :; do
     fi
     ### End Disk Usage Check, "DIC" ### }}}
 
+    ### RSS Unread Check, "RSS" ### {{{
+    if [ $((cnt_rss++)) -ge ${upd_rss} ]; then
+
+        ## Checks that $rss_path is set or skips commands
+        if [ -n "${rss_path}" ]; then
+            ## Verifies that sqlite3 is installed
+            if [ -n "$(command -v sqlite3)" ]; then
+                ## Polls newsboat db for unread count.
+                printf "%s%s\n" "RSS" "$(sqlite3 ${rss_path} 'select sum(unread) from rss_item')" > "${panel_fifo}"
+            fi
+        fi
+
+        cnt_rss=0
+    fi
+    ### End RSS Unread Check, "RSS" ### }}}
+
     ## Finally, wait 1 second
     sleep 1s;
 

+ 31 - 20
i3/lemonbar/i3_lemonbar_config

@@ -23,6 +23,11 @@ iconfont="fontawesome-10"
 ## You could set this to "" to reduce bar length while toggled.
 scrub_ip="---.---.---.---"
 
+## Path for RSS db
+## unsetting/commenting out/"" will disable
+## This is currently written for newsboat (and maybe old newsbeuter)
+rss_path="$HOME/.newsboat/cache.db"
+
 ### Temperature ### {{{
 ## Temperature value can either be C or F.
 temp_format="C"
@@ -62,9 +67,11 @@ upd_net=3                           ## Network update
 upd_mem=3                           ## Mem used update
 upd_time=5                          ## Time update
 upd_disk=10                         ## Disk free update
+upd_rss=120                         ## RSS check update
 ### End Update ### }}}
 
 ### Color ### {{{
+## Base Colors
 color_back="#FF1D1F21"              ## Default background
 color_fore="#FFC5C8C6"              ## Default foreground
 color_head="#FFB5BD68"              ## Background for first element
@@ -72,6 +79,8 @@ color_sec_b1="#FF282A2E"            ## Background for section 1
 color_sec_b2="#FF454A4F"            ## Background for section 2
 color_sec_b3="#FF60676E"            ## Background for section 3
 color_icon="#FF979997"              ## For icons
+
+## Section Special Colors
 color_mail="#FFCE935F"              ## Background color for mail alert
 color_chat="#FFCC6666"              ## Background color for chat alert
 color_cpu="#FF5F819D"               ## Background color for cpu alert
@@ -84,25 +93,23 @@ color_bat_high="#ffb58900"          ## Icon for high bat threshold
 color_bat_plug="#ff859900"          ## Forground for 70-100 battery icon
 color_temp="#ffdc322f"              ## Backgroud for high temp
 
-    ### Solarized ### {{{
-    ## For reference purposes
-    #$base03:    #002b36;
-    #$base02:    #073642;
-    #$base01:    #586e75;
-    #$base00:    #657b83;
-    #$base0:     #839496;
-    #$base1:     #93a1a1;
-    #$base2:     #eee8d5;
-    #$base3:     #fdf6e3;
-    #$yellow:    #b58900;
-    #$orange:    #cb4b16;
-    #$red:       #dc322f;
-    #$magenta:   #d33682;
-    #$violet:    #6c71c4;
-    #$blue:      #268bd2;
-    #$cyan:      #2aa198;
-    #$green:     #859900;
-    ### End Solarized ### }}}
+    ### Section Background Colors ### {{{
+    ## This is to make changing up section order a little easier
+    ## You still need to edit printf at the end up i3_lemonbar_parser.sh
+    local_ip_cback=${color_sec_b1}
+    gpg_cback=${color_sec_b2}
+    disk_cback=${color_sec_b1}
+    ext_ip_cback=${color_sec_b2}
+    rss_cback=${color_sec_b2}
+    mail_cback=${color_sec_b1}
+    cpu_cback=${color_sec_b2}
+    date_cback=${color_sec_b1}
+    mmpd_cback=${color_sec_b1}
+    mmpd_alt_cback=${color_sec_b2}
+    bat_cback=${color_sec_b1}
+    temp_cback=${color_sec_b2}
+    vol_cback=${color_sec_b2}
+    ### End Section Background Colors ### }}}
 ### End Color ### }}}
 
 ### Spacing ### {{{
@@ -126,9 +133,11 @@ sep_l_right=""                     ## Powerline light sepatator right
 
 # Icon glyphs from Font Awesome
 icon_time=""                       ## Time icon
+icon_cal=""                        ## Calendar icon
 icon_cpu=""                        ## CPU icon
 #icon_cpu=""                        ## CPU icon
 icon_mem=""                        ## MEM icon
+## Real ram icon #icon_mem=""                        ## MEM icon
 icon_dl=""                         ## Download icon
 icon_ul=""                         ## Upload icon
 icon_vol=""                        ## Volume icon
@@ -139,7 +148,8 @@ icon_mail=""                       ## Mail icon
 icon_mail_read=""                  ## Mail read icon
 icon_chat=""                       ## IRC/Chat icon
 icon_music=""                      ## Music icon
-icon_prog=""                       ## Window icon
+#icon_prog=""                       ## Window icon
+icon_prog=""                       ## Window icon
 icon_contact=""                    ## Contact icon
 icon_wsp=""                        ## Workspace icon
 icon_bat_plug=""                   ## Battery icon, may add level indicator? and plugged in?
@@ -159,4 +169,5 @@ icon_gpg=""                        ## GPG icon
 icon_gpg_locked=""                 ## GPG locked icon
 icon_gpg_unlocked=""               ## GPG unlocked icon
 icon_vpn=""                        ## VPN icon
+icon_rss=""                        ## RSS icon
 ### End Icons ### }}}

+ 45 - 35
i3/lemonbar/i3_lemonbar_parser.sh

@@ -14,7 +14,7 @@ title="%{F${color_head} B${color_sec_b2}}${sep_right}%{F${color_head} B${color_s
 
 ## parser
 while read -r line ; do
-    case $line in
+    case ${line} in
         ### SYS Case ### {{{
         SYS*)
             ## conky=, 0-1=up/down wlan, 2-3=up/down eth, 5=cpu
@@ -23,11 +23,11 @@ while read -r line ; do
 
             ### CPU ### {{{
             if [ ${sys_arr[4]} -gt ${cpu_alert} ]; then
-                cpu_cback=${color_cpu}; cpu_cicon=${color_back}; cpu_cfore=${color_back};
+                cpu_set_back=${color_cpu}; cpu_cicon=${color_back}; cpu_cfore=${color_back};
               else
-                cpu_cback=${color_sec_b2}; cpu_cicon=${color_icon}; cpu_cfore=${color_fore};
+                cpu_set_back=${cpu_cback}; cpu_cicon=${color_icon}; cpu_cfore=${color_fore};
             fi
-            cpu="%{F${cpu_cback}}${sep_left}%{F${cpu_cicon} B${cpu_cback}} %{T2}${icon_cpu}%{F${cpu_cfore} T1} ${sys_arr[4]}%"
+            cpu="%{F${cpu_set_back}}${sep_left}%{F${cpu_cicon} B${cpu_set_back}} %{T2}${icon_cpu}%{F${cpu_cfore} T1} ${sys_arr[4]}%"
             ### End CPU ### }}}
 
             ### Net Speed ### {{{
@@ -72,7 +72,7 @@ while read -r line ; do
               else
                 date="${time_arr[1]} ${time_arr[2]}"
             fi
-            date="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_time}%{F- T1} ${date}"
+            date="%{F${date_cback}}${sep_left}%{F${color_icon} B${date_cback}} %{T2}${icon_time}%{F- T1} ${date}"
             ## Time
             time="%{F${color_head}}${sep_left}%{F${color_back} B${color_head}} ${time_arr[3]} %{F- B-}"
             ;;
@@ -82,7 +82,7 @@ while read -r line ; do
         DIC*)
             ## Display Disk use
             disk_arr="${line#???}"
-            diskr="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_disk}%{F- T1} ${disk_arr}"
+            diskr="%{F${disk_cback}}${sep_left}%{F${color_icon} B${disk_cback}} %{T2}${icon_disk}%{F- T1} ${disk_arr}"
             ;;
         ### End Disk Usage Case ### }}}
 
@@ -114,11 +114,12 @@ while read -r line ; do
               else
                 net_arr_ip="No IP"; net_icon="${icon_local_out}";
             fi
-            local_ip="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${net_icon}%{F- T1} ${net_arr_ip}"
+            #local_ip_cback=${color_sec_b1}
+            local_ip="%{F${local_ip_cback}}${sep_left}%{F${color_icon} B${local_ip_cback}} %{T2}${net_icon}%{F- T1} ${net_arr_ip}"
 
             ## Wifi Signal Strength
             if [ "${net_arr_signal}" != "none" ]; then
-                wifi="%{F${color_icon}}${sep_l_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_wifi}%{F- T1} ${net_arr_signal}%"
+                wifi="%{F${color_icon}}${sep_l_left}%{F${color_icon} B${local_ip_cback}} %{T2}${icon_wifi}%{F- T1} ${net_arr_signal}%"
               else
                 wifi=""
             fi
@@ -127,15 +128,14 @@ while read -r line ; do
             ## This stops an external IP from displaying, if on local IP.
             ## This is in this section, as it run much much more often.
             if [ "${net_arr_ip}" = "No IP" ]; then
-                ext_ip="%{F${color_sec_b2}}${sep_left}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_ext_ip}%{F- T1} No IP"
+                ext_ip="%{F${ext_ip_cback}}${sep_left}%{F${color_icon} B${ext_it_cback}} %{T2}${icon_ext_ip}%{F- T1} No IP"
             fi
 
             ## External IP icon to VPN icon
             ## This will swap the normal icon to show that a VPN is up.
             ## This is in this section, as it run much much more often.
             if [ "${net_arr_vpn}" = "VPN" ]; then
-                vpn="%{F${color_icon}}${sep_l_left}%{B${color_sec_b2}}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_vpn}"
-                #gpg="%{F${color_icon}}${sep_l_left}%{B${color_sec_b2}}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_gpg}%{F${color_fore} T1} ${lock}"
+                vpn="%{F${color_icon}}${sep_l_left}%{B${ext_ip_cback}}%{F${color_icon} B${ext_ip_cback}} %{T2}${icon_vpn}"
               else
                 vpn=""
             fi
@@ -151,7 +151,7 @@ while read -r line ; do
               else
                 ext_ip_select="${ext_arr}"
             fi
-            ext_ip="%{F${color_sec_b2}}${sep_left}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_ext_ip}%{F- T1} ${ext_ip_select}"
+            ext_ip="%{F${ext_ip_cback}}${sep_left}%{F${color_icon} B${ext_ip_cback}} %{T2}${icon_ext_ip}%{F- T1} ${ext_ip_select}"
             ;;
         ### End External IP Case ### }}}
 
@@ -159,7 +159,7 @@ while read -r line ; do
         VOL*)
             ## Volume
             vol_arr="${line#???}"
-            vol="%{F${color_sec_b2}}${sep_left}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_vol}%{F- T1} ${vol_arr}"
+            vol="%{F${vol_cback}}${sep_left}%{F${color_icon} B${vol_cback}} %{T2}${icon_vol}%{F- T1} ${vol_arr}"
             ;;
         ### End Volume Case ### }}}
 
@@ -195,13 +195,14 @@ while read -r line ; do
 
                 ## Set alert color
                 if [ ${temp_check} -eq 1 ]; then
-                    temp_cback=${color_temp}; temp_cicon=${color_back}; temp_cfore=${color_back};
+                    temp_set_back=${color_temp}; temp_cicon=${color_back}; temp_cfore=${color_back};
                     else
-                    temp_cback=${color_sec_b2}; temp_cicon=${color_icon}; temp_cfore=${color_fore};
+                    temp_set_back=${temp_cback}; temp_cicon=${color_icon}; temp_cfore=${color_fore};
                 fi
-                temp="%{F${temp_cback}}${sep_left}%{F${temp_cicon} B${temp_cback}} %{T2}${icon_temp}%{F${temp_cfore} T1} ${temp_arr_val}${temp_arr_unit}"
+                temp="%{F${temp_set_back}}${sep_left}%{F${temp_cicon} B${temp_set_back}} %{T2}${icon_temp}%{F${temp_cfore} T1} ${temp_arr_val}${temp_arr_unit}"
               else
-                temp="%{F${color_sec_b2}}${sep_left}%{F${color_disable} B${color_sec_b2}} %{T2}${icon_temp}%{F${color_disable} T1} ×"
+                ## Set if temp fifo missing
+                temp="%{F${temp_cback}}${sep_left}%{F${color_disable} B${temp_cback}} %{T2}${icon_temp}%{F${color_disable} T1} ×"
             fi
             ;;
         ### End Temperature Case ### }}}
@@ -210,11 +211,11 @@ while read -r line ; do
         EMA*)
             email_arr="${line#???}"
             if [ "${email_arr}" != "0" ]; then
-                mail_cback=${color_mail}; mail_cicon=${color_sec_b2}; mail_cfore=${color_sec_b2}; mail_icon=${icon_mail}; mail_num=${email_arr}; mail_post_sep=${sep_left}
+                mail_set_back=${color_mail}; mail_cicon=${color_sec_b2}; mail_cfore=${color_sec_b2}; mail_icon=${icon_mail}; mail_num=${email_arr}; mail_post_sep=${sep_left}
               else
-                mail_cback=${color_sec_b2}; mail_cicon=${color_icon}; mail_cfore=${color_fore}; mail_icon=${icon_mail_read}; mail_num=""; mail_post_sep=${sep_l_left}
+                mail_set_back=${mail_cback}; mail_cicon=${color_icon}; mail_cfore=${color_fore}; mail_icon=${icon_mail_read}; mail_num=""; mail_post_sep=${sep_l_left}
             fi
-            email="%{F${mail_cback}}${sep_left}%{F${mail_cicon} B${mail_cback}} %{T2}${mail_icon}%{F${mail_cfore} T1} ${mail_num}"
+            email="%{F${mail_set_back}}${sep_left}%{F${mail_cicon} B${mail_set_back}} %{T2}${mail_icon}%{F${mail_cfore} T1} ${mail_num}"
             ;;
         ### End Offlineimp Case ### }}}
 
@@ -227,13 +228,21 @@ while read -r line ; do
                 else
                     lock="${icon_gpg_locked}"
                 fi
-                #gpg="%{F${color_icon}}${sep_l_left}%{B${color_sec_b2}}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_gpg}%{F${color_fore} T1} ${lock}"
-                ## Using mail_post_sep from EMA case, to help with color when mail highlighted
-                gpg="${mail_post_sep}%{F${color_icon}}%{B${color_sec_b2}}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_gpg}%{F${color_fore} T1} ${lock}"
+
+                gpg="%{F${gpg_cback}}${sep_left}%{F${color_icon} B${gpg_cback}} %{T2}${icon_gpg}%{F${color_fore} T1} ${lock}"
             fi
             ;;
         ### End GPG Case ### }}}
 
+        ### RSS Case ### {{{
+        RSS*)
+            rss_arr=(${line#???})
+            if [ -n "${rss_arr}" ]; then
+                rss="%{F${rss_cback}}${sep_left}%{F${color_icon} B${rss_cback}} %{T2}${icon_rss}%{F${color_fore} T1} ${rss_arr}"
+            fi
+            ;;
+        ### End RSS Case ### }}}
+
         ### Thinkpad Multi Battery ### {{{
         ## Icon         0         1         2         3          4
         ## Bat >=      NA        11        37        63         90
@@ -266,29 +275,29 @@ while read -r line ; do
 
                 ## Set Colors
                 if [ ${tmb_arr_perc} -le ${bat_alert_low} ]; then
-                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_cback=${color_bat_low};
+                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_set_back=${color_bat_low};
                 elif [ ${tmb_arr_perc} -le ${bat_alert_mid} ]; then
-                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_cback=${color_bat_mid};
+                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_set_back=${color_bat_mid};
                 elif [ ${tmb_arr_perc} -le ${bat_alert_high} ]; then
-                    bat_cicon=${color_bat_high}; bat_cfore=${color_fore}; bat_cback=${color_sec_b1};
+                    bat_cicon=${color_bat_high}; bat_cfore=${color_fore}; bat_set_back=${bat_cback};
                 else
-                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_cback=${color_sec_b1};
+                    bat_cicon=${color_icon}; bat_cfore=${color_fore}; bat_set_back=${bat_cback};
                 fi
 
                 ## Set charging icon
                 if [ "${tmb_arr_stat}" == "C" ]; then
                     bat_icon=${icon_bat_plug}; bat_cicon=${color_bat_plug};
                 fi
-                bat="%{F${bat_cback}}${sep_left}%{F${bat_cicon} B${bat_cback}} %{T2}${bat_icon}%{F- T1} ${tmb_arr_perc}%"
+                bat="%{F${bat_set_back}}${sep_left}%{F${bat_cicon} B${bat_set_back}} %{T2}${bat_icon}%{F- T1} ${tmb_arr_perc}%"
 
                 if [ "${tmb_arr_time}" != "none" ]; then
-                    bat_time="%{F${color_icon}}${sep_l_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_bat_time}%{F- T1} ${tmb_arr_time}"
+                    bat_time="%{F${color_icon}}${sep_l_left}%{F${color_icon} B${bat_cback}} %{T2}${icon_bat_time}%{F- T1} ${tmb_arr_time}"
                   else
                     bat_time=""
                 fi
               else
                 ## If a desktop, show a plug icon. This stops the ugly segment merge that that would happen.
-                bat="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_bat_plug}%{F- T1}"
+                bat="%{F${bat_cback}}${sep_left}%{F${color_icon} B${bat_cback}} %{T2}${icon_bat_plug}%{F- T1}"
             fi
             ;;
         ### End Thinkpad Multi Battery ### }}}
@@ -319,7 +328,7 @@ while read -r line ; do
                 ## Note: you should read http://tldp.org/LDP/abs/html/parameter-substitution.html
                 mmpd_song="${mmpd_arr:0:${music_limit}}";
             fi
-            mmpd="%{F${color_sec_b2}}${sep_left}%{B${color_sec_b2}}%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${icon_music}%{F${color_fore} T1} ${mmpd_song}"
+            mmpd="%{F${mmpd_alt_cback}}${sep_left}%{B${mmpd_alt_cback}}%{F${mmpd_cback}}${sep_left}%{F${color_icon} B${mmpd_cback}} %{T2}${icon_music}%{F${color_fore} T1} ${mmpd_song}"
             ;;
         ### End Multi Music Player Display ### }}}
 
@@ -358,16 +367,16 @@ while read -r line ; do
     ext_toggle="$(cat /tmp/i3_lemonbar_ip_${USER} 2>/dev/null)"
 
     if [ "${ext_toggle}" = 2 ]; then
-        local_ip="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${net_icon}%{F- T1} ${scrub_ip}"
-        filler="%{F${color_sec_b2}}${sep_left}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_ext_ip}%{F- T1}"
+        local_ip="%{F${local_ip_cback}}${sep_left}%{F${color_icon} B${local_ip_cback}} %{T2}${net_icon}%{F- T1} ${scrub_ip}"
+        filler="%{F${ext_ip_cback}}${sep_left}%{F${color_icon} B${ext_ip_cback}} %{T2}${icon_ext_ip}%{F- T1}"
         mast_net="${local_ip}${stab}${wifi}${stab}${filler}${stab}${vpn}${stab}"
       elif [ "${ext_toggle}" = 1 ]; then
         if [ "${net_arr_ipv6}" = "none" ]; then
             net_arr_ipv6="No IPv6"
         fi
 
-        filler="%{F${color_sec_b1}}${sep_left}%{F${color_icon} B${color_sec_b1}} %{T2}${net_icon}%{F- T1}"
-        ipv6_ip="%{F${color_sec_b2}}${sep_left}%{F${color_icon} B${color_sec_b2}} %{T2}${icon_ext_ip}%{F- T1} ${net_arr_ipv6}"
+        filler="%{F${local_ip_cback}}${sep_left}%{F${color_icon} B${local_ip_cback}} %{T2}${net_icon}%{F- T1}"
+        ipv6_ip="%{F${ext_ip_cback}}${sep_left}%{F${color_icon} B${ext_ip_cback}} %{T2}${icon_ext_ip}%{F- T1} ${net_arr_ipv6}"
         mast_net="${filler}${stab}${ipv6_ip}"
       else
         mast_net="${local_ip}${stab}${wifi}${stab}${ext_ip}${stab}${vpn}${stab}"
@@ -385,6 +394,7 @@ while read -r line ; do
 
     printf "%s\n" "%{l}${wsp}${title} %{r}\
 ${mmpd}${stab}\
+${rss}${stab}\
 ${email}${stab}\
 ${gpg}${stab}\
 ${mast_net}${stab}\

+ 16 - 5
mpv/mpv.conf

@@ -3,20 +3,31 @@
 # https://notabug.org/demure/dotfiles/
 # legacy repo http://github.com/demure/dotfiles
 
-fs=yes              # Fullscreen
+profile=main        ## Default to Main profile
 
+### These are always loaded settings
 ## subtile stuff
-sub-ass=yes         # Better subs
+sub-ass=yes         ## Better subs
 slang=en,eng,jpn,ja,jn
 alang=jpn,ja,jn,en,eng
 
-
 ## Misc
-#index=yes          # can seek in file still downloading
+#index=yes          ## can seek in file still downloading
 
 ## Volume
-volume-max=1000     # normally 10 - 10000
+volume-max=1000     ## normally 10 - 10000
 #af=drc
 
 ## Set max youtube res
 ytdl-format=bestvideo[height<=?1080][vcodec!=vp9]+bestaudio/best
+
+## Declare Main profile
+[main]
+fs=yes              ## Fullscreen
+
+## Declare Podcast profile
+[pod]
+fs=no               ## No fullscreen
+autofit-larger=300x300      ## Set max pixels
+osd-msg1="${audio-pts}/${duration}"
+

+ 0 - 1
mutt/muttrc

@@ -98,7 +98,6 @@ source ~/.mutt/accounts/sdf.muttrc
 folder-hook emu/*                   source ~/.mutt/accounts/emu.muttrc
 folder-hook sdf/*                   source ~/.mutt/accounts/sdf.muttrc
 folder-hook gmail/*                 source ~/.mutt/accounts/gmail.muttrc
-folder-hook aha/*                   source ~/.mutt/accounts/aha.muttrc
 folder-hook /var/spool/mail/$USER/* source ~/.mutt/accounts/local.muttrc
 ### End Account }}}
 

+ 0 - 0
newsboat/config


Some files were not shown because too many files changed in this diff