Reworked BASH-Prompt
This commit is contained in:
@@ -1,8 +1,11 @@
|
||||
PS1='\[\033[44;37m\]'$(printf '_%.0s' $(seq 1 $(tput cols)))'\[\033[1;0m\]\r\n\t \w :\n\$ '
|
||||
PS1='\[\033]0;\u - \w\007\]\[\033[44;37m\]'$(printf '_%.0s' $(seq 1 $(tput cols)))'\[\033[1;0m\]\r\n\t \w :\n\$ '
|
||||
[[ -f ~/.bash_prompt ]] && . ~/.bash_prompt
|
||||
alias mv="mv -vi"
|
||||
alias cp="cp -vi"
|
||||
alias '+'='pushd .'
|
||||
alias -- '-'='popd'
|
||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
alias pushalert='pushover --title "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
[[ -f ~/.shell_aliases ]] && . ~/.shell_aliases
|
||||
[[ -f ~/.config/z.sh ]] && . ~/.config/z.sh
|
||||
[[ -f ~/.oh-my-zsh/plugins/z/z.sh ]] && . ~/.oh-my-zsh/plugins/z/z.sh && set $_Z_OWNER=$(whoami)
|
||||
|
||||
72
config/bash_prompt
Normal file
72
config/bash_prompt
Normal file
@@ -0,0 +1,72 @@
|
||||
bash_prompt_command() {
|
||||
# How many characters of the $PWD should be kept
|
||||
local pwdmaxlen=$(( ${COLUMNS} - 11 ))
|
||||
# Indicate that there has been dir truncation
|
||||
local trunc_symbol="…"
|
||||
local dir=${PWD##*/}
|
||||
pwdmaxlen=$(( ( pwdmaxlen < ${#dir} ) ? ${#dir} : pwdmaxlen ))
|
||||
NEW_PWD=${PWD/#$HOME/\~}
|
||||
NEW_BAR="$(printf ' %.0s' $(seq 1 $COLUMNS))"
|
||||
local pwdoffset=$(( ${#NEW_PWD} - pwdmaxlen ))
|
||||
if [ ${pwdoffset} -gt "0" ]
|
||||
then
|
||||
NEW_PWD=${NEW_PWD:$pwdoffset:$pwdmaxlen}
|
||||
NEW_PWD=${trunc_symbol}/${NEW_PWD#*/}
|
||||
fi
|
||||
}
|
||||
|
||||
bash_prompt() {
|
||||
case $TERM in
|
||||
xterm*|rxvt*)
|
||||
local TITLEBAR='\[\033]0;\u:${NEW_PWD}\007\]'
|
||||
;;
|
||||
*)
|
||||
local TITLEBAR=""
|
||||
;;
|
||||
esac
|
||||
local NONE="\[\033[0m\]" # unsets color to term's fg color
|
||||
|
||||
# regular colors
|
||||
local K="\[\033[0;30m\]" # black
|
||||
local R="\[\033[0;31m\]" # red
|
||||
local G="\[\033[0;32m\]" # green
|
||||
local Y="\[\033[0;33m\]" # yellow
|
||||
local B="\[\033[0;34m\]" # blue
|
||||
local M="\[\033[0;35m\]" # magenta
|
||||
local C="\[\033[0;36m\]" # cyan
|
||||
local W="\[\033[0;37m\]" # white
|
||||
|
||||
# emphasized (bolded) colors
|
||||
local EMK="\[\033[1;30m\]"
|
||||
local EMR="\[\033[1;31m\]"
|
||||
local EMG="\[\033[1;32m\]"
|
||||
local EMY="\[\033[1;33m\]"
|
||||
local EMB="\[\033[1;34m\]"
|
||||
local EMM="\[\033[1;35m\]"
|
||||
local EMC="\[\033[1;36m\]"
|
||||
local EMW="\[\033[1;37m\]"
|
||||
|
||||
# background colors
|
||||
local BGK="\[\033[40m\]"
|
||||
local BGR="\[\033[41m\]"
|
||||
local BGG="\[\033[42m\]"
|
||||
local BGY="\[\033[43m\]"
|
||||
local BGB="\[\033[44m\]"
|
||||
local BGM="\[\033[45m\]"
|
||||
local BGC="\[\033[46m\]"
|
||||
local BGW="\[\033[47m\]"
|
||||
|
||||
local BAR_ON="\[\033[4;44;37m\]"
|
||||
local BAR_OFF="\[\033[1;0m\]"
|
||||
local UC=$W # user's color
|
||||
[ $UID -eq "0" ] && UC=$R # root's color
|
||||
|
||||
PS1="${TITLEBAR}${BAR_ON}\${NEW_BAR}${BAR_OFF}\r\n\t ${EMY}\${NEW_PWD}${EMK}]${UC}\n\\$ ${NONE}"
|
||||
#PS1="${TITLEBAR}${BAR_ON}$(printf '_%.0s' $(seq 1 $(tput cols)))${BAR_OFF}\r\n ${NEW_PWD} :\n\$ "
|
||||
#PS1='\[\033]0;\u - \w\007\]\[\033[44;37m\]'$(printf '_%.0s' $(seq 1 $(tput cols)))'\[\033[1;0m\]\r\n\t \w :\n\$ '
|
||||
# without colors: PS1="[\u@\h \${NEW_PWD}]\\$ "
|
||||
# extra backslash in front of \$ to make bash colorize the prompt
|
||||
}
|
||||
PROMPT_COMMAND=bash_prompt_command
|
||||
bash_prompt
|
||||
unset bash_prompt
|
||||
Reference in New Issue
Block a user