summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugues Hiegel <hugues.hiegel@anevia.com>2015-03-26 11:34:46 +0100
committerHugues Hiegel <hugues.hiegel@anevia.com>2015-03-30 11:05:18 +0200
commit33371ead181efe80d5cdfd3c2251d12dc2e62993 (patch)
treefdc177bf45187673959d1752328afa951f95eb37
parent90bb473b34e02c1c59c689cf30d03cbc6131aa5d (diff)
[Prompts] Cleanup project : Use %v wildcards in PS1 - Step #1
Moved out ps1_taskbar / ps1_extrainfo in external functions for use with %v Next step : get rid of full prompt elements computation...
-rw-r--r--12_Prompts.zsh38
1 files changed, 23 insertions, 15 deletions
diff --git a/12_Prompts.zsh b/12_Prompts.zsh
index 3b4ef52..82fab25 100644
--- a/12_Prompts.zsh
+++ b/12_Prompts.zsh
@@ -284,32 +284,40 @@ __display_vi_mode()
}
PS1_TASKBAR+=(__display_vi_mode)
-__two_lines_prompt ()
+__ps1_taskbar ()
{
- ## Le prompt le plus magnifique du monde, et c'est le mien !
- # Affiche l'user, l'host, le tty et le pwd. Rien que ça...
- #
- PS1_=$(print -Pn '\r')$HBAR_COLOR$HBAR$(print -Pn '\r')
- __debug "-----------------> taskbar..."
for trigger in $PS1_TASKBAR
do
__debug " ---> $trigger..."
result=$($trigger)
- [ -n "$result" ] && PS1_+=$_cuf1_${result}$C_$_prompt_colors[bar]$_C
+ [ -n "$result" ] && echo -n $_cuf1_${result}$C_$_prompt_colors[bar]$_C
done
+}
+__ps1_extrainfo ()
+{
+ for trigger in $PS1_EXTRA_INFO
+ do
+ __debug " ---> $trigger..."
+ result=$($trigger)
+ [ -n "$result" ] && echo -n " "${result}
+ done
+}
+__two_lines_prompt ()
+{
+ ## Le prompt le plus magnifique du monde, et c'est le mien !
+ # Affiche l'user, l'host, le tty et le pwd. Rien que ça...
+ #
+ PS1_=$(print -Pn '\r\n')$HBAR_COLOR$HBAR$(print -Pn '\r')
+ __debug "-----------------> taskbar..."
+ PS1_+=$(__ps1_taskbar)
__debug "-----------------> date..."
PS1_+=$(__show_date)
- __debug "-----------------> extra..."
PS1_+="
-"$C_$_prompt_colors[user]$_C"${USER:-%n}"$C_$_prompt_colors[arob]$_C"@"$C_$_prompt_colors[host]$_C"%M "$CURDIR${VCSBRANCH:+ $VCSBRANCH}
- for trigger in $PS1_EXTRA_INFO
- do
- __debug " ---> $trigger..."
- result=$($trigger)
- [ -n "$result" ] && PS1_+=" "${result}
- done
+"$C_$_prompt_colors[user]$_C"${USER:-%n}"$C_$_prompt_colors[arob]$_C"@"$C_$_prompt_colors[host]$_C"%M${SSH_CLIENT:+ ← $(host ${SSH_CLIENT/ */} | awk '{ gsub(/\.$/, "", $NF); print $NF }')} "$CURDIR${VCSBRANCH:+ $VCSBRANCH}
+ __debug "-----------------> extra..."
+ PS1_+=$(__ps1_extrainfo)
__debug "-----------------> PS1..."
PS1=$PS1_" "$C_$_prompt_colors[dies]$_C"%#"$C_$_prompt_colors[cmd]$_C" "