chore: tidyup
This commit is contained in:
@@ -66,12 +66,13 @@ _screen_module_colour="33"
|
||||
# ---
|
||||
# * Miscellaneous
|
||||
# ---
|
||||
_prompt_hostname="all"
|
||||
_prompt_hostname="ssh"
|
||||
_prompt_separator=" "
|
||||
_prompt_wrapper="[]"
|
||||
|
||||
# ---
|
||||
# // Nerd Symbols
|
||||
# // * Nerd Symbols
|
||||
# // OBSOLETE 2025-11-07
|
||||
# ---
|
||||
# _git_symbol=""
|
||||
# _pyenv_symbol=""
|
||||
@@ -135,20 +136,19 @@ _screen_pre() {
|
||||
# * Git
|
||||
# ---
|
||||
_git_post() {
|
||||
[[ -z "$_git_dir" ]] && _git_dir="$(git rev-parse --git-dir 2>/dev/null)"
|
||||
[[ -n "$_git_dir" ]] || return
|
||||
[[ -z "$_git_dir" ]] && _git_dir="$(git rev-parse --git-dir 2>/dev/null)"
|
||||
[[ -n "$_git_dir" ]] || return
|
||||
|
||||
local _unsafe_ref
|
||||
_unsafe_ref=$(git symbolic-ref -q HEAD 2>/dev/null) || return
|
||||
local _clean_ref="${_unsafe_ref##refs/heads/}"
|
||||
_clean_ref="${_clean_ref//[^a-zA-Z0-9\/]/-}"
|
||||
local _unsafe_ref
|
||||
_unsafe_ref=$(git symbolic-ref -q HEAD 2>/dev/null) || return
|
||||
local _clean_ref="${_unsafe_ref##refs/heads/}"
|
||||
_clean_ref="${_clean_ref//[^a-zA-Z0-9\/]/-}"
|
||||
|
||||
# Add status indicators
|
||||
local _status=""
|
||||
[[ -n "$(git status --porcelain 2>/dev/null)" ]] && _status="*"
|
||||
[[ -n "$(git ls-files --others --exclude-standard 2>/dev/null)" ]] && _status="${_status}+"
|
||||
local _status=""
|
||||
[[ -n "$(git status --porcelain 2>/dev/null)" ]] && _status="*"
|
||||
[[ -n "$(git ls-files --others --exclude-standard 2>/dev/null)" ]] && _status="${_status}+"
|
||||
|
||||
[[ -n ${_clean_ref} ]] && _prompt_generate "${_git_symbol} ${_clean_ref}${_status}|${_git_module_colour}"
|
||||
[[ -n ${_clean_ref} ]] && _prompt_generate "${_git_symbol} ${_clean_ref}${_status}|${_git_module_colour}"
|
||||
}
|
||||
|
||||
# ---
|
||||
@@ -197,38 +197,33 @@ _prompt_build() {
|
||||
# END
|
||||
|
||||
# ---
|
||||
# * User and hostname
|
||||
# ---
|
||||
declare _user_colour="${_prompt_user_colour}"
|
||||
sudo -nv 2>/dev/null && _user_colour="${_prompt_sudo_colour}"
|
||||
# * User and hostname
|
||||
# ---
|
||||
declare _user_colour="${_prompt_user_colour}"
|
||||
sudo -nv 2>/dev/null && _user_colour="${_prompt_sudo_colour}"
|
||||
|
||||
_gen_uh="${_cached_uh}"
|
||||
# Change the cache key to include sudo status
|
||||
_uh_cache_key="${_prompt_hostname}:${SSH_CLIENT:-}:$(sudo -n -v 2>/dev/null && echo 'sudo' || echo 'nosudo')"
|
||||
_gen_uh="${_cached_uh}"
|
||||
_uh_cache_key="${_prompt_hostname}:${SSH_CLIENT:-}:$(sudo -n -v 2>/dev/null && echo 'sudo' || echo 'nosudo')"
|
||||
|
||||
[[ "$_uh_cache_key" != "$_last_uh_key" ]] && {
|
||||
_gen_uh="$(_prompt_colour "${_user_colour}")${USER}"
|
||||
[[ "$_uh_cache_key" != "$_last_uh_key" ]] && {
|
||||
_gen_uh="$(_prompt_colour "${_user_colour}")${USER}"
|
||||
|
||||
# Add hostname if needed
|
||||
if [[ ${_prompt_hostname} == "all" ]] || [[ ${_prompt_hostname} == "ssh" && -n ${SSH_CLIENT} ]]; then
|
||||
_gen_uh+="$(_prompt_colour "${_prompt_at_colour}")@$(_prompt_colour "${_prompt_hostname_colour}")${HOSTNAME}"
|
||||
fi
|
||||
if [[ ${_prompt_hostname} == "all" ]] || [[ ${_prompt_hostname} == "ssh" && -n ${SSH_CLIENT} ]]; then
|
||||
_gen_uh+="$(_prompt_colour "${_prompt_at_colour}")@$(_prompt_colour "${_prompt_hostname_colour}")${HOSTNAME}"
|
||||
fi
|
||||
|
||||
_gen_uh+="\[\033[0m\]" # Reset color
|
||||
_cached_uh="$_gen_uh"
|
||||
_last_uh_key="$_uh_cache_key"
|
||||
}
|
||||
_prompt_generate "${_gen_uh}|${_prompt_info_colour}"
|
||||
_gen_uh+="\[\033[0m\]"
|
||||
_cached_uh="$_gen_uh"
|
||||
_last_uh_key="$_uh_cache_key"
|
||||
}
|
||||
_prompt_generate "${_gen_uh}|${_prompt_info_colour}"
|
||||
|
||||
|
||||
|
||||
# ---
|
||||
# * Current directory
|
||||
# ---
|
||||
declare _current_dir="${PWD}"
|
||||
_current_dir="${_current_dir/#$HOME/\~}"
|
||||
# Build the segment with individual colours for each part
|
||||
_prompt_generate "$(_prompt_colour "${_prompt_info_colour}")${_prompt_wrapper:0:1}$(_prompt_colour "${_prompt_dir_colour}")${_current_dir}$(_prompt_colour "${_prompt_info_colour}")${_prompt_wrapper:1:1}\[\033[0m\]|${_prompt_info_colour}"
|
||||
# ---
|
||||
# * Current directory
|
||||
# ---
|
||||
declare _current_dir="${PWD}"
|
||||
_current_dir="${_current_dir/#$HOME/\~}"
|
||||
_prompt_generate "$(_prompt_colour "${_prompt_info_colour}")${_prompt_wrapper:0:1}$(_prompt_colour "${_prompt_dir_colour}")${_current_dir}$(_prompt_colour "${_prompt_info_colour}")${_prompt_wrapper:1:1}\[\033[0m\]|${_prompt_info_colour}"
|
||||
|
||||
# ---
|
||||
# * Error status
|
||||
@@ -249,10 +244,8 @@ _prompt_generate "$(_prompt_colour "${_prompt_info_colour}")${_prompt_wrapper:0:
|
||||
# *Final prompt symbol
|
||||
# ---
|
||||
_prompt_status_colour=${_prompt_success_colour}
|
||||
[[ ${_last_status} -ne 0 ]]&& _prompt_status_colour=${_prompt_fail_colour}
|
||||
|
||||
[[ ${_last_status} -ne 0 ]] && _prompt_status_colour=${_prompt_fail_colour}
|
||||
_prompt_information+="$(_prompt_colour "${_prompt_status_colour}")\n${_prompt_symbol}\[\e[0m\]"
|
||||
|
||||
PS1="${_prompt_information} "
|
||||
unset _prompt_information _prompt_seg
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user