# This script contains useful functions to be used # in other scripts from colorshell. # ---------- # Made by retrozinndev (João Dias) # Licensed under the BSD 3-Clause License # From: https://github.com/retrozinndev/colorshell # ------------- # The repository's api url # ------------- repo_api_url=https://api.github.com/repos/retrozinndev/colorshell # ------------- # Sends stdout log with type and message provided # in parameters. # param $1 (optional) log type (err[or], warn[ing]), if not any of list, print as info # param $2 log message # ------------- function Send_log() { log_message=`[[ -z $2 ]] && echo $1 || echo $2` color="\e[34m" log_type="info" case "${1,,}" in warn) color="\e[33m" log_type="warning" ;; err) color="\e[31m" log_type="error" ;; esac echo -e "${color}[$log_type]\e[0m $log_message" } # ------------- # Prints retrozinndev/colorshell installation # script's welcome header on stdout # ------------- function Print_header() { printf "\n" echo "#############################" echo "## Colorshell Installation ##" echo "#############################" printf "\n" } # ------------- # Ask a yes/no question to user # Input answer is exported as $answer # ------------- function Ask() { read -n 1 -p "$@ [y/n] " answer printf '\n' if [[ ! $answer =~ [yn] ]]; then Ask "$@" # restart if different from accepted chars fi export answer } # ------------- # Check if colorshell is installed # Returns code 0 if installed, 1 if not # ------------- function Is_installed() { executable=${@:-"$HOME/.local/bin/colorshell"} if command -v colorshell > /dev/null 2>&1 || [[ -f $executable ]]; then return 0 fi return 1 } # ------------- # Ask the user to choose a number from the provided list # Input answer is exported as $answer # (this function is not done yet) # ------------- function Choose() { read -n 1 -p "$1 [y/n] " r printf '\n' export answer=$r }