################################ # Calculates a given expression # # Dependencies: # - bc # # @param {String} 1: The expression to calculate # @return {Number}: The result of the expression ################################ calc() { echo "$1" | bc } ################################ # Counts lines in text, accounting for empty values # # @param {String} 1: The input text # @return {Number}: The number of lines ################################ numLines() { if [[ "$1" == "" ]]; then echo 0 else echo "$1" | wc -l fi } cacheDir=".cache" cacheFile="$cacheDir/i3-blocks-contrib-${BLOCK_NAME}" if [[ -z $cacheDir ]]; then mkdir $cacheDir fi getCache() { cat $cacheFile || echo $1 } setCache() { echo "$1" > $cacheFile }