#!/bin/bash # mb-places # . ~/.config/mabox/mabox.conf PLACES="$HOME/.config/mabox/places.csv" case $LANG in pl*) LABEL="Miejsca" ROOTDIR="Katalog główny" HOME_DIR="Katalog domowy" MOUNTPOINTS="Dyski (Punkty montowania)" SHOW_HIDDEN="Wyświetlanie ukrytych plików" EDIT="Edytuj" FILETOOLS="Narzędzia plikowe" INST="Instaluj" SETTINGS="Ustawienia" ;; es*) LABEL="Places" ROOTDIR="Root Directory" HOME_DIR="Home Directory" MOUNTPOINTS="Discs (mount points)" SHOW_HIDDEN="Show hidden files" EDIT="Edit" FILETOOLS="File Tools" INST="Install" SETTINGS="Settings" ;; *) LABEL="Places" ROOTDIR="Root Directory" HOME_DIR="Home Directory" MOUNTPOINTS="Discs (mount points)" SHOW_HIDDEN="Show hidden files" EDIT="Edit" FILETOOLS="File Tools" INST="Install" SETTINGS="Settings" ;; esac if [ ! -f ${PLACES} ]; then cat < ${PLACES} ^sep($LABEL)  $HOME_DIR (~),^pipe(jgbrowser),folder-home  $(basename $(xdg-user-dir DOWNLOAD)),^pipe(jgbrowser $(xdg-user-dir DOWNLOAD)),folder-download  $(basename $(xdg-user-dir DOCUMENTS)),^pipe(jgbrowser $(xdg-user-dir DOCUMENTS)),folder-documents  $(basename $(xdg-user-dir MUSIC)),^pipe(jgbrowser $(xdg-user-dir MUSIC)),folder-music  $(basename $(xdg-user-dir PICTURES)),^pipe(jgbrowser $(xdg-user-dir PICTURES)),folder-pictures  $(basename $(xdg-user-dir VIDEOS)),^pipe(jgbrowser $(xdg-user-dir VIDEOS)),folder-video ^sep()  ~/.config,^pipe(jgbrowser ~/.config),folder EOF fi mapfile -t out < "$PLACES" out+=("^sep($MOUNTPOINTS)") while read DEVICE SIZE USED FREE PERCENT MOUNT do [[ "${#MOUNT}" -gt "10" ]] && MOUNTLBL=${MOUNT##*/} || MOUNTLBL=${MOUNT} [[ "${#MOUNTLBL}" -gt "10" ]] && MOUNTLBL=${MOUNTLBL:0:9} [[ "${MOUNT}" = *"media"* ]] && ICON="drive-removable-media-usb" || ICON="drive-harddisk" out+=("$MOUNTLBL,^pipe(jgbrowser ${MOUNT}),$ICON") done < <(df -h | grep -v "boot" | grep '^/dev') out2+=("^tag(inst)") out+=("^sep($FILETOOLS)") if hash pcmanfm &>/dev/null; then out+=("PCManFM,pcmanfm,file-manager") fi if hash thunar &>/dev/null; then out+=("Thunar,thunar,file-manager") fi if hash fsearch &>/dev/null; then out+=("FSearch,fsearch,search") fi if hash doublecmd &>/dev/null; then out+=("Double Commander,doublecmd,doublecmd") else out2+=("$INST Double Commander,pamac-installer doublecmd-gtk2,package-manager-icon") fi if hash qdirstat &>/dev/null; then out+=("QDirStat,qdirstat,qdirstat") else out2+=("$INST QDirStat,pamac-installer qdirstat,package-manager-icon") fi if (( ${#out2[@]} > 1 )); then out+=("^sep()") out+=("$INST ...,^checkout(inst),package-manager-icon ") fi out+=("^sep($SETTINGS)") [[ $jgbrowser_show_hidden = false ]] && out+=(" $SHOW_HIDDEN,mb-setvar jgbrowser_show_hidden=true;mb-places -s") || out+=(" $SHOW_HIDDEN,mb-setvar jgbrowser_show_hidden=false;mb-places -s") out+=(" $EDIT $LABEL,xdg-open $PLACES,geany") ### RUN if [[ "$1" == "-s" || "$1" == "ipc" || "$1" == "-d" ]]; then . /usr/share/mb-jgtools/pipemenu-standalone.cfg . $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 MENU_PADDING_TOP=${jgtools_padding:-0} MENU_HALIGN="left" if [[ "$1" == "ipc" ]]; then POSITION_MODE="ipc" else POSITION_MODE="fixed" fi [[ "$1" == "-d" ]] && POSITION_MODE=pointer [ $(pidof picom) ] && MENU_RADIUS=$jgtools_radius [ -z $jgmenu_use_borders ] && menu_border=0 icons=0 iconmargin=0 mkconfigfile cat < ${MENU_ITEMS} $(printf '%s\n' "${out[@]}") $(printf '%s\n' "${out2[@]}") EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null exit 0 fi printf '%s\n' "${out[@]}" if [[ $1 == "-r" ]]; then printf '%s\n' "^sep()" printf '%s\n' "$REMOVE,mb-setvar places_jgdesktops=false;mb-jgtools places" fi printf '%s\n' "${out2[@]}"