[download]

local/bin/icon

   1 #!/bin/bash
   2 
   3 icon(){
   4 
   5 shopt -s nocasematch
   6 case $1 in
   7     apps      ) i=;;
   8     bloge     ) i=;;
   9     browser   ) i=;;
  10     dev       ) i=;;
  11     document  ) i=;;
  12     dot       ) i=;;
  13     editor    ) i=;;
  14     emoji     ) i=;;
  15     files     ) i=;;
  16     grab      ) i=;;
  17     gtk       ) i=;;
  18     hud       ) i=;;
  19     kino      ) i=;;
  20     man       ) i=;;
  21     pass      ) i=聾;;
  22     player    ) i=($(player -f \$icon) ) i=$i;;
  23     pochta    ) i=屮;;
  24     start     ) i=;;
  25     terminal  ) i=;;
  26     theme     ) i=;;
  27     vbox      ) i=;;
  28     wallpapers) i=;;
  29     wiki      ) i=;;
  30     windows   ) i=;;
  31 
  32     audio      ) i=蓼;;
  33     audio-*usb*) i=禍;;
  34     audio-*    ) i=菉;;
  35 
  36     battery-c*100*) i=;;
  37     battery-c*9?* ) i=;;
  38     battery-c*8?* ) i=;;
  39     battery-c*7?* ) i=;;
  40     battery-c*6?* ) i=;;
  41     battery-c*5?* ) i=;;
  42     battery-c*4?* ) i=;;
  43     battery-c*3?* ) i=;;
  44     battery-c*2?* ) i=;;
  45     battery-c*1?* ) i=;;
  46     battery-c*?*  ) i=;;
  47     battery-*100* ) i=;;
  48     battery-*9?*  ) i=;;
  49     battery-*8?*  ) i=;;
  50     battery-*7?*  ) i=;;
  51     battery-*6?*  ) i=;;
  52     battery-*5?*  ) i=;;
  53     battery-*4?*  ) i=;;
  54     battery-*3?*  ) i=;;
  55     battery-*2?*  ) i=;;
  56     battery-*1?*  ) i=;;
  57     battery-*?*   ) i=;;
  58     battery-*     ) i=;;
  59     battery       ) i=$(icon battery-"$(battery | sed 1q | cut -f 1,2)");;
  60 
  61     daylight-рассвет*) i=;;
  62     daylight-восход* ) i=;;
  63     daylight-зенит*  ) i=;;
  64     daylight-заход*  ) i=;;
  65     daylight-сумерки*) i=;;
  66     daylight-*       ) i=;;
  67     daylight         ) i=$(icon daylight-$(daylight | awk '{ print $1; exit }'));;
  68 
  69     days-0) i=;;
  70     days-1) i=;;
  71     days-*) i=;;
  72     days  ) i=$(icon days-$(days | grep -c 🎂));;
  73 
  74     e3372-*2g*) i=ﰐ;;
  75     e3372-*3g*) i=ﰑ;;
  76     e3372-*4g*) i=ﰒ;;
  77     e3372-*   ) i=說;;
  78     e3372     ) i=$(icon e3372-$(cut -f 2 ~/.cache/e3372));;
  79 
  80     inbox-0) i=;;
  81     inbox-*) i=;;
  82     inbox  ) i=$(icon inbox-$(inbox | wc -l));;
  83 
  84     mail-0) i=;;
  85     mail-*) i=;;
  86     mail  ) i=$(icon mail-$(inbox | wc -l));;
  87 
  88     mixer-婢) i=婢;;
  89     mixer-* ) i=;;
  90     mixer   ) i=$(icon mixer-$(cut -f 2 ~/.cache/volume));;
  91 
  92     moonday-0 ) i=;;
  93     moonday-11) i=;;
  94     moonday-12) i=;;
  95     moonday-13) i=;;
  96     moonday-14) i=;;
  97     moonday-15) i=;;
  98     moonday-16) i=;;
  99     moonday-2 ) i=;;
 100     moonday-31) i=;;
 101     moonday-32) i=;;
 102     moonday-33) i=;;
 103     moonday-34) i=;;
 104     moonday-35) i=;;
 105     moonday-36) i=;;
 106     moonday-4 ) i=;;
 107     moonday-51) i=;;
 108     moonday-52) i=;;
 109     moonday-53) i=;;
 110     moonday-54) i=;;
 111     moonday-55) i=;;
 112     moonday-56) i=;;
 113     moonday-6 ) i=;;
 114     moonday-71) i=;;
 115     moonday-72) i=;;
 116     moonday-73) i=;;
 117     moonday-74) i=;;
 118     moonday-75) i=;;
 119     moonday-76) i=;;
 120     moonday-* ) i=;;
 121     moonday   ) i=$(icon moonday-"$(sed 1q ~/.cache/moonday)");;
 122 
 123     network-e*) i=;;
 124     network-w*) i=;;
 125     network-* ) i=;;
 126     network   ) i=$(icon network-$(ip -o r g 1 | cut -d ' ' -f 5));;
 127 
 128     news          ) i=;;
 129     news-*youtube*) i=輸;;
 130     news-*reddit* ) i=樓;;
 131     news-*        ) i=留;;
 132 
 133     os-*alpine*) i=;;
 134     os-arch*   ) i=;;
 135     os-*bsd*   ) i=;;
 136     os-*mint*  ) i=;;
 137     os-*ubuntu*) i=;;
 138     os-*win*   ) i=;;
 139     os         ) source /etc/os-release; i=$(icon os-${ID:-$(uname -s)});;
 140     os-*       ) i=$(nerdfonts | awk "/linux-${1:3}/ { print \$1 }") i=${i:-};;
 141 
 142     picker    ) i=;;
 143     picker-ocr) i=廓;;
 144     picker-qr*) i=;;
 145     picker-*  ) i=;;
 146 
 147     power         ) i=;;
 148     power-lock    ) i=;;
 149     power-quit    ) i=;;
 150     power-sleep   ) i=鈴;;
 151     power-reboot  ) i=;;
 152     power-reload  ) i=;;
 153     power-restart ) i=;;
 154     power-poweroff) i=;;
 155 
 156     recent           ) i=;;
 157     recent-audacious*) i=嗢;;
 158     recent-audacity* ) i=;;
 159     recent-blender*  ) i=;;
 160     recent-chromium* ) i=;;
 161     recent-fireworks*) i=;;
 162     recent-gimp*     ) i=;;
 163     recent-godot*    ) i=;;
 164     recent-gvim*     ) i=;;
 165     recent-inkscape* ) i=;;
 166     recent-krita*    ) i=;;
 167 
 168     redshift- ) i=;;
 169     redshift-*) i=;;
 170     redshift  ) i=$(icon redshift-$(pidof redshift));;
 171 
 172     temperature      ) i=糖;;
 173     temperature-*cpu*) i=;;
 174     temperature-*gpu*) i=ﮕ;;
 175     temperature-*mbr*) i=﬙;;
 176     temperature-*ssd*) i=;;
 177     temperature-*hdd*) i=;;
 178     temperature-*fan*) i=;;
 179 
 180     tor- ) i=輦;;
 181     tor-*) i=聯;;
 182     tor  ) i=$(icon tor-$(pidof tor));;
 183 
 184     torrents       ) i=;;
 185     torrents-[Dda]*) i=;;
 186     torrents-[Qq]* ) i=;;
 187     torrents-comp* ) i=;;
 188     torrents-Seed* ) i=;;
 189     torrents-uplo* ) i=;;
 190     torrents-Up    ) i=;;
 191     torrents-[Sp]* ) i=;;
 192     torrents-*DL*  ) i=;;
 193     torrents-*UP*  ) i=;;
 194     torrents-Idle* ) i=;;
 195     torrents-*     ) i=;;
 196 
 197     weather-skc_d*   ) i=;;
 198     weather-skc_n*   ) i=;;
 199     weather-bkn_d*   ) i=;;
 200     weather-bkn_n*   ) i=;;
 201     weather-bkn*ra_d*) i=;;
 202     weather-bkn*ra_n*) i=;;
 203     weather-ovc*ra*  ) i=;;
 204     weather-ovc*sn*  ) i=;;
 205     weather-ovc_ts*  ) i=朗;;
 206     weather-ovc*     ) i=;;
 207     weather-*        ) i=;;
 208     weather          ) i=$(icon weather-"$(sed 1q ~/.cache/weather)");;
 209 
 210       ?) i=$1;;
 211      -x) xargs -rI % icon $2${2:+-}% %; exit;;
 212     *-*) i=$(icon ${1%-*});;
 213      '') grep -o '^\s\+\w\+' $0 | tr -d ' ' | sort -u;;
 214       *) i=($(nerdfont | grep -im 1 "$1")) i=${i:-};;
 215 esac 2>&-
 216 
 217 [[ $ICON_FIX ]] &&
 218 echo  "${i// }${2:+ }${@:2}" ||
 219 echo "${i// } ${2:+ }${@:2}"
 220 
 221 }
 222 
 223 return 2>&-
 224 icon "$@"