some cleanup in the script
This commit is contained in:
parent
195e4252b7
commit
66bcc31242
|
@ -27,6 +27,7 @@ HIDDEN_KEYWORDS="${HIDDEN_KEYWORDS:-spmenu}"
|
||||||
KEYWORDS="${KEYWORDS:-}"
|
KEYWORDS="${KEYWORDS:-}"
|
||||||
DISPLAY_DUPLICATES="${DISPLAY_DUPLICATES:-false}"
|
DISPLAY_DUPLICATES="${DISPLAY_DUPLICATES:-false}"
|
||||||
DISPLAY_DESCRIPTION="${DISPLAY_DESCRIPTION:-true}"
|
DISPLAY_DESCRIPTION="${DISPLAY_DESCRIPTION:-true}"
|
||||||
|
VALIDATE_ENTRIES="${VALIDATE_ENTRIES:-true}"
|
||||||
LS_ARGS="${LS_ARGS:- --color=always}"
|
LS_ARGS="${LS_ARGS:- --color=always}"
|
||||||
USE_FULL_PATH="${USE_FULL_PATH:-false}"
|
USE_FULL_PATH="${USE_FULL_PATH:-false}"
|
||||||
HELP_COLOR="${HELP_COLOR:-#FFFF00}"
|
HELP_COLOR="${HELP_COLOR:-#FFFF00}"
|
||||||
|
@ -248,6 +249,7 @@ ICON_DIR="\${DESTDIR}\${PREFIX}/share/icons/hicolor \${DESTDIR}\${PREFIX}/share/
|
||||||
TEMPORARY_DIR="\$CONFDIR/spmenu/run/cache" # Directory used to store cached entries
|
TEMPORARY_DIR="\$CONFDIR/spmenu/run/cache" # Directory used to store cached entries
|
||||||
AUTOREFRESH="false" # Refresh (clear) cache if there are more entries available than cached. May cause cache to be cleared every time in some cases. (true/false)
|
AUTOREFRESH="false" # Refresh (clear) cache if there are more entries available than cached. May cause cache to be cleared every time in some cases. (true/false)
|
||||||
IMAGE="true" # Display images (true/false)
|
IMAGE="true" # Display images (true/false)
|
||||||
|
VALIDATE_ENTRIES="true" # Validate entries using desktop-file-validate (true/false)
|
||||||
DISPLAY_DESCRIPTION="true" # Display description (true/false)"
|
DISPLAY_DESCRIPTION="true" # Display description (true/false)"
|
||||||
DESCRIPTION_COLOR="#999888" # Description text color
|
DESCRIPTION_COLOR="#999888" # Description text color
|
||||||
LOGFILE="/tmp/spmenu_run.log" # Log file
|
LOGFILE="/tmp/spmenu_run.log" # Log file
|
||||||
|
@ -500,8 +502,9 @@ print_desktop_list() {
|
||||||
|
|
||||||
for i in $(seq "$cached_c"); do
|
for i in $(seq "$cached_c"); do
|
||||||
# current file
|
# current file
|
||||||
[ -z "$cached" ] && continue;
|
#[ -z "$cached" ] && break;
|
||||||
cur_file="$(printf "%s" "$cached" | sed "${i}q;d")" && [ ! -e "$cur_file" ] && printf "File '%s' does not exist. Skipping...\n" "$cur_file" >> "$LOGFILE" && continue
|
cur_file="$(printf "%s" "$cached" | sed "${i}q;d")"
|
||||||
|
[ ! -f "$cur_file" ] && printf "File '%s' does not exist. Skipping...\n" "$cur_file" >> "$LOGFILE" && continue
|
||||||
|
|
||||||
# get details to display
|
# get details to display
|
||||||
it_title[i]="$(sed "1q;d" "$cur_file" | sed "s/Name://g")"
|
it_title[i]="$(sed "1q;d" "$cur_file" | sed "s/Name://g")"
|
||||||
|
@ -515,6 +518,12 @@ print_desktop_list() {
|
||||||
printf "%s\n" "${it_desc[i]}" >> "$DESCFILE"
|
printf "%s\n" "${it_desc[i]}" >> "$DESCFILE"
|
||||||
printf "%s\n" "${it_exec[i]}" >> "$EXECFILE"
|
printf "%s\n" "${it_exec[i]}" >> "$EXECFILE"
|
||||||
printf "%s\n" "${it_file[i]}" >> "$FILEFILE"
|
printf "%s\n" "${it_file[i]}" >> "$FILEFILE"
|
||||||
|
|
||||||
|
printf "%d. Title - %s\n" "${i}" "${it_title[i]}" >> "$LOGFILE"
|
||||||
|
printf "%d. Description - %s\n" "${i}" "${it_desc[i]}" >> "$LOGFILE"
|
||||||
|
printf "%d. Executable - %s\n" "${i}" "${it_exec[i]}" >> "$LOGFILE"
|
||||||
|
printf "%d. Icon - %s\n" "${i}" "${it_icon[i]}" >> "$LOGFILE"
|
||||||
|
printf "%d. File - %s\n" "${i}" "${it_file[i]}" >> "$LOGFILE"
|
||||||
done
|
done
|
||||||
|
|
||||||
print_desktop_list
|
print_desktop_list
|
||||||
|
@ -528,7 +537,7 @@ print_desktop_list() {
|
||||||
|
|
||||||
# read icon
|
# read icon
|
||||||
while read -r p; do
|
while read -r p; do
|
||||||
[ "$IMAGE" != "true" ] && continue
|
[ "$IMAGE" != "true" ] && it_icon+=("") && continue
|
||||||
it_icon+=("$p")
|
it_icon+=("$p")
|
||||||
done < "$ICONFILE"
|
done < "$ICONFILE"
|
||||||
|
|
||||||
|
@ -599,7 +608,6 @@ exec_program() {
|
||||||
|
|
||||||
|
|
||||||
print_desktop_menu() {
|
print_desktop_menu() {
|
||||||
prep_desktop
|
|
||||||
check_desktop
|
check_desktop
|
||||||
cache_desktop
|
cache_desktop
|
||||||
|
|
||||||
|
@ -618,8 +626,7 @@ print_desktop_menu() {
|
||||||
|
|
||||||
prep_desktop() {
|
prep_desktop() {
|
||||||
mkdir -p "${tmpdir[@]}"
|
mkdir -p "${tmpdir[@]}"
|
||||||
rm -f "$LOGFILE"
|
printf "spmenu_run log (%s)\nFunction: Desktop\n" "$(date "+%D %T")" > "$LOGFILE"
|
||||||
touch "$LOGFILE"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cache_desktop() {
|
cache_desktop() {
|
||||||
|
@ -654,7 +661,7 @@ cache_desktop() {
|
||||||
for i in $(seq "$entry_c"); do
|
for i in $(seq "$entry_c"); do
|
||||||
cur_file="$(printf "%s" "$entry" | sed "${i}q;d")"
|
cur_file="$(printf "%s" "$entry" | sed "${i}q;d")"
|
||||||
|
|
||||||
if [ -x "$(command -v desktop-file-validate)" ]; then
|
if [ -x "$(command -v desktop-file-validate)" ] && [ "$VALIDATE_ENTRIES" != "false" ]; then
|
||||||
desktop-file-validate "$cur_file" > /dev/null || continue
|
desktop-file-validate "$cur_file" > /dev/null || continue
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -668,6 +675,7 @@ cache_desktop() {
|
||||||
|
|
||||||
# write the file
|
# write the file
|
||||||
printf "%s\n%s\n%s\n%s\n" "Name:$name" "Description:$desc" "Executable:$exec" "Icon:$icon" > "${tmpdir[*]}/$(basename "$cur_file").entry"
|
printf "%s\n%s\n%s\n%s\n" "Name:$name" "Description:$desc" "Executable:$exec" "Icon:$icon" > "${tmpdir[*]}/$(basename "$cur_file").entry"
|
||||||
|
printf "Entry %s: %s\n%s\n%s\n%s\n" "$i" "Name:$name" "Description:$desc" "Executable:$exec" "Icon:$icon" >> "$LOGFILE"
|
||||||
done
|
done
|
||||||
|
|
||||||
# scan
|
# scan
|
||||||
|
@ -733,6 +741,7 @@ main() {
|
||||||
"fm") prepare_dirnav "$args"
|
"fm") prepare_dirnav "$args"
|
||||||
;;
|
;;
|
||||||
"desktop")
|
"desktop")
|
||||||
|
prep_desktop
|
||||||
print_desktop_menu "$args"
|
print_desktop_menu "$args"
|
||||||
;;
|
;;
|
||||||
"help")
|
"help")
|
||||||
|
|
Loading…
Reference in a new issue