tint2 pipemenu simplified
parent
4b166777fa
commit
2960ef69df
|
@ -1,114 +1,66 @@
|
|||
#!/bin/bash
|
||||
|
||||
# mabox-tint2-pipemenu - an Openbox pipemenu for tint2 manipulation
|
||||
# Copyright (C) 2015-2016 damo <damo@bunsenlabs.org>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
MB_COMMON_LIBDIR='/usr/lib/mabox/mabox-common'
|
||||
|
||||
TINT2PATH="$HOME/.config/tint2"
|
||||
TINT2RC="$TINT2PATH/tint2rc"
|
||||
TZEN="mb-tint2-manager"
|
||||
|
||||
if ! . "$MB_COMMON_LIBDIR/mabox-include.cfg" 2> /dev/null; then
|
||||
echo $"Error: Failed to source mabox-include.cfg in $MB_COMMON_LIBDIR" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $LANG in
|
||||
pl*)
|
||||
TITLE="Panel Tint2"
|
||||
RUNNING_TINT2="Działające Tint2"
|
||||
DEFAULT_TINT2RC="Domyślny tint2rc"
|
||||
EDIT_TINT2="Edytuj Tint2"
|
||||
TINT2_EDITOR="Wybierz pliki Tint2 do edycji..."
|
||||
TINT2_EDITOR_GUI="tint2conf (GUI)"
|
||||
CHOOSE_TINT2="Wybierz Tint2"
|
||||
CHOOSE_TINT2="Wybierz Tint2..."
|
||||
RESTART_TINT2="Restartuj Tint2"
|
||||
CONFIGURE="Konfiguruj"
|
||||
;;
|
||||
es*)
|
||||
TITLE="Panel Tint2"
|
||||
RUNNING_TINT2="Panel(es) en ejecución"
|
||||
DEFAULT_TINT2RC="Panel tint2rc x defecto"
|
||||
EDIT_TINT2="Edición manual panel"
|
||||
TINT2_EDITOR="Elegir panel Tint2 a editar"
|
||||
TINT2_EDITOR_GUI="Editor gráfico"
|
||||
CHOOSE_TINT2="Elegir un panel"
|
||||
CHOOSE_TINT2="Elegir un panel..."
|
||||
RESTART_TINT2="Reiniciar panel(es)"
|
||||
CONFIGURE="Configurar"
|
||||
;;
|
||||
*)
|
||||
TITLE="Tint2 Panel"
|
||||
RUNNING_TINT2="Running Tint2"
|
||||
DEFAULT_TINT2RC="Default tint2rc"
|
||||
EDIT_TINT2="Edit Tint2"
|
||||
TINT2_EDITOR="Choose Tint2 to edit"
|
||||
TINT2_EDITOR_GUI="tint2conf (GUI)"
|
||||
CHOOSE_TINT2="Choose Tint2"
|
||||
CHOOSE_TINT2="Choose Tint2..."
|
||||
RESTART_TINT2="Restart Tint2"
|
||||
CONFIGURE="Configure"
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
loadTEditmenu(){
|
||||
menuSeparator
|
||||
menuItem "$DEFAULT_TINT2RC" "geany $TINT2RC"
|
||||
out+=("^sep($TITLE)")
|
||||
out+=("$CHOOSE_TINT2,$TZEN")
|
||||
out+=("$RESTART_TINT2,mb-tint2restart")
|
||||
|
||||
if [ "$(pidof tint2)" ];then
|
||||
menuSubmenu "RunningTint2" "$RUNNING_TINT2"
|
||||
menuSeparator "$RUNNING_TINT2"
|
||||
pgrep -a tint2 | while read -r pid cmd; do
|
||||
out+=("^sep($TINT2_EDITOR_GUI)")
|
||||
while read -r pid cmd; do
|
||||
if [[ ${cmd%% *} = tint2 ]]; then
|
||||
TINT=${cmd##* }
|
||||
TINT2=${TINT#$HOME/.config/}
|
||||
TINT2=${TINT#$HOME/.config/tint2/}
|
||||
if [[ $TINT = tint2 ]];then
|
||||
TINT="$TINT2RC"
|
||||
TINT2="$DEFAULT_TINT2RC"
|
||||
fi
|
||||
menuItem "$TINT2" "geany $TINT"
|
||||
out+=("$CONFIGURE <i>$TINT2</i>,tint2conf $TINT")
|
||||
fi
|
||||
done
|
||||
menuSubmenuEnd
|
||||
done < <(pgrep -a tint2)
|
||||
fi
|
||||
}
|
||||
#out+=("^sep($EDIT_TINT2)")
|
||||
|
||||
getTint2s(){
|
||||
menuSubmenu "EditTint2" "$EDIT_TINT2"
|
||||
menuSeparator "$EDIT_TINT2"
|
||||
menuItem "$TINT2_EDITOR_GUI" "tint2conf"
|
||||
if type mb-tint2edit &>/dev/null;then # mb-tint2edit script found
|
||||
menuItem "$TINT2_EDITOR" "mb-tint2edit"
|
||||
loadTEditmenu
|
||||
else
|
||||
loadTEditmenu
|
||||
fi
|
||||
menuSubmenuEnd
|
||||
}
|
||||
|
||||
loadChoosermenu(){
|
||||
if type $TZEN &>/dev/null;then # mb-tint2zen script found
|
||||
menuItem "$CHOOSE_TINT2" "$TZEN"
|
||||
fi
|
||||
}
|
||||
|
||||
loadRestartmenu(){
|
||||
if [ "$(pidof tint2)" ];then
|
||||
if type mb-tint2restart &>/dev/null;then # mb-tint2restart script found
|
||||
menuItem "$RESTART_TINT2" "mb-tint2restart"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
menuStart "Tintmenu" "Tint2"
|
||||
menuSeparator "Tint2 panel"
|
||||
loadChoosermenu
|
||||
loadRestartmenu
|
||||
getTint2s
|
||||
menuEnd
|
||||
printf '%s\n' "${out[@]}"
|
||||
|
|
|
@ -0,0 +1,114 @@
|
|||
#!/bin/bash
|
||||
|
||||
# mabox-tint2-pipemenu - an Openbox pipemenu for tint2 manipulation
|
||||
# Copyright (C) 2015-2016 damo <damo@bunsenlabs.org>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
MB_COMMON_LIBDIR='/usr/lib/mabox/mabox-common'
|
||||
|
||||
TINT2PATH="$HOME/.config/tint2"
|
||||
TINT2RC="$TINT2PATH/tint2rc"
|
||||
TZEN="mb-tint2-manager"
|
||||
|
||||
if ! . "$MB_COMMON_LIBDIR/mabox-include.cfg" 2> /dev/null; then
|
||||
echo $"Error: Failed to source mabox-include.cfg in $MB_COMMON_LIBDIR" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $LANG in
|
||||
pl*)
|
||||
RUNNING_TINT2="Działające Tint2"
|
||||
DEFAULT_TINT2RC="Domyślny tint2rc"
|
||||
EDIT_TINT2="Edytuj Tint2"
|
||||
TINT2_EDITOR="Wybierz pliki Tint2 do edycji..."
|
||||
TINT2_EDITOR_GUI="tint2conf (GUI)"
|
||||
CHOOSE_TINT2="Wybierz Tint2"
|
||||
RESTART_TINT2="Restartuj Tint2"
|
||||
;;
|
||||
es*)
|
||||
RUNNING_TINT2="Panel(es) en ejecución"
|
||||
DEFAULT_TINT2RC="Panel tint2rc x defecto"
|
||||
EDIT_TINT2="Edición manual panel"
|
||||
TINT2_EDITOR="Elegir panel Tint2 a editar"
|
||||
TINT2_EDITOR_GUI="Editor gráfico"
|
||||
CHOOSE_TINT2="Elegir un panel"
|
||||
RESTART_TINT2="Reiniciar panel(es)"
|
||||
;;
|
||||
*)
|
||||
RUNNING_TINT2="Running Tint2"
|
||||
DEFAULT_TINT2RC="Default tint2rc"
|
||||
EDIT_TINT2="Edit Tint2"
|
||||
TINT2_EDITOR="Choose Tint2 to edit"
|
||||
TINT2_EDITOR_GUI="tint2conf (GUI)"
|
||||
CHOOSE_TINT2="Choose Tint2"
|
||||
RESTART_TINT2="Restart Tint2"
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
loadTEditmenu(){
|
||||
menuSeparator
|
||||
menuItem "$DEFAULT_TINT2RC" "geany $TINT2RC"
|
||||
if [ "$(pidof tint2)" ];then
|
||||
menuSubmenu "RunningTint2" "$RUNNING_TINT2"
|
||||
menuSeparator "$RUNNING_TINT2"
|
||||
pgrep -a tint2 | while read -r pid cmd; do
|
||||
if [[ ${cmd%% *} = tint2 ]]; then
|
||||
TINT=${cmd##* }
|
||||
TINT2=${TINT#$HOME/.config/}
|
||||
if [[ $TINT = tint2 ]];then
|
||||
TINT="$TINT2RC"
|
||||
TINT2="$DEFAULT_TINT2RC"
|
||||
fi
|
||||
menuItem "$TINT2" "geany $TINT"
|
||||
fi
|
||||
done
|
||||
menuSubmenuEnd
|
||||
fi
|
||||
}
|
||||
|
||||
getTint2s(){
|
||||
menuSubmenu "EditTint2" "$EDIT_TINT2"
|
||||
menuSeparator "$EDIT_TINT2"
|
||||
menuItem "$TINT2_EDITOR_GUI" "tint2conf"
|
||||
if type mb-tint2edit &>/dev/null;then # mb-tint2edit script found
|
||||
menuItem "$TINT2_EDITOR" "mb-tint2edit"
|
||||
loadTEditmenu
|
||||
else
|
||||
loadTEditmenu
|
||||
fi
|
||||
menuSubmenuEnd
|
||||
}
|
||||
|
||||
loadChoosermenu(){
|
||||
if type $TZEN &>/dev/null;then # mb-tint2zen script found
|
||||
menuItem "$CHOOSE_TINT2" "$TZEN"
|
||||
fi
|
||||
}
|
||||
|
||||
loadRestartmenu(){
|
||||
if [ "$(pidof tint2)" ];then
|
||||
if type mb-tint2restart &>/dev/null;then # mb-tint2restart script found
|
||||
menuItem "$RESTART_TINT2" "mb-tint2restart"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
menuStart "Tintmenu" "Tint2"
|
||||
menuSeparator "Tint2 panel"
|
||||
loadChoosermenu
|
||||
loadRestartmenu
|
||||
getTint2s
|
||||
menuEnd
|
Loading…
Reference in New Issue