I fixed the prompt
Signed-off-by: Skylar "The Cobra" Widulski <cobra@vern.cc>
This commit is contained in:
parent
7061b1caa6
commit
ef6c0a7795
|
@ -56,6 +56,30 @@ _BLU=\"\\[\\033[34m\\]\"
|
|||
_PRP=\"\\[\\033[35m\\]\"
|
||||
_CYN=\"\\[\\033[36m\\]\"
|
||||
_WHT=\"\\[\\033[37m\\]\"
|
||||
_BACK_BLK=\"\\[\\033[40m\\]\"
|
||||
_BACK_RED=\"\\[\\033[41m\\]\"
|
||||
_BACK_GRN=\"\\[\\033[42m\\]\"
|
||||
_BACK_YLW=\"\\[\\033[43m\\]\"
|
||||
_BACK_BLU=\"\\[\\033[44m\\]\"
|
||||
_BACK_PRP=\"\\[\\033[45m\\]\"
|
||||
_BACK_CYN=\"\\[\\033[46m\\]\"
|
||||
_BACK_WHT=\"\\[\\033[47m\\]\"
|
||||
_BRIGHT_BLK=\"\\[\\033[90m\\]\"
|
||||
_BRIGHT_RED=\"\\[\\033[91m\\]\"
|
||||
_BRIGHT_GRN=\"\\[\\033[92m\\]\"
|
||||
_BRIGHT_YLW=\"\\[\\033[93m\\]\"
|
||||
_BRIGHT_BLU=\"\\[\\033[94m\\]\"
|
||||
_BRIGHT_PRP=\"\\[\\033[95m\\]\"
|
||||
_BRIGHT_CYN=\"\\[\\033[96m\\]\"
|
||||
_BRIGHT_WHT=\"\\[\\033[97m\\]\"
|
||||
_BRIGHT_BACK_BLK=\"\\[\\033[100m\\]\"
|
||||
_BRIGHT_BACK_RED=\"\\[\\033[101m\\]\"
|
||||
_BRIGHT_BACK_GRN=\"\\[\\033[102m\\]\"
|
||||
_BRIGHT_BACK_YLW=\"\\[\\033[103m\\]\"
|
||||
_BRIGHT_BACK_BLU=\"\\[\\033[104m\\]\"
|
||||
_BRIGHT_BACK_PRP=\"\\[\\033[105m\\]\"
|
||||
_BRIGHT_BACK_CYN=\"\\[\\033[106m\\]\"
|
||||
_BRIGHT_BACK_WHT=\"\\[\\033[107m\\]\"
|
||||
|
||||
# Number of guix packages to show before truncating in `guix shell`
|
||||
_GUIX_MAXLIST=1
|
||||
|
@ -67,6 +91,32 @@ _MIN_US=0
|
|||
_SSH_LIMIT_START=4
|
||||
_SSH_LIMIT_END=4
|
||||
|
||||
# Colors (higher level)
|
||||
_COLOR_SSH_IP=\"${_CYN}\"
|
||||
_COLOR_SSH_PORT=\"${_CYN}\"
|
||||
_COLOR_SSH_PORT_SEP=\"${_PRP}${_BLD}\"
|
||||
_COLOR_SSH_ASTRSK=\"${_WHT}\"
|
||||
_COLOR_SSH_BRACKS=\"${_BLU}\"
|
||||
|
||||
_COLOR_GUIX_BRACKS=\"${_BLD}${_BLU}\"
|
||||
_COLOR_GUIX_GUIX=\"${_YLW}\"
|
||||
_COLOR_GUIX_SEP=\"\"
|
||||
_COLOR_GUIX_PKGS=\"${_WHT}\"
|
||||
_COLOR_GUIX_OUT=\"${_WHT}\"
|
||||
_COLOR_GUIX_PLUS=\"\"
|
||||
_COLOR_GUIX_PKGNUM=\"${_PRP}\"
|
||||
_COLOR_GUIX_PKG=\"\"
|
||||
|
||||
_COLOR_UHD_BRACKS=\"${_BLD}${_BLU}\"
|
||||
_COLOR_UHD_ROOT=\"${_BLD}${_RED}\"
|
||||
_COLOR_UHD_NONROOT=\"${_BLD}${_YLW}\"
|
||||
_COLOR_UHD_AT=\"${_BLD}${_PRP}\"
|
||||
_COLOR_UHD_HOST=\"${_BLD}${_CYN}\"
|
||||
_COLOR_UHD_SEP=\"${_BLD}${_PRP}\"
|
||||
_COLOR_UHD_DIR=\"${_BLD}${_GRN}\"
|
||||
|
||||
_COLOR_CMDTIME=\"${_YLW}\"
|
||||
|
||||
__debug_trap() {
|
||||
# Set necessary pre-command variables (PROMPT_COMMAND is a
|
||||
# command so its excluded here)
|
||||
|
@ -156,15 +206,14 @@ __sig() {
|
|||
__ssh() {
|
||||
local CON=($SSH_CONNECTION)
|
||||
local SRV_IP=\"${CON[2]}\"
|
||||
[[ $_SSH_LIMIT_START -lt 0 ]] && _SSH_LIMIT_START=0
|
||||
[[ $_SSH_LIMIT_END -lt 0 ]] && _SSH_LIMIT_END=0
|
||||
[[ $_SSH_LIMIT_START -lt 0 ]] && _SSH_LIMIT_START=0
|
||||
[[ $_SSH_LIMIT_END -lt 0 ]] && _SSH_LIMIT_END=0
|
||||
[[ -z \"$SRV_IP\" ]] && return
|
||||
local SRV_PORT=\"${CON[3]}\"
|
||||
# 4 chars from startand 4 chars from end
|
||||
local SRV_IP_CUT=\"${_CYN}${SRV_IP}\"
|
||||
[[ ${#SRV_IP} -gt $((_SSH_LIMIT_START+_SSH_LIMIT_END)) ]] && local SRV_IP_CUT=\"${_CYN}${SRV_IP:0:$_SSH_LIMIT_START}${_WHT}*${_CYN}${SRV_IP: -$_SSH_LIMIT_END}\"
|
||||
local SRV_IP_CUT=\"${_COLOR_SSH_IP}${SRV_IP}\"
|
||||
[[ ${#SRV_IP} -gt $((_SSH_LIMIT_START+_SSH_LIMIT_END)) ]] && local SRV_IP_CUT=\"${_COLOR_SSH_IP}${SRV_IP:0:$_SSH_LIMIT_START}${_COLOR_SSH_ASTRSK}*${_COLOR_SSH_IP}${SRV_IP: -$_SSH_LIMIT_END}\"
|
||||
|
||||
printf '%s' \"${_GRN}${_BLU}[${SRV_IP_CUT}${_PRP}${_BLD}:${_NON}${_CYN}${SRV_PORT}${_BLU}]${_NON}\"
|
||||
printf '%s' \"${_COLOR_SSH_BRACKS}[${_NON}${SRV_IP_CUT}${_COLOR_SSH_PORT_SEP}:${_NON}${_COLOR_SSH_PORT}${SRV_PORT}${_COLOR_SSH_BRACKS}]${_NON}\"
|
||||
}
|
||||
|
||||
__guix_env() {
|
||||
|
@ -175,19 +224,35 @@ __guix_env() {
|
|||
local PACKAGES=($(while read -r line; do
|
||||
[[ \"$line\" =~ $re ]] && printf '%s ' \"${BASH_REMATCH[1]}\"
|
||||
done < $GUIX_ENVIRONMENT/manifest))
|
||||
local i=0
|
||||
local OUTPUTS=($(while read -r line; do
|
||||
if [[ \"$line\" =~ $re1 ]]; then
|
||||
local match=\"${BASH_REMATCH[1]}\"
|
||||
[[ ! \"${PACKAGES[*]}\" =~ \"$match\" ]] && printf '%s ' \"$match\"
|
||||
if [[ ! \"${PACKAGES[$i]}\" == \"$match\" ]]; then
|
||||
printf '%s ' \"$match\"
|
||||
fi
|
||||
((i++))
|
||||
fi
|
||||
done < $GUIX_ENVIRONMENT/manifest))
|
||||
if [[ ${#PACKAGES[@]} -eq $((_GUIX_MAXLIST+1)) ]]; then
|
||||
printf \"${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s ${_NON}+ ${_PRP}%d ${_NON}pkg${_BLD}${_BLU}] \" \"${PACKAGES[0]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != \"out\" ]] && printf ':%s' \"${OUTPUTS[0]}\")\" \"$((${#PACKAGES[@]}-1))\"
|
||||
elif [[ ${#PACKAGES[@]} -gt $((_GUIX_MAXLIST+1)) ]]; then
|
||||
printf \"${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s ${_NON}+ ${_PRP}%d ${_NON}pkgs${_BLD}${_BLU}] \" \"${PACKAGES[0]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != \"out\" ]] && printf ':%s' \"${OUTPUTS[0]}\")\" \"$((${#PACKAGES[@]}-1))\"
|
||||
else
|
||||
printf \"${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s${_BLD}${_BLU}] \" \"${PACKAGES[@]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != \"out\" ]] && printf ':%s' \"${OUTPUTS[0]}\")\"
|
||||
local FULL_PKGS=($(for i in $(seq 0 $((${#PACKAGES[@]}-1))); do
|
||||
if [[ \"${OUTPUTS[$i]}\" == \"out\" ]]; then
|
||||
printf '%s ' \"${_COLOR_GUIX_PKGS}${PACKAGES[$i]}${_NON}\"
|
||||
else
|
||||
printf '%s ' \"${_COLOR_GUIX_PKGS}${PACKAGES[$i]}${_NON}${_GUIX_COLOR_SEP}:${_COLOR_GUIX_OUT}${OUTPUTS[$i]}${_NON}\"
|
||||
fi
|
||||
done))
|
||||
local FULL_PKG_STR=\"${FULL_PKGS[@]:0:$_GUIX_MAXLIST}\"
|
||||
local EXTRA=\"$((${#FULL_PKGS[@]}-_GUIX_MAXLIST))\"
|
||||
if [ ${_GUIX_MAXLIST} -gt 0 ] && [ $EXTRA -gt 0 ]; then
|
||||
FULL_PKG_STR+=\" ${_NON}${_COLOR_GUIX_PLUS}+ \"
|
||||
fi
|
||||
if [ $EXTRA -gt 1 ]; then
|
||||
FULL_PKG_STR+=\"${_NON}${_COLOR_GUIX_PKGNUM}$EXTRA ${_NON}${_COLOR_GUIX_PKG}pkgs\"
|
||||
elif [ $EXTRA -eq 1 ]; then
|
||||
FULL_PKG_STR+=\"${_NON}${_COLOR_GUIX_PKGNUM}1 ${_NON}${_COLOR_GUIX_PKG}pkg\"
|
||||
fi
|
||||
|
||||
printf %s \"${_COLOR_GUIX_BRACKS}[${_NON}${_COLOR_GUIX_GUIX}Guix${_NON}${_COLOR_GUIX_SEP}: ${_NON}${FULL_PKG_STR}${_COLOR_GUIX_BRACKS}] \"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -251,11 +316,11 @@ __prompt() {
|
|||
GUIX=\"$(__guix_env)\"
|
||||
|
||||
# [user@homeserver:~]
|
||||
COL=\"$([[ $UID == 0 ]] && printf '%s' \"$_RED\" || printf '%s' \"$_YLW\")\"
|
||||
UHD=\"${_BLD}${_BLU}[${COL}\\u${_PRP}@${_CYN}\\h${_PRP}:${_GRN}\\w${_BLU}]\"
|
||||
COL=\"$([[ $UID == 0 ]] && printf '%s' \"${_COLOR_UHD_ROOT}\" || printf '%s' \"${_COLOR_UHD_NONROOT}\")\"
|
||||
UHD=\"${_COLOR_UHD_BRACKS}[${_NON}${COL}\\u${_NON}${_COLOR_UHD_AT}@${_NON}${_COLOR_UHD_HOST}\\h${_NON}${_COLOR_UHD_SEP}:${_NON}${_COLOR_UHD_DIR}\\w${_NON}${_COLOR_UHD_BRACKS}]\"
|
||||
|
||||
# 2y 351d 12m 43s 382969μs
|
||||
TIME=\"${_YLW}$(__get_cmd_time)\"
|
||||
TIME=\"${_COLOR_CMDTIME}$(__get_cmd_time)\"
|
||||
|
||||
# Random colored $ or #
|
||||
_RAND256=\"\\[\\033[38;2;$((RANDOM%256));$((RANDOM%256));$((RANDOM%256))m\\]\"
|
||||
|
|
97
.prompt
97
.prompt
|
@ -12,6 +12,30 @@ _BLU="\[\033[34m\]"
|
|||
_PRP="\[\033[35m\]"
|
||||
_CYN="\[\033[36m\]"
|
||||
_WHT="\[\033[37m\]"
|
||||
_BACK_BLK="\[\033[40m\]"
|
||||
_BACK_RED="\[\033[41m\]"
|
||||
_BACK_GRN="\[\033[42m\]"
|
||||
_BACK_YLW="\[\033[43m\]"
|
||||
_BACK_BLU="\[\033[44m\]"
|
||||
_BACK_PRP="\[\033[45m\]"
|
||||
_BACK_CYN="\[\033[46m\]"
|
||||
_BACK_WHT="\[\033[47m\]"
|
||||
_BRIGHT_BLK="\[\033[90m\]"
|
||||
_BRIGHT_RED="\[\033[91m\]"
|
||||
_BRIGHT_GRN="\[\033[92m\]"
|
||||
_BRIGHT_YLW="\[\033[93m\]"
|
||||
_BRIGHT_BLU="\[\033[94m\]"
|
||||
_BRIGHT_PRP="\[\033[95m\]"
|
||||
_BRIGHT_CYN="\[\033[96m\]"
|
||||
_BRIGHT_WHT="\[\033[97m\]"
|
||||
_BRIGHT_BACK_BLK="\[\033[100m\]"
|
||||
_BRIGHT_BACK_RED="\[\033[101m\]"
|
||||
_BRIGHT_BACK_GRN="\[\033[102m\]"
|
||||
_BRIGHT_BACK_YLW="\[\033[103m\]"
|
||||
_BRIGHT_BACK_BLU="\[\033[104m\]"
|
||||
_BRIGHT_BACK_PRP="\[\033[105m\]"
|
||||
_BRIGHT_BACK_CYN="\[\033[106m\]"
|
||||
_BRIGHT_BACK_WHT="\[\033[107m\]"
|
||||
|
||||
# Number of guix packages to show before truncating in `guix shell`
|
||||
_GUIX_MAXLIST=1
|
||||
|
@ -23,6 +47,32 @@ _MIN_US=0
|
|||
_SSH_LIMIT_START=4
|
||||
_SSH_LIMIT_END=4
|
||||
|
||||
# Colors (higher level)
|
||||
_COLOR_SSH_IP="${_CYN}"
|
||||
_COLOR_SSH_PORT="${_CYN}"
|
||||
_COLOR_SSH_PORT_SEP="${_PRP}${_BLD}"
|
||||
_COLOR_SSH_ASTRSK="${_WHT}"
|
||||
_COLOR_SSH_BRACKS="${_BLU}"
|
||||
|
||||
_COLOR_GUIX_BRACKS="${_BLD}${_BLU}"
|
||||
_COLOR_GUIX_GUIX="${_YLW}"
|
||||
_COLOR_GUIX_SEP=""
|
||||
_COLOR_GUIX_PKGS="${_WHT}"
|
||||
_COLOR_GUIX_OUT="${_WHT}"
|
||||
_COLOR_GUIX_PLUS=""
|
||||
_COLOR_GUIX_PKGNUM="${_PRP}"
|
||||
_COLOR_GUIX_PKG=""
|
||||
|
||||
_COLOR_UHD_BRACKS="${_BLD}${_BLU}"
|
||||
_COLOR_UHD_ROOT="${_BLD}${_RED}"
|
||||
_COLOR_UHD_NONROOT="${_BLD}${_YLW}"
|
||||
_COLOR_UHD_AT="${_BLD}${_PRP}"
|
||||
_COLOR_UHD_HOST="${_BLD}${_CYN}"
|
||||
_COLOR_UHD_SEP="${_BLD}${_PRP}"
|
||||
_COLOR_UHD_DIR="${_BLD}${_GRN}"
|
||||
|
||||
_COLOR_CMDTIME="${_YLW}"
|
||||
|
||||
__debug_trap() {
|
||||
# Set necessary pre-command variables (PROMPT_COMMAND is a
|
||||
# command so its excluded here)
|
||||
|
@ -112,15 +162,14 @@ __sig() {
|
|||
__ssh() {
|
||||
local CON=($SSH_CONNECTION)
|
||||
local SRV_IP="${CON[2]}"
|
||||
[[ $_SSH_LIMIT_START -lt 0 ]] && _SSH_LIMIT_START=0
|
||||
[[ $_SSH_LIMIT_END -lt 0 ]] && _SSH_LIMIT_END=0
|
||||
[[ $_SSH_LIMIT_START -lt 0 ]] && _SSH_LIMIT_START=0
|
||||
[[ $_SSH_LIMIT_END -lt 0 ]] && _SSH_LIMIT_END=0
|
||||
[[ -z "$SRV_IP" ]] && return
|
||||
local SRV_PORT="${CON[3]}"
|
||||
# 4 chars from startand 4 chars from end
|
||||
local SRV_IP_CUT="${_CYN}${SRV_IP}"
|
||||
[[ ${#SRV_IP} -gt $((_SSH_LIMIT_START+_SSH_LIMIT_END)) ]] && local SRV_IP_CUT="${_CYN}${SRV_IP:0:$_SSH_LIMIT_START}${_WHT}*${_CYN}${SRV_IP: -$_SSH_LIMIT_END}"
|
||||
local SRV_IP_CUT="${_COLOR_SSH_IP}${SRV_IP}"
|
||||
[[ ${#SRV_IP} -gt $((_SSH_LIMIT_START+_SSH_LIMIT_END)) ]] && local SRV_IP_CUT="${_COLOR_SSH_IP}${SRV_IP:0:$_SSH_LIMIT_START}${_COLOR_SSH_ASTRSK}*${_COLOR_SSH_IP}${SRV_IP: -$_SSH_LIMIT_END}"
|
||||
|
||||
printf '%s' "${_GRN}${_BLU}[${SRV_IP_CUT}${_PRP}${_BLD}:${_NON}${_CYN}${SRV_PORT}${_BLU}]${_NON}"
|
||||
printf '%s' "${_COLOR_SSH_BRACKS}[${_NON}${SRV_IP_CUT}${_COLOR_SSH_PORT_SEP}:${_NON}${_COLOR_SSH_PORT}${SRV_PORT}${_COLOR_SSH_BRACKS}]${_NON}"
|
||||
}
|
||||
|
||||
__guix_env() {
|
||||
|
@ -131,19 +180,35 @@ __guix_env() {
|
|||
local PACKAGES=($(while read -r line; do
|
||||
[[ "$line" =~ $re ]] && printf '%s ' "${BASH_REMATCH[1]}"
|
||||
done < $GUIX_ENVIRONMENT/manifest))
|
||||
local i=0
|
||||
local OUTPUTS=($(while read -r line; do
|
||||
if [[ "$line" =~ $re1 ]]; then
|
||||
local match="${BASH_REMATCH[1]}"
|
||||
[[ ! "${PACKAGES[*]}" =~ "$match" ]] && printf '%s ' "$match"
|
||||
if [[ ! "${PACKAGES[$i]}" == "$match" ]]; then
|
||||
printf '%s ' "$match"
|
||||
fi
|
||||
((i++))
|
||||
fi
|
||||
done < $GUIX_ENVIRONMENT/manifest))
|
||||
if [[ ${#PACKAGES[@]} -eq $((_GUIX_MAXLIST+1)) ]]; then
|
||||
printf "${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s ${_NON}+ ${_PRP}%d ${_NON}pkg${_BLD}${_BLU}] " "${PACKAGES[0]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != "out" ]] && printf ':%s' "${OUTPUTS[0]}")" "$((${#PACKAGES[@]}-1))"
|
||||
elif [[ ${#PACKAGES[@]} -gt $((_GUIX_MAXLIST+1)) ]]; then
|
||||
printf "${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s ${_NON}+ ${_PRP}%d ${_NON}pkgs${_BLD}${_BLU}] " "${PACKAGES[0]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != "out" ]] && printf ':%s' "${OUTPUTS[0]}")" "$((${#PACKAGES[@]}-1))"
|
||||
else
|
||||
printf "${_BLD}${_BLU}[${_NON}${_YLW}Guix${_NON}: ${_WHT}%s${_BLD}${_BLU}] " "${PACKAGES[@]}$([[ ${OUTPUTS[0]} && ${OUTPUTS[0]} != "out" ]] && printf ':%s' "${OUTPUTS[0]}")"
|
||||
local FULL_PKGS=($(for i in $(seq 0 $((${#PACKAGES[@]}-1))); do
|
||||
if [[ "${OUTPUTS[$i]}" == "out" ]]; then
|
||||
printf '%s ' "${_COLOR_GUIX_PKGS}${PACKAGES[$i]}${_NON}"
|
||||
else
|
||||
printf '%s ' "${_COLOR_GUIX_PKGS}${PACKAGES[$i]}${_NON}${_GUIX_COLOR_SEP}:${_COLOR_GUIX_OUT}${OUTPUTS[$i]}${_NON}"
|
||||
fi
|
||||
done))
|
||||
local FULL_PKG_STR="${FULL_PKGS[@]:0:$_GUIX_MAXLIST}"
|
||||
local EXTRA="$((${#FULL_PKGS[@]}-_GUIX_MAXLIST))"
|
||||
if [ ${_GUIX_MAXLIST} -gt 0 ] && [ $EXTRA -gt 0 ]; then
|
||||
FULL_PKG_STR+=" ${_NON}${_COLOR_GUIX_PLUS}+ "
|
||||
fi
|
||||
if [ $EXTRA -gt 1 ]; then
|
||||
FULL_PKG_STR+="${_NON}${_COLOR_GUIX_PKGNUM}$EXTRA ${_NON}${_COLOR_GUIX_PKG}pkgs"
|
||||
elif [ $EXTRA -eq 1 ]; then
|
||||
FULL_PKG_STR+="${_NON}${_COLOR_GUIX_PKGNUM}1 ${_NON}${_COLOR_GUIX_PKG}pkg"
|
||||
fi
|
||||
|
||||
printf %s "${_COLOR_GUIX_BRACKS}[${_NON}${_COLOR_GUIX_GUIX}Guix${_NON}${_COLOR_GUIX_SEP}: ${_NON}${FULL_PKG_STR}${_COLOR_GUIX_BRACKS}] "
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -207,11 +272,11 @@ __prompt() {
|
|||
GUIX="$(__guix_env)"
|
||||
|
||||
# [user@homeserver:~]
|
||||
COL="$([[ $UID == 0 ]] && printf '%s' "$_RED" || printf '%s' "$_YLW")"
|
||||
UHD="${_BLD}${_BLU}[${COL}\u${_PRP}@${_CYN}\h${_PRP}:${_GRN}\w${_BLU}]"
|
||||
COL="$([[ $UID == 0 ]] && printf '%s' "${_COLOR_UHD_ROOT}" || printf '%s' "${_COLOR_UHD_NONROOT}")"
|
||||
UHD="${_COLOR_UHD_BRACKS}[${_NON}${COL}\u${_NON}${_COLOR_UHD_AT}@${_NON}${_COLOR_UHD_HOST}\h${_NON}${_COLOR_UHD_SEP}:${_NON}${_COLOR_UHD_DIR}\w${_NON}${_COLOR_UHD_BRACKS}]"
|
||||
|
||||
# 2y 351d 12m 43s 382969μs
|
||||
TIME="${_YLW}$(__get_cmd_time)"
|
||||
TIME="${_COLOR_CMDTIME}$(__get_cmd_time)"
|
||||
|
||||
# Random colored $ or #
|
||||
_RAND256="\[\033[38;2;$((RANDOM%256));$((RANDOM%256));$((RANDOM%256))m\]"
|
||||
|
|
Loading…
Reference in New Issue