Merge pull request #530 from dylanaraps/prin

General: Delete most of info() and instead call prin()
This commit is contained in:
Dylan Araps 2016-12-15 17:56:36 +11:00 committed by GitHub
commit 254e92d027
1 changed files with 24 additions and 45 deletions

View File

@ -273,7 +273,10 @@ get_model() {
} }
get_title() { get_title() {
title="${USER:-$(whoami || printf "%s" "${HOME/*\/}")}@${HOSTNAME:-$(hostname)}" user="${USER:-$(whoami || printf "%s" "${HOME/*\/}")}"
hostname="${HOSTNAME:-$(hostname)}"
title="${title_color}${bold}${user}${at_color}@${title_color}${bold}${hostname}"
length="$((${#user} + ${#hostname} + 1))"
} }
get_kernel() { get_kernel() {
@ -1266,7 +1269,6 @@ get_song() {
else else
prin "$subtitle" "$song" prin "$subtitle" "$song"
fi fi
unset song
fi fi
} }
@ -1676,8 +1678,6 @@ get_battery() {
prin "${subtitle}${bat: -1}" "$battery" prin "${subtitle}${bat: -1}" "$battery"
done done
unset battery
return return
;; ;;
@ -2425,77 +2425,56 @@ scrot_program() {
# TEXT FORMATTING # TEXT FORMATTING
info() { info() {
# $1 is the subtitle # Make sure that $prin is unset.
subtitle="$1" unset -v prin
# Call the function. # Call the function.
"get_${2:-$1}" 2>/dev/null "get_${2:-$1}" 2>/dev/null
# If the get_func function called 'prin' directly, stop here.
[[ "$prin" ]] && return
# Update the variable # Update the variable
output="${2:-$1}" output="$(trim "${!2:-${!1}}")"
output="$(trim "${!output}")"
# If prin was used in the function, stop here. if [[ "$2" && "${output// }" ]]; then
[[ "$prin" ]] && \ length="$((${#1} + ${#output} + 2))"
unset prin && return prin "$1" "$output"
# If the output is empty, don't print anything. elif [[ "${output// }" ]]; then
[[ -z "${output// }" ]] && \ [[ -z "$length" ]] && length="${#output}"
err "Info: Couldn't detect $subtitle." && return prin "$output"
case "$1" in else
"title") err "Info: Couldn't detect ${1}."
string="${title_color}${bold}${output}" fi
string="${string/@/${at_color}@${title_color}${bold}}"
length="${#output}"
;;
"underline") string="${underline_color}${output}" ;;
*)
string="${subtitle_color}${bold}${subtitle}${reset}"
string+="${colon_color}: ${info_color}${output}"
length="$((${#subtitle} + ${#output} + 2))"
;;
esac
# If there's no subtitle don't print one
[[ -z "$2" ]] && string="${string/*: }"
# Print the string
printf "%b\n" "\033[${text_padding}C${zws}${string}${reset} "
# Calculate info height
info_height="$((info_height+=1))"
} }
prin() { prin() {
string="${1//$'\033[0m'}${2:+: $2}"
# If $2 doesn't exist we format $1 as info # If $2 doesn't exist we format $1 as info
[[ -z "$2" ]] && local subtitle_color="$info_color" [[ -z "$2" ]] && local subtitle_color="$info_color"
# Format the output # Format the output
string="${1//$'\033[0m'}${2:+: $2}"
string="$(trim "$string")"
string="${string/:/${reset}${colon_color}:${info_color}}" string="${string/:/${reset}${colon_color}:${info_color}}"
string="${subtitle_color}${bold}${string}" string="${subtitle_color}${bold}${string}"
# Trim whitespace
string="$(trim "$string")"
# Print the info # Print the info
printf "%b\n" "\033[${text_padding}C${zws}${string}${reset} " printf "%b\n" "\033[${text_padding}C${zws}${string}${reset} "
# Calculate info height # Calculate info height
info_height="$((info_height+=1))" info_height="$((info_height+=1))"
# Tell info() that prin() was used. # Log that prin was used.
prin=1 prin=1
} }
get_underline() { get_underline() {
if [[ "$underline_enabled" == "on" ]]; then if [[ "$underline_enabled" == "on" ]]; then
underline="$(printf %"$length"s)" underline="$(printf %"$length"s)"
underline="${underline// /$underline_char}" underline="${underline_color}${underline// /$underline_char}"
unset -v length
fi fi
} }