mabox-pipemenus/usr/bin/jgtint2-pipe

347 lines
12 KiB
Plaintext
Raw Normal View History

2020-09-27 12:47:00 +02:00
#!/bin/bash
2022-03-23 22:40:13 +01:00
#TODO Handle more than one tint
#TODO Reset to defaults
2020-09-27 12:47:00 +02:00
TINT2PATH="$HOME/.config/tint2"
TINT2RC="$TINT2PATH/tint2rc"
TZEN="mb-tint2-manager"
2021-05-30 12:26:18 +02:00
me="jgtint2-pipe -s"
2020-09-27 12:47:00 +02:00
case $LANG in
pl*)
2022-03-26 09:05:33 +01:00
LNG="pl"
2020-09-27 12:47:00 +02:00
TITLE="Panel Tint2"
2022-03-26 09:05:33 +01:00
POSITION="Pozycja"
2022-04-01 16:33:22 +02:00
SIZE="Rozmiar"
2022-03-26 09:05:33 +01:00
WIDTH="Szerokość"
HEIGHT="Wysokość"
MARGIN="Margines"
PADDING="Odstęp"
2022-04-01 16:33:22 +02:00
COMPACT="Kompaktowy ?"
AUTOHIDE="Autoukrywanie ?"
SIZEHIDDEN="Rozmiar gdy ukryty"
2022-04-17 11:23:43 +02:00
ICONS="Ikony"
2022-03-26 09:05:33 +01:00
RESET="Resetuj"
TOP="Góra"
BOTTOM="Dół"
2022-04-01 16:33:22 +02:00
TOPLEFT="Góra po lewej"
TOPRIGHT="Góra po prawej"
LEFT="Lewa"
RIGHT="Prawa"
BOTTOMLEFT="Dół po lewej"
BOTTOMRIGHT="Dół po prawej"
HORIZONTAL="Poziomo"
VERTICAL="Pionowo"
SPACING="Odstęp"
2022-03-26 09:05:33 +01:00
YES="Tak (1)"
NO="Nie (0)"
2020-09-27 12:47:00 +02:00
RUNNING_TINT2="Działające Tint2"
DEFAULT_TINT2RC="Domyślny tint2rc"
2021-01-30 22:00:15 +01:00
EDIT_TINT2="Edytuj plik konfiguracyjny"
APPS="Programy (Launcher)"
2021-01-30 22:00:15 +01:00
LAUNCHERS="Dodaj/usuń programy..."
2020-09-27 12:47:00 +02:00
TINT2_EDITOR="Wybierz pliki Tint2 do edycji..."
2022-03-23 22:40:13 +01:00
TINT2_CONFIGURE="Konfiguracja panelu tint2"
2020-09-27 12:47:00 +02:00
CHOOSE_TINT2="Wybierz Tint2..."
RESTART_TINT2="Restartuj Tint2"
RELOAD_TINT2="Przeładuj Tint2"
2021-01-30 22:00:15 +01:00
CONFIGURE="Konfiguruj (GUI)"
REMOVE="Usuń to menu z panelu"
TRAY_HWMON="Monitor zasobów w trayu"
2020-09-27 12:47:00 +02:00
;;
es*)
2022-03-26 09:05:33 +01:00
LNG="en"
2020-09-27 12:47:00 +02:00
TITLE="Panel Tint2"
2022-03-26 09:05:33 +01:00
POSITION="Position"
2022-04-01 16:33:22 +02:00
SIZE="Size"
2022-03-26 09:05:33 +01:00
WIDTH="Width"
HEIGHT="Height"
MARGIN="Margin"
PADDING="Padding"
COMPACT="Compact?"
AUTOHIDE="Autohide?"
2022-04-01 16:33:22 +02:00
SIZEHIDDEN="Size when hidden:"
2022-04-17 11:23:43 +02:00
ICONS="Icon theme"
2022-03-26 09:05:33 +01:00
RESET="Reset to default"
TOP="Top"
BOTTOM="Bottom"
2022-04-01 16:33:22 +02:00
TOPLEFT="TopLeft"
TOPRIGHT="TopRight"
LEFT="Left"
RIGHT="Right"
BOTTOMLEFT="BottomLeft"
BOTTOMRIGHT="BottomRight"
HORIZONTAL="Horizontal"
VERTICAL="Vertical"
SPACING="Spacing"
2022-03-26 09:05:33 +01:00
YES="Yes (1)"
NO="No (0)"
2020-09-27 12:47:00 +02:00
RUNNING_TINT2="Panel(es) en ejecución"
DEFAULT_TINT2RC="Panel tint2rc x defecto"
EDIT_TINT2="Edición manual panel"
2021-01-30 22:00:15 +01:00
APPS="Launchers"
LAUNCHERS="Add/Remove Launchers..."
2020-09-27 12:47:00 +02:00
TINT2_EDITOR="Elegir panel Tint2 a editar"
2021-01-30 22:00:15 +01:00
TINT2_CONFIGURE="Editor gráfico"
2020-09-27 12:47:00 +02:00
CHOOSE_TINT2="Elegir un panel..."
RESTART_TINT2="Reiniciar panel(es)"
RELOAD_TINT2="Reload Tint2"
2021-01-30 22:00:15 +01:00
CONFIGURE="Editor gráfico"
REMOVE="Eliminar este menú del panel"
TRAY_HWMON="Systray HW monitor"
2020-09-27 12:47:00 +02:00
;;
*)
2022-03-26 09:05:33 +01:00
LNG="en"
2020-09-27 12:47:00 +02:00
TITLE="Tint2 Panel"
2022-03-26 09:05:33 +01:00
POSITION="Position"
2022-04-01 16:33:22 +02:00
SIZE="Size"
2022-03-26 09:05:33 +01:00
WIDTH="Width"
HEIGHT="Height"
MARGIN="Margin"
PADDING="Padding"
COMPACT="Compact?"
AUTOHIDE="Autohide?"
2022-04-01 16:33:22 +02:00
SIZEHIDDEN="Size when hidden:"
2022-04-17 11:23:43 +02:00
ICONS="Icon theme"
2022-03-26 09:05:33 +01:00
RESET="Reset to default"
TOP="Top"
BOTTOM="Bottom"
2022-04-01 16:33:22 +02:00
TOPLEFT="TopLeft"
TOPRIGHT="TopRight"
LEFT="Left"
RIGHT="Right"
BOTTOMLEFT="BottomLeft"
BOTTOMRIGHT="BottomRight"
HORIZONTAL="Horizontal"
VERTICAL="Vertical"
SPACING="Spacing"
2022-03-26 09:05:33 +01:00
YES="Yes (1)"
NO="No (0)"
2020-09-27 12:47:00 +02:00
RUNNING_TINT2="Running Tint2"
DEFAULT_TINT2RC="Default tint2rc"
2021-01-30 22:00:15 +01:00
EDIT_TINT2="Edit config file"
APPS="Launchers"
LAUNCHERS="Add/Remove Launchers..."
2020-09-27 12:47:00 +02:00
TINT2_EDITOR="Choose Tint2 to edit"
2022-03-23 22:40:13 +01:00
TINT2_CONFIGURE="Configure tint2 panel"
2020-09-27 12:47:00 +02:00
CHOOSE_TINT2="Choose Tint2..."
RESTART_TINT2="Restart Tint2"
RELOAD_TINT2="Reload Tint2"
2021-01-30 22:00:15 +01:00
CONFIGURE="Configure (GUI)"
REMOVE="Remove this menu from panel"
TRAY_HWMON="Systray HW monitor"
2020-09-27 12:47:00 +02:00
;;
esac
2022-03-23 22:40:13 +01:00
getvalues () {
2022-04-01 16:33:22 +02:00
read VE HO OR <<< "$(grep panel_position ${TINT} | cut -d'=' -f2)"
2022-03-23 22:40:13 +01:00
read W H <<< "$(grep panel_size ${TINT} | cut -d'=' -f2)"
read HOR VERT <<< "$(grep panel_margin ${TINT} | cut -d'=' -f2)"
2022-04-01 16:33:22 +02:00
read PHOR PVERT SPACE <<< "$(grep panel_padding ${TINT} | cut -d'=' -f2)"
2022-03-23 22:40:13 +01:00
read SHRINK <<< "$(grep panel_shrink ${TINT} | cut -d'=' -f2)"
2022-03-26 09:05:33 +01:00
read HIDE <<< "$(grep "autohide " ${TINT} | cut -d'=' -f2)"
2022-04-17 11:23:43 +02:00
read ICONTHEME <<< "$(grep "launcher_icon_theme" ${TINT} | cut -d'=' -f2)"
2022-03-23 22:40:13 +01:00
}
qactions () {
2022-04-01 16:33:22 +02:00
out+=("<tt>$(printf "%-20s %20s" "$POSITION" "[ <b>$VE $HO</b> ]")</tt>,^checkout(ppos$i)")
out+=("<tt>$(printf "%-20s %20s" "$SIZE" "[ <b>$W</b> ]")</tt>,^checkout(pwidth$i)")
out+=("<tt>$(printf "%-20s %20s" "$WIDTH" "[ <b>$H</b> ]")</tt>,^checkout(pheight$i)")
2022-03-26 09:05:33 +01:00
out+=("<tt>$(printf "%-20s %20s" "$MARGIN" "[ <b>$HOR $VERT</b> ]")</tt>,^checkout(pmargin$i)")
2022-04-01 16:33:22 +02:00
out+=("<tt>$(printf "%-20s %20s" "$PADDING" "[ <b>$PHOR $PVERT $SPACE</b> ]")</tt>,^checkout(ppadding$i)")
2022-03-26 09:05:33 +01:00
out+=("<tt>$(printf "%-20s %20s" "$AUTOHIDE" "[ <b>$HIDE</b> ]")</tt>,^checkout(phide$i)")
2022-03-23 22:40:13 +01:00
out+=("^sep()")
2022-04-17 11:23:43 +02:00
out+=("$ICONS [ <b>$ICONTHEME</b> ],^checkout(iconthemes)")
out+=("^sep()")
2022-03-26 09:05:33 +01:00
if [ -f "/usr/share/mabox/lang/${LNG}/.config/tint2/${TINT2}" ];then
out+=("$RESET,t2ctl reset ${TINT2};me")
2022-03-23 22:40:13 +01:00
out+=("^sep()")
2022-03-26 09:05:33 +01:00
fi
2022-04-17 11:23:43 +02:00
out2+=("^tag(iconthemes)")
for item in "/usr/share/icons"/*; do
if [[ -d $item ]]; then
out2+=("${item##*/},t2ctl icontheme ${item##*/} ${TINT};$me")
fi
done
2022-03-23 22:40:13 +01:00
out2+=("^tag(ppos$i)")
2022-03-26 09:05:33 +01:00
out2+=("^sep($POSITION)")
2022-04-01 16:33:22 +02:00
out2+=("^sep($HORIZONTAL)")
out2+=("$TOP,t2ctl position tch ${TINT};$me")
out2+=("$BOTTOM,t2ctl position bch ${TINT};$me")
out2+=("^sep()")
out2+=("$TOPLEFT,t2ctl position tlh ${TINT};$me")
out2+=("$TOPRIGHT,t2ctl position trh ${TINT};$me")
out2+=("$BOTTOMLEFT,t2ctl position blh ${TINT};$me")
out2+=("$BOTTOMRIGHT,t2ctl position brh ${TINT};$me")
out2+=("^sep($VERTICAL)")
out2+=("$LEFT,t2ctl position clv ${TINT};$me")
out2+=("$RIGHT,t2ctl position crv ${TINT};$me")
out2+=("^sep()")
out2+=("$TOPLEFT,t2ctl position tlv ${TINT};$me")
out2+=("$TOPRIGHT,t2ctl position trv ${TINT};$me")
out2+=("$BOTTOMLEFT,t2ctl position blv ${TINT};$me")
out2+=("$BOTTOMRIGHT,t2ctl position brv ${TINT};$me")
2022-03-23 22:40:13 +01:00
out2+=("^tag(pwidth$i)")
2022-04-01 16:33:22 +02:00
out2+=("^sep($SIZE)")
2022-03-23 22:40:13 +01:00
out2+=("100%,t2ctl width 100% ${TINT};$me")
out2+=("95%,t2ctl width 95% ${TINT};$me")
out2+=("90%,t2ctl width 90% ${TINT};$me")
out2+=("80%,t2ctl width 80% ${TINT};$me")
out2+=("75%,t2ctl width 75% ${TINT};$me")
out2+=("60%,t2ctl width 60% ${TINT};$me")
2022-04-01 16:33:22 +02:00
out2+=("50%,t2ctl width 50% ${TINT};$me")
out2+=("40%,t2ctl width 40% ${TINT};$me")
out2+=("30%,t2ctl width 30% ${TINT};$me")
out2+=("^sep()")
out2+=("<tt>$(printf "%-20s %20s" "$COMPACT" "[ <b>$SHRINK</b> ]")</tt>,^checkout(pcompact$i)")
2022-03-23 22:40:13 +01:00
out2+=("")
out2+=("^tag(pheight$i)")
2022-04-01 16:33:22 +02:00
out2+=("^sep($WIDTH)")
2022-03-23 22:40:13 +01:00
out2+=("24,t2ctl height 24 ${TINT};$me")
out2+=("28,t2ctl height 28 ${TINT};$me")
out2+=("32,t2ctl height 32 ${TINT};$me")
out2+=("40,t2ctl height 40 ${TINT};$me")
2022-04-01 16:33:22 +02:00
out2+=("48,t2ctl height 48 ${TINT};$me")
out2+=("60,t2ctl height 60 ${TINT};$me")
2022-03-23 22:40:13 +01:00
out2+=("^tag(pmargin$i)")
2022-04-01 16:33:22 +02:00
out2+=("^sep($HORIZONTAL)")
2022-03-23 22:40:13 +01:00
out2+=("0,t2ctl marginh 0 ${TINT};$me")
out2+=("1,t2ctl marginh 1 ${TINT};$me")
out2+=("2,t2ctl marginh 2 ${TINT};$me")
out2+=("4,t2ctl marginh 4 ${TINT};$me")
out2+=("")
2022-04-01 16:33:22 +02:00
out2+=("^sep($VERTICAL)")
2022-03-23 22:40:13 +01:00
out2+=("0,t2ctl marginv 0 ${TINT};$me")
out2+=("1,t2ctl marginv 1 ${TINT};$me")
out2+=("2,t2ctl marginv 2 ${TINT};$me")
out2+=("4,t2ctl marginv 4 ${TINT};$me")
out2+=("^tag(ppadding$i)")
2022-04-01 16:33:22 +02:00
out2+=("^sep($HORIZONTAL)")
2022-03-23 22:40:13 +01:00
out2+=("0,t2ctl paddingh 0 ${TINT};$me")
out2+=("1,t2ctl paddingh 1 ${TINT};$me")
out2+=("2,t2ctl paddingh 2 ${TINT};$me")
out2+=("4,t2ctl paddingh 4 ${TINT};$me")
out2+=("")
2022-04-01 16:33:22 +02:00
out2+=("^sep($VERTICAL)")
2022-03-23 22:40:13 +01:00
out2+=("0,t2ctl paddingv 0 ${TINT};$me")
out2+=("1,t2ctl paddingv 1 ${TINT};$me")
out2+=("2,t2ctl paddingv 2 ${TINT};$me")
out2+=("4,t2ctl paddingv 4 ${TINT};$me")
2022-04-01 16:33:22 +02:00
out2+=("^sep($SPACING)")
2022-03-23 22:40:13 +01:00
out2+=("0,t2ctl spacing 0 ${TINT};$me")
out2+=("1,t2ctl spacing 1 ${TINT};$me")
out2+=("2,t2ctl spacing 2 ${TINT};$me")
out2+=("4,t2ctl spacing 4 ${TINT};$me")
out2+=("^tag(pcompact$i)")
2022-03-26 09:05:33 +01:00
out2+=("^sep($COMPACT)")
out2+=("$NO,t2ctl shrink 0 ${TINT};$me")
out2+=("$YES,t2ctl shrink 1 ${TINT};$me")
out2+=("^tag(phide$i)")
out2+=("^sep($AUTOHIDE)")
out2+=("$NO,t2ctl autohide 0 ${TINT};$me")
2022-04-01 16:33:22 +02:00
out2+=("$YES,t2ctl autohide 1 ${TINT}")
out2+=("^sep($SIZEHIDDEN)")
out2+=("1,t2ctl hideheight 1 ${TINT}")
out2+=("2,t2ctl hideheight 2 ${TINT}")
out2+=("3,t2ctl hideheight 3 ${TINT}")
out2+=("4,t2ctl hideheight 4 ${TINT}")
out2+=("5,t2ctl hideheight 5 ${TINT}")
2022-03-23 22:40:13 +01:00
}
if [ "$(pidof tint2)" ];then
i=0
out+=("^sep($TINT2_CONFIGURE)")
while read -r pid cmd; do
if [[ ${cmd%% *} = tint2 ]]; then
TINT=${cmd##* }
TINT2=${TINT#$HOME/.config/tint2/}
if [[ $TINT = tint2 ]];then
TINT="$TINT2RC"
TINT2="$DEFAULT_TINT2RC"
fi
2022-04-01 16:50:20 +02:00
out+=("^sep($TINT2)")
2022-03-23 22:40:13 +01:00
((i=i+1))
getvalues
qactions
out+=("$CONFIGURE <i>$TINT2</i>,tint2conf $TINT")
out+=("$EDIT_TINT2 <i>$TINT2</i>,geany $TINT")
fi
done < <(pgrep -a tint2)
fi
2020-09-27 12:47:00 +02:00
2021-01-30 22:00:15 +01:00
out+=("^sep($APPS)")
out+=("$LAUNCHERS,jgtint2launcher")
if command -v phwmon.py &>/dev/null; then
PHWRUN="mabox-obstart phwmon"
. $HOME/.config/mabox/mabox.conf
2021-05-30 12:26:18 +02:00
out+=("^sep($TRAY_HWMON)")
if [ "$(pgrep -f phwmon.py)" ];then
2021-09-08 00:49:51 +02:00
out+=("Stop/Disable,mb-setvar phwmon_monitor=false;sleep 2;$PHWRUN;$me")
else
out+=("Start/Enable,mb-setvar phwmon_monitor=true;$PHWRUN;$me")
fi
out+=("^sep()")
[[ $phwmon_cpu = false ]] && out+=("<i><s>CPU</s></i>,mb-setvar phwmon_cpu=true;$PHWRUN;$me") || out+=("CPU,mb-setvar phwmon_cpu=false;$PHWRUN;$me")
[[ $phwmon_mem = false ]] && out+=("<i><s>Memory</s></i>,mb-setvar phwmon_mem=true;$PHWRUN;$me") || out+=("Memory,mb-setvar phwmon_mem=false;$PHWRUN;$me")
[[ $phwmon_swap = false ]] && out+=("<i><s>Swap</s></i>,mb-setvar phwmon_swap=true;$PHWRUN;$me") || out+=("Swap,mb-setvar phwmon_swap=false;$PHWRUN;$me")
[[ $phwmon_net = false ]] && out+=("<i><s>Network usage</s></i>,mb-setvar phwmon_net=true;$PHWRUN;$me") || out+=("Network usage,mb-setvar phwmon_net=false;$PHWRUN;$me")
[[ $phwmon_io = false ]] && out+=("<i><s>Disk IO</s></i>,mb-setvar phwmon_io=true;$PHWRUN;$me") || out+=("Disk IO,mb-setvar phwmon_io=false;$PHWRUN;$me")
2021-09-08 00:49:51 +02:00
fi
2022-03-23 22:40:13 +01:00
#out+=("^sep($EDIT_TINT2)")
# out+=("^sep()")
2021-09-08 00:49:51 +02:00
out+=("^sep($TITLE)")
out+=("$CHOOSE_TINT2,$TZEN")
out+=("$RESTART_TINT2,mb-tint2restart")
out+=("$RELOAD_TINT2,killall -SIGUSR1 tint2")
2021-05-30 12:26:18 +02:00
if [ $1 == "-s" ]; then
2021-09-24 01:40:09 +02:00
. /usr/share/mb-jgtools/pipemenu-standalone.cfg
2021-05-30 12:26:18 +02:00
. $HOME/.config/mabox/mabox.conf
if [[ $panels_heightpos == "top" ]]; then
MENU_VALIGN="top"
MENU_MARGIN_Y=${panels_topmargin:-0}
elif [[ $panels_heightpos == "bottom" ]]; then
MENU_VALIGN="bottom"
MENU_MARGIN_Y=${panels_topmargin:-0}
else
MENU_VALIGN="center"
fi
2021-05-31 15:00:35 +02:00
MENU_PADDING_TOP=${jgtools_padding:-0}
2021-05-30 12:26:18 +02:00
MENU_HALIGN="left"
MENU_MARGIN_Y=40
jgmenu_icon_size=0
menu_margin_x=${submenu_spacing:-0}
[ $(pidof picom) ] && MENU_RADIUS=$jgtools_radius
[ -z $jgmenu_use_borders ] && menu_border=0
2021-11-08 13:35:05 +01:00
POSITION_MODE=${2:-center}
2021-05-30 12:26:18 +02:00
mkconfigfile
cat <<EOF > ${MENU_ITEMS}
2021-05-30 12:26:18 +02:00
$(printf '%s\n' "${out[@]}")
$(printf '%s\n' "${out2[@]}")
EOF
jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null
exit 0
fi
2020-09-27 12:47:00 +02:00
printf '%s\n' "${out[@]}"
2022-03-23 22:40:13 +01:00
printf '%s\n' "${out2[@]}"
2022-03-23 22:40:13 +01:00
if [ "$1" == "-r" ]; then
printf '%s\n' "^sep()"
2021-05-23 10:20:13 +02:00
printf '%s\n' "<i>$REMOVE</i>,mb-setvar places_tint2pipe=false;mb-jgtools places"
fi