Improve Polybar config
This commit is contained in:
		@@ -53,7 +53,6 @@ margin-bottom = 5
 | 
			
		||||
* Top Bar
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [bar/top]
 | 
			
		||||
  # monitor = ${env:MONITOR:eDP1}
 | 
			
		||||
  enable-ipc = true
 | 
			
		||||
  override-redirect = false
 | 
			
		||||
  bottom = false
 | 
			
		||||
@@ -79,13 +78,10 @@ margin-bottom = 5
 | 
			
		||||
  font-0 = SauceCodePro Nerd Font:style=Medium,Regular:pixelsize=10;1
 | 
			
		||||
  font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
 | 
			
		||||
  font-2 = Weather Icons:size=10;1
 | 
			
		||||
  # font-3 = siji:pixelsize=10;1
 | 
			
		||||
 | 
			
		||||
  # modules-left = mpd pulseaudio
 | 
			
		||||
  # modules-center = i3 xwindow
 | 
			
		||||
  modules-left = i3
 | 
			
		||||
  modules-center = xwindow
 | 
			
		||||
  modules-right = nordvpn unread_mail cpu battery temperature date
 | 
			
		||||
  modules-right = unread_mail cpu battery temperature date
 | 
			
		||||
 | 
			
		||||
  tray-position = right
 | 
			
		||||
  tray-padding = 2
 | 
			
		||||
@@ -99,7 +95,6 @@ margin-bottom = 5
 | 
			
		||||
* Bottom Bar
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [bar/bottom]
 | 
			
		||||
  # monitor = ${env:MONITOR:eDP1}
 | 
			
		||||
  enable-ipc = true
 | 
			
		||||
  override-redirect = false
 | 
			
		||||
  bottom = true
 | 
			
		||||
@@ -129,7 +124,7 @@ margin-bottom = 5
 | 
			
		||||
 | 
			
		||||
  modules-left = mpd pulseaudio
 | 
			
		||||
  # modules-center = xwindow
 | 
			
		||||
  modules-right = screenshot weather emacs caffeine redshift
 | 
			
		||||
  modules-right = filesystem xkeyboard nordvpn chromecast screenshot weather emacs caffeine redshift
 | 
			
		||||
 | 
			
		||||
  # tray-position = right
 | 
			
		||||
  # tray-padding = 2
 | 
			
		||||
@@ -147,7 +142,7 @@ margin-bottom = 5
 | 
			
		||||
  label = %title:0:30:...%
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Current Layour of the Keyboard
 | 
			
		||||
* Current Layout of the Keyboard
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [module/xkeyboard]
 | 
			
		||||
  type = internal/xkeyboard
 | 
			
		||||
@@ -155,7 +150,6 @@ margin-bottom = 5
 | 
			
		||||
  # List of indicators to ignore
 | 
			
		||||
  blacklist-0 = num lock
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  format = <label-layout>
 | 
			
		||||
  format-prefix = " "
 | 
			
		||||
  format-prefix-foreground = ${colors.foreground}
 | 
			
		||||
@@ -175,7 +169,7 @@ margin-bottom = 5
 | 
			
		||||
  # List of mountpoints to display
 | 
			
		||||
  mount-0 = /
 | 
			
		||||
 | 
			
		||||
  label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
 | 
			
		||||
  label-mounted = %{Fcolors.blue}%mountpoint%%{F-}: %percentage_used%%
 | 
			
		||||
  label-unmounted = %mountpoint%
 | 
			
		||||
  label-unmounted-foreground = ${colors.comments}
 | 
			
		||||
#+END_SRC
 | 
			
		||||
@@ -191,12 +185,12 @@ margin-bottom = 5
 | 
			
		||||
 | 
			
		||||
** TODO - Choose some nice icons
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
ws-icon-default = 
 | 
			
		||||
ws-icon-0 = 1;
 | 
			
		||||
ws-icon-1 = 2;
 | 
			
		||||
ws-icon-2 = 3;
 | 
			
		||||
ws-icon-3 = 4;
 | 
			
		||||
ws-icon-4 = 5;
 | 
			
		||||
ws-icon-default = 
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
@@ -243,7 +237,7 @@ label-urgent-padding = 1
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/mpd]
 | 
			
		||||
type = internal/mpd
 | 
			
		||||
format-online = <icon-prev> <toggle> <icon-next> <icon-repeat> <icon-random> <bar-progress> %{A1:termite -e "ncmpcpp" &:}<label-song>%{A}
 | 
			
		||||
format-online = <icon-prev> <toggle> <icon-next> %{A1:termite -e "ncmpcpp" &:}<label-song>%{A}
 | 
			
		||||
 | 
			
		||||
format-online-spacing = 0
 | 
			
		||||
format-online-padding = 0
 | 
			
		||||
@@ -297,126 +291,123 @@ ramp-11 = 
 | 
			
		||||
 | 
			
		||||
* CPU Usage
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/cpu]
 | 
			
		||||
type = internal/cpu
 | 
			
		||||
interval = 2
 | 
			
		||||
  [module/cpu]
 | 
			
		||||
  type = internal/cpu
 | 
			
		||||
  interval = 2
 | 
			
		||||
 | 
			
		||||
format-prefix-foreground = ${colors.foreground}
 | 
			
		||||
  format-prefix-foreground = ${colors.foreground}
 | 
			
		||||
 | 
			
		||||
format-underline = ${colors.background}
 | 
			
		||||
  format-underline = ${colors.background}
 | 
			
		||||
 | 
			
		||||
label = %{A1:termite -e "htop" &:}  %percentage:2%% %{A}
 | 
			
		||||
  label = %{A1:termite -e "htop" &:}  %percentage:2%% %{A}
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Available Memory
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/memory]
 | 
			
		||||
type = internal/memory
 | 
			
		||||
  [module/memory]
 | 
			
		||||
  type = internal/memory
 | 
			
		||||
 | 
			
		||||
interval = 2
 | 
			
		||||
  interval = 2
 | 
			
		||||
 | 
			
		||||
format-prefix = " "
 | 
			
		||||
  format-prefix = " "
 | 
			
		||||
 | 
			
		||||
format-prefix-foreground = ${colors.foreground-dark}
 | 
			
		||||
format-underline = #4bffdc
 | 
			
		||||
  format-prefix-foreground = ${colors.foreground-dark}
 | 
			
		||||
  format-underline = #4bffdc
 | 
			
		||||
 | 
			
		||||
label = %percentage_used%%
 | 
			
		||||
  label = %percentage_used%%
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Date
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/date]
 | 
			
		||||
type = internal/date
 | 
			
		||||
interval = 1
 | 
			
		||||
  [module/date]
 | 
			
		||||
  type = internal/date
 | 
			
		||||
  interval = 1
 | 
			
		||||
 | 
			
		||||
# Open google calendar on left right
 | 
			
		||||
date = %{A1:qutebrowser https\://calendar.google.com/ &:} %d-%m%{A}
 | 
			
		||||
date-alt = "%{A1:qutebrowser https\://calendar.google.com/ &:} %d-%m-%Y%{A}"
 | 
			
		||||
  # Open google calendar on left right
 | 
			
		||||
  date = %{A1:$BROWSER https\://calendar.google.com/ &:} %d-%m%{A}
 | 
			
		||||
  date-alt = "%{A1:$BROWSER https\://calendar.google.com/ &:} %d-%m-%Y%{A}"
 | 
			
		||||
 | 
			
		||||
time =  %H:%M
 | 
			
		||||
time-alt =  %H:%M:%S
 | 
			
		||||
  time =  %H:%M
 | 
			
		||||
  time-alt =  %H:%M:%S
 | 
			
		||||
 | 
			
		||||
label = %date% %time%
 | 
			
		||||
  label = %date% %time%
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Sound Volume
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/pulseaudio]
 | 
			
		||||
type = internal/pulseaudio
 | 
			
		||||
  [module/pulseaudio]
 | 
			
		||||
  type = internal/pulseaudio
 | 
			
		||||
 | 
			
		||||
# Open pavucontrol on left right
 | 
			
		||||
format-volume =%{A1:pavucontrol &:}<label-volume> <bar-volume>%{A}
 | 
			
		||||
  # Open pavucontrol on left right
 | 
			
		||||
  format-volume =%{A1:pavucontrol &:}<label-volume> <bar-volume>%{A}
 | 
			
		||||
 | 
			
		||||
label-volume = %percentage%%
 | 
			
		||||
label-volume-foreground = ${root.foreground}
 | 
			
		||||
  label-volume = %percentage%%
 | 
			
		||||
  label-volume-foreground = ${root.foreground}
 | 
			
		||||
 | 
			
		||||
label-muted = ﱝ muted
 | 
			
		||||
  label-muted = ﱝ muted
 | 
			
		||||
 | 
			
		||||
bar-volume-width = 10
 | 
			
		||||
bar-volume-foreground-0 = ${colors.green}
 | 
			
		||||
bar-volume-foreground-1 = ${colors.green}
 | 
			
		||||
bar-volume-foreground-2 = ${colors.blue}
 | 
			
		||||
bar-volume-foreground-3 = ${colors.blue}
 | 
			
		||||
bar-volume-foreground-4 = ${colors.red}
 | 
			
		||||
bar-volume-foreground-5 = ${colors.red}
 | 
			
		||||
bar-volume-foreground-6 = ${colors.red}
 | 
			
		||||
bar-volume-gradient = false
 | 
			
		||||
bar-volume-indicator = |
 | 
			
		||||
bar-volume-indicator-font = 2
 | 
			
		||||
bar-volume-fill = ─
 | 
			
		||||
bar-volume-fill-font = 2
 | 
			
		||||
bar-volume-empty = ─
 | 
			
		||||
bar-volume-empty-font = 2
 | 
			
		||||
bar-volume-empty-foreground = ${colors.foreground}
 | 
			
		||||
  bar-volume-width = 10
 | 
			
		||||
  bar-volume-foreground-0 = ${colors.green}
 | 
			
		||||
  bar-volume-foreground-1 = ${colors.green}
 | 
			
		||||
  bar-volume-foreground-2 = ${colors.blue}
 | 
			
		||||
  bar-volume-foreground-3 = ${colors.blue}
 | 
			
		||||
  bar-volume-foreground-4 = ${colors.red}
 | 
			
		||||
  bar-volume-foreground-5 = ${colors.red}
 | 
			
		||||
  bar-volume-foreground-6 = ${colors.red}
 | 
			
		||||
  bar-volume-gradient = false
 | 
			
		||||
  bar-volume-indicator = |
 | 
			
		||||
  bar-volume-indicator-font = 2
 | 
			
		||||
  bar-volume-fill = ─
 | 
			
		||||
  bar-volume-fill-font = 2
 | 
			
		||||
  bar-volume-empty = ─
 | 
			
		||||
  bar-volume-empty-font = 2
 | 
			
		||||
  bar-volume-empty-foreground = ${colors.foreground}
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Battery
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
# TODO - open battery manager on click
 | 
			
		||||
[module/battery]
 | 
			
		||||
type = internal/battery
 | 
			
		||||
  [module/battery]
 | 
			
		||||
  type = internal/battery
 | 
			
		||||
 | 
			
		||||
battery = BAT0
 | 
			
		||||
adapter = ADP1
 | 
			
		||||
full-at = 95
 | 
			
		||||
  battery = BAT0
 | 
			
		||||
  adapter = ADP1
 | 
			
		||||
  full-at = 95
 | 
			
		||||
 | 
			
		||||
format-charging = <ramp-capacity> <label-charging>
 | 
			
		||||
format-charging-underline = ${colors.blue}
 | 
			
		||||
  format-charging = %{A1:xfce4-power-manager-settings &:}<ramp-capacity> <label-charging>%{A}
 | 
			
		||||
  format-charging-underline = ${colors.blue}
 | 
			
		||||
 | 
			
		||||
format-discharging = <ramp-capacity> <label-discharging>
 | 
			
		||||
format-discharging-underline = ${colors.red}
 | 
			
		||||
  format-discharging = %{A1:xfce4-power-manager-settings &:}<ramp-capacity> <label-discharging>%{A}
 | 
			
		||||
  format-discharging-underline = ${colors.red}
 | 
			
		||||
 | 
			
		||||
format-full-prefix = " "
 | 
			
		||||
format-full-prefix-foreground = ${colors.foreground}
 | 
			
		||||
format-full-underline = ${colors.background}
 | 
			
		||||
  format-full-prefix = %{A1:xfce4-power-manager-settings &:} %{A}
 | 
			
		||||
  format-full-prefix-foreground = ${colors.foreground}
 | 
			
		||||
  format-full-underline = ${colors.background}
 | 
			
		||||
 | 
			
		||||
ramp-capacity-0 = 
 | 
			
		||||
ramp-capacity-1 = 
 | 
			
		||||
ramp-capacity-2 = 
 | 
			
		||||
ramp-capacity-3 = 
 | 
			
		||||
ramp-capacity-4 = 
 | 
			
		||||
ramp-capacity-foreground = ${colors.foreground}
 | 
			
		||||
  ramp-capacity-0 = 
 | 
			
		||||
  ramp-capacity-1 = 
 | 
			
		||||
  ramp-capacity-2 = 
 | 
			
		||||
  ramp-capacity-3 = 
 | 
			
		||||
  ramp-capacity-4 = 
 | 
			
		||||
  ramp-capacity-foreground = ${colors.foreground}
 | 
			
		||||
 | 
			
		||||
animation-charging-0 = 
 | 
			
		||||
animation-charging-1 = 
 | 
			
		||||
animation-charging-2 = 
 | 
			
		||||
animation-charging-3 = 
 | 
			
		||||
animation-charging-4 = 
 | 
			
		||||
animation-charging-foreground = ${colors.foreground}
 | 
			
		||||
animation-charging-framerate = 750
 | 
			
		||||
  animation-charging-0 = 
 | 
			
		||||
  animation-charging-1 = 
 | 
			
		||||
  animation-charging-2 = 
 | 
			
		||||
  animation-charging-3 = 
 | 
			
		||||
  animation-charging-4 = 
 | 
			
		||||
  animation-charging-foreground = ${colors.foreground}
 | 
			
		||||
  animation-charging-framerate = 750
 | 
			
		||||
 | 
			
		||||
animation-discharging-0 = 
 | 
			
		||||
animation-discharging-1 = 
 | 
			
		||||
animation-discharging-2 = 
 | 
			
		||||
animation-discharging-3 = 
 | 
			
		||||
animation-discharging-4 = 
 | 
			
		||||
animation-discharging-foreground = ${colors.foreground}
 | 
			
		||||
animation-discharging-framerate = 750
 | 
			
		||||
  animation-discharging-0 = 
 | 
			
		||||
  animation-discharging-1 = 
 | 
			
		||||
  animation-discharging-2 = 
 | 
			
		||||
  animation-discharging-3 = 
 | 
			
		||||
  animation-discharging-4 = 
 | 
			
		||||
  animation-discharging-foreground = ${colors.foreground}
 | 
			
		||||
  animation-discharging-framerate = 750
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO Temperature
 | 
			
		||||
- [ ] Open temperature manager on click
 | 
			
		||||
 | 
			
		||||
* Temperature
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [module/temperature]
 | 
			
		||||
  type = internal/temperature
 | 
			
		||||
@@ -427,7 +418,7 @@ animation-discharging-framerate = 750
 | 
			
		||||
  ;; Temperature off one cpu core
 | 
			
		||||
  hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_input
 | 
			
		||||
 | 
			
		||||
  format = <ramp> <label>
 | 
			
		||||
  format = %{A1:termite -e "watch sensors" &:}<ramp> <label>%{A}
 | 
			
		||||
  format-underline = ${colors.background}
 | 
			
		||||
  format-warn = <ramp> <label-warn>
 | 
			
		||||
  format-warn-underline = ${colors.red}
 | 
			
		||||
@@ -444,37 +435,6 @@ animation-discharging-framerate = 750
 | 
			
		||||
  ramp-foreground = ${colors.foreground}
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Power Menu
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/powermenu]
 | 
			
		||||
type = custom/menu
 | 
			
		||||
 | 
			
		||||
expand-right = true
 | 
			
		||||
 | 
			
		||||
format-spacing = 1
 | 
			
		||||
label-open = 
 | 
			
		||||
label-open-foreground = ${colors.blue}
 | 
			
		||||
label-close = cancel
 | 
			
		||||
label-close-foreground = ${colors.blue}
 | 
			
		||||
label-separator = |
 | 
			
		||||
label-separator-foreground = ${colors.foreground}
 | 
			
		||||
 | 
			
		||||
menu-0-0 = reboot
 | 
			
		||||
menu-0-0-exec = menu-open-1
 | 
			
		||||
menu-0-1 = power off
 | 
			
		||||
menu-0-1-exec = menu-open-2
 | 
			
		||||
 | 
			
		||||
menu-1-0 = cancel
 | 
			
		||||
menu-1-0-exec = menu-open-0
 | 
			
		||||
menu-1-1 = reboot
 | 
			
		||||
menu-1-1-exec = sudo reboot
 | 
			
		||||
 | 
			
		||||
menu-2-0 = power off
 | 
			
		||||
menu-2-0-exec = sudo poweroff
 | 
			
		||||
menu-2-1 = cancel
 | 
			
		||||
menu-2-1-exec = menu-open-0
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Settings
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[settings]
 | 
			
		||||
@@ -485,8 +445,7 @@ screenchange-reload = true
 | 
			
		||||
#compositing-border = over
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO Unread Mails
 | 
			
		||||
- [ ] Add custom color when having new email
 | 
			
		||||
* Unread Mails
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/unread_mail]
 | 
			
		||||
@@ -500,6 +459,22 @@ exec = ~/.config/polybar/scripts/unread_mails.sh
 | 
			
		||||
interval = 1
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
** Unread Mail Scripts
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/unread_mails.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
#+begin_src bash
 | 
			
		||||
  mails=$(du -a ~/.mail/*/Inbox/new/* 2>/dev/null | sed -n '$=')
 | 
			
		||||
 | 
			
		||||
  if [[ -z "$mails" ]]; then
 | 
			
		||||
      echo ""
 | 
			
		||||
  else
 | 
			
		||||
      echo "%{F#859900}%{F-}"
 | 
			
		||||
  fi
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
* Redshift
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/redshift]
 | 
			
		||||
@@ -513,44 +488,71 @@ exec = ~/.config/polybar/scripts/redshift.sh
 | 
			
		||||
interval = 1
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO Calendar
 | 
			
		||||
#+begin_src conf
 | 
			
		||||
  [module/popup-calendar]
 | 
			
		||||
  type = custom/script
 | 
			
		||||
  exec = ~/scripts/popup-calendar.sh
 | 
			
		||||
  interval = 5
 | 
			
		||||
  click-left = ~/scripts/popup-calendar.sh --popup
 | 
			
		||||
** Redshift Scripts
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/redshift.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
#+begin_src bash
 | 
			
		||||
  if pgrep -x "redshift" >/dev/null; then
 | 
			
		||||
      echo "盛";
 | 
			
		||||
  else
 | 
			
		||||
      echo "";
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  if [ "$1" = "toggle" ]; then
 | 
			
		||||
      if pgrep -x "redshift" >/dev/null; then
 | 
			
		||||
          killall redshift;
 | 
			
		||||
      else
 | 
			
		||||
          nohup redshift > /dev/null 2>&1 &
 | 
			
		||||
      fi
 | 
			
		||||
  fi
 | 
			
		||||
#+end_src
 | 
			
		||||
* TODO Emacs Server
 | 
			
		||||
 | 
			
		||||
* TODO [#A] Emacs Server
 | 
			
		||||
- [ ] Emacsclient script is not working
 | 
			
		||||
 | 
			
		||||
#+begin_src conf
 | 
			
		||||
  [module/emacs]
 | 
			
		||||
  type = custom/script
 | 
			
		||||
 | 
			
		||||
  label-font = 2
 | 
			
		||||
  format-underline = ${colors.background}
 | 
			
		||||
  click-left = ~/scripts/emacsclient.sh &
 | 
			
		||||
  click-left = ~/.config/polybar/scripts/emacsclient.sh &
 | 
			
		||||
  click-right = emacs &
 | 
			
		||||
  format = <label>
 | 
			
		||||
  exec = ~/.config/polybar/scripts/emacs.sh
 | 
			
		||||
  interval = 1
 | 
			
		||||
  exec = ~/.config/polybar/scripts/emacsserver.sh
 | 
			
		||||
  interval = 5
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
** Emacs Server Scripts
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/emacs.sh
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/emacsserver.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC bash
 | 
			
		||||
if test -e "/tmp/emacs1000/server" || test -e "~/.emacs.d/server"; then
 | 
			
		||||
  if test -e "/tmp/emacs1000/server" || test -e "~/.emacs.d/server"; then
 | 
			
		||||
      echo "%{F#859900}%{F-}";
 | 
			
		||||
else
 | 
			
		||||
  else
 | 
			
		||||
      echo "";
 | 
			
		||||
fi
 | 
			
		||||
  fi
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
** Emacs Client Script
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/emacsclient.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC bash
 | 
			
		||||
  emacsclient -create-frame --alternate-editor=""
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* NordVPN
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/nordvpn]
 | 
			
		||||
type = custom/script
 | 
			
		||||
@@ -609,50 +611,145 @@ exec = echo -e "\uf0f4"
 | 
			
		||||
interval = 1
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Side panel config
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
# [bar/panel]
 | 
			
		||||
# monitor = ${env:MONITOR:eDP1}
 | 
			
		||||
# enable-ipc = true
 | 
			
		||||
# override-redirect = true
 | 
			
		||||
# bottom = false
 | 
			
		||||
#
 | 
			
		||||
# width = 30%
 | 
			
		||||
# height = 600 # 1080p - bar height - 2*border width
 | 
			
		||||
# offset-x = 70%
 | 
			
		||||
# offset-y = 27
 | 
			
		||||
# fixed-center = true
 | 
			
		||||
# spacing = 1
 | 
			
		||||
# module-margin-left = 2
 | 
			
		||||
# module-margin-right = 2
 | 
			
		||||
#
 | 
			
		||||
# border-size = 2
 | 
			
		||||
# border-color = ${colors.turquoise}
 | 
			
		||||
#
 | 
			
		||||
# background = ${colors.background}
 | 
			
		||||
# foreground = ${colors.foreground}
 | 
			
		||||
#
 | 
			
		||||
# font-0 = SauceCodePro Nerd Font:style=Medium,Regular:pixelsize=10;1
 | 
			
		||||
# font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
 | 
			
		||||
# font-2 = siji:pixelsize=10;1
 | 
			
		||||
#
 | 
			
		||||
# modules-center = lock logout hibernate reboot shutdown screenshot
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO Weather
 | 
			
		||||
* Weather
 | 
			
		||||
https://github.com/x70b1/polybar-scripts/tree/master/polybar-scripts/openweathermap-fullfeatured
 | 
			
		||||
 | 
			
		||||
#+begin_src conf
 | 
			
		||||
  [module/weather]
 | 
			
		||||
  type = custom/script
 | 
			
		||||
 | 
			
		||||
  exec = ~/.config/polybar/scripts/weather.sh
 | 
			
		||||
click-left = ~/.config/polybar/scripts/weatheropen.sh
 | 
			
		||||
 | 
			
		||||
  interval = 600
 | 
			
		||||
  label-font = 3
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
** TODO Add action when cliking on it => open webpage with meteo
 | 
			
		||||
** Emacs Server Scripts
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/weather.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
 | 
			
		||||
* TODO Network
 | 
			
		||||
#+BEGIN_SRC bash
 | 
			
		||||
  get_icon() {
 | 
			
		||||
      case $1 in
 | 
			
		||||
          01d) icon="";;
 | 
			
		||||
          01n) icon="";;
 | 
			
		||||
          02d) icon="";;
 | 
			
		||||
          02n) icon="";;
 | 
			
		||||
          03*) icon="";;
 | 
			
		||||
          04*) icon="";;
 | 
			
		||||
          09d) icon="";;
 | 
			
		||||
          09n) icon="";;
 | 
			
		||||
          10d) icon="";;
 | 
			
		||||
          10n) icon="";;
 | 
			
		||||
          11d) icon="";;
 | 
			
		||||
          11n) icon="";;
 | 
			
		||||
          13d) icon="";;
 | 
			
		||||
          13n) icon="";;
 | 
			
		||||
          50d) icon="";;
 | 
			
		||||
          50n) icon="";;
 | 
			
		||||
          ,*) icon="";
 | 
			
		||||
      esac
 | 
			
		||||
 | 
			
		||||
      echo $icon
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  get_duration() {
 | 
			
		||||
 | 
			
		||||
      osname=$(uname -s)
 | 
			
		||||
 | 
			
		||||
      case $osname in
 | 
			
		||||
          ,*BSD) date -r "$1" -u +%H:%M;;
 | 
			
		||||
          ,*) date --date="@$1" -u +%H:%M;;
 | 
			
		||||
      esac
 | 
			
		||||
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  KEY="a705adc4ce0e271801051b9460ecb1cd"
 | 
			
		||||
  CITY=""
 | 
			
		||||
  UNITS="metric"
 | 
			
		||||
  SYMBOL="°"
 | 
			
		||||
 | 
			
		||||
  API="https://api.openweathermap.org/data/2.5"
 | 
			
		||||
 | 
			
		||||
  if [ -n "$CITY" ]; then
 | 
			
		||||
      if [ "$CITY" -eq "$CITY" ] 2>/dev/null; then
 | 
			
		||||
          CITY_PARAM="id=$CITY"
 | 
			
		||||
      else
 | 
			
		||||
          CITY_PARAM="q=$CITY"
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
      current=$(curl -sf "$API/weather?appid=$KEY&$CITY_PARAM&units=$UNITS")
 | 
			
		||||
      forecast=$(curl -sf "$API/forecast?appid=$KEY&$CITY_PARAM&units=$UNITS&cnt=1")
 | 
			
		||||
  else
 | 
			
		||||
      location=$(curl -sf https://location.services.mozilla.com/v1/geolocate?key=geoclue)
 | 
			
		||||
 | 
			
		||||
      if [ -n "$location" ]; then
 | 
			
		||||
          location_lat="$(echo "$location" | jq '.location.lat')"
 | 
			
		||||
          location_lon="$(echo "$location" | jq '.location.lng')"
 | 
			
		||||
 | 
			
		||||
          current=$(curl -sf "$API/weather?appid=$KEY&lat=$location_lat&lon=$location_lon&units=$UNITS")
 | 
			
		||||
          forecast=$(curl -sf "$API/forecast?appid=$KEY&lat=$location_lat&lon=$location_lon&units=$UNITS&cnt=1")
 | 
			
		||||
      fi
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  if [ -n "$current" ] && [ -n "$forecast" ]; then
 | 
			
		||||
      current_temp=$(echo "$current" | jq ".main.temp" | cut -d "." -f 1)
 | 
			
		||||
      current_icon=$(echo "$current" | jq -r ".weather[0].icon")
 | 
			
		||||
 | 
			
		||||
      forecast_temp=$(echo "$forecast" | jq ".list[].main.temp" | cut -d "." -f 1)
 | 
			
		||||
      forecast_icon=$(echo "$forecast" | jq -r ".list[].weather[0].icon")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      if [ "$current_temp" -gt "$forecast_temp" ]; then
 | 
			
		||||
          trend="" #
 | 
			
		||||
      elif [ "$forecast_temp" -gt "$current_temp" ]; then
 | 
			
		||||
          trend="" #
 | 
			
		||||
      else
 | 
			
		||||
          trend="" #
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      sun_rise=$(echo "$current" | jq ".sys.sunrise")
 | 
			
		||||
      sun_set=$(echo "$current" | jq ".sys.sunset")
 | 
			
		||||
      now=$(date +%s)
 | 
			
		||||
 | 
			
		||||
      if [ "$sun_rise" -gt "$now" ]; then
 | 
			
		||||
          daytime=" $(get_duration "$((sun_rise-now))")"
 | 
			
		||||
      elif [ "$sun_set" -gt "$now" ]; then
 | 
			
		||||
          daytime=" $(get_duration "$((sun_set-now))")"
 | 
			
		||||
      else
 | 
			
		||||
          daytime=" $(get_duration "$((sun_rise-now))")"
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
      echo "$(get_icon "$current_icon") $current_temp$SYMBOL  $trend  $(get_icon "$forecast_icon") $forecast_temp$SYMBOL   $daytime"
 | 
			
		||||
  fi
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
** TODO Open Weather Webpage
 | 
			
		||||
  :PROPERTIES:
 | 
			
		||||
  :header-args:  :tangle ~/.config/polybar/scripts/weatheropen.sh
 | 
			
		||||
  :header-args+: :comments both :mkdirp yes
 | 
			
		||||
  :header-args+: :shebang "#!/usr/bin/env bash"
 | 
			
		||||
  :END:
 | 
			
		||||
- [ ] Find a way to open a web page with detailed forecast with the current location
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC bash
 | 
			
		||||
  # location=$(curl -sf https://location.services.mozilla.com/v1/geolocate?key=geoclue)
 | 
			
		||||
 | 
			
		||||
  # if [ -n "$location" ]; then
 | 
			
		||||
  #     location_lat="$(echo "$location" | jq '.location.lat')"
 | 
			
		||||
  #     location_lon="$(echo "$location" | jq '.location.lng')"
 | 
			
		||||
  # else
 | 
			
		||||
 | 
			
		||||
  # fi
 | 
			
		||||
  $BROWSER https://www.yahoo.com/news/weather/france/grenoble/grenoble-593720
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO [#A] Network
 | 
			
		||||
#+begin_src conf
 | 
			
		||||
  [module/network]
 | 
			
		||||
  type = internal/network
 | 
			
		||||
@@ -746,16 +843,6 @@ https://github.com/x70b1/polybar-scripts/tree/master/polybar-scripts/openweather
 | 
			
		||||
  ; animation-packetloss-framerate = 500
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
* Option Menu
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/option_menu]
 | 
			
		||||
type = custom/ipc
 | 
			
		||||
 | 
			
		||||
hook-0 = ~/.i3/scripts/polybar_wrapper.sh options_icon
 | 
			
		||||
initial = 1
 | 
			
		||||
click-left = ~/.i3/scripts/polybar_wrapper.sh options
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Logout
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
[module/logout]
 | 
			
		||||
@@ -796,8 +883,9 @@ content = ""
 | 
			
		||||
click-left = blurlock
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* TODO Screenshot
 | 
			
		||||
First it blocking the polybar, then the right click is not working
 | 
			
		||||
* TODO [#B] Screenshot
 | 
			
		||||
- [ ] the right click is not working
 | 
			
		||||
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [module/screenshot]
 | 
			
		||||
  type = custom/text
 | 
			
		||||
@@ -805,3 +893,12 @@ First it blocking the polybar, then the right click is not working
 | 
			
		||||
  click-left = scrot -e 'feh $f -x' --delay 1
 | 
			
		||||
  click-right = scrot -s -e 'feh $f -x'
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* ChromeCast Play/Pause
 | 
			
		||||
#+BEGIN_SRC conf
 | 
			
		||||
  [module/chromecast]
 | 
			
		||||
  type = custom/script
 | 
			
		||||
  content = "懶"
 | 
			
		||||
  click-left = catt play
 | 
			
		||||
  click-right = catt pause
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user