diff options
Diffstat (limited to 'bash')
-rw-r--r-- | bash/bash_profile | 12 | ||||
-rw-r--r-- | bash/bashrc | 95 |
2 files changed, 107 insertions, 0 deletions
diff --git a/bash/bash_profile b/bash/bash_profile new file mode 100644 index 0000000..031ab84 --- /dev/null +++ b/bash/bash_profile @@ -0,0 +1,12 @@ +# .bash_profile + +# Get the aliases and functions +if [ -f ~/.bashrc ]; then + . ~/.bashrc +fi + +# User specific environment and startup programs + +PATH=$PATH:$HOME/.local/bin:$HOME/bin + +export PATH diff --git a/bash/bashrc b/bash/bashrc new file mode 100644 index 0000000..e939e42 --- /dev/null +++ b/bash/bashrc @@ -0,0 +1,95 @@ +# .bashrc + +# Source global definitions +if [ -f /etc/bashrc ]; then + . /etc/bashrc +fi + +# Uncomment the following line if you don't like systemctl's auto-paging feature: +# export SYSTEMD_PAGER= + +# User specific aliases and functions + +# Alias stuffs +alias grep='grep --color=auto' +alias fgrep='fgrep --color=auto' +alias egrep='egrep --color=auto' + +alias ls='ls --color=auto' +alias la='ls -a' +alias lsd='ls -lh' + +alias record-audio='ffmpeg -f pulse -i default' +alias python='python3' + + +# +# Define some colors first: Capitals denote bold +# +black='\e[0;30m' +BLACK='\e[1;30m' +dgray='\e[0;90m' +DGRAY='\e[1;90m' +red='\e[0;31m' +RED='\e[1;31m' +lred='\e[0;91m' +LRED='\e[0;91m' +green='\e[0;32m' +GREEN='\e[1;32m' +lgreen='\e[0;92m' +LGREEN='\e[1;92m' +yellow='\e[0;33m' +YELLOW='\e[1;33m' +lyellow='\e[0;93m' +LYELLOW='\e[1;93m' +blue='\e[0;34m' +BLUE='\e[1;34m' +lblue='\e[0;94m' +LBLUE='\e[1;94m' +magenta='\e[0;35m' +MAGENTA='\e[1;35m' +lmagenta='\e[0;95m' +LMAGENTA='\e[1;95m' +cyan='\e[0;36m' +CYAN='\e[1;36m' +lcyan='\e[0;96m' +LCYAN='\e[1;96m' +lgray='\e[0;37m' +LGRAY='\e[1;37m' +NC='\e[0m' # No Color + +# Taken from http://www.opinionatedprogrammer.com/2011/01/colorful-bash-prompt-reflecting-git-status/ +function _git_prompt() { + local git_status="`git status -unormal 2>&1`" + if ! [[ "$git_status" =~ Not\ a\ git\ repo ]]; then + if [[ "$git_status" =~ nothing\ to\ commit ]]; then + local ansi=$GREEN + elif [[ "$git_status" =~ nothing\ added\ to\ commit\ but\ untracked\ files\ present ]]; then + local ansi=$RED + else + local ansi=$YELLOW + fi + if [[ "$git_status" =~ On\ branch\ ([^[:space:]]+) ]]; then + branch=${BASH_REMATCH[1]} + #test "$branch" != master || branch=' ' + else + # Detached HEAD. (branch=HEAD is a faster alternative.) + branch="`git describe --all --contains --abbrev=4 HEAD 2> /dev/null || + echo local`" + fi + if ! [[ "$branch" =~ local ]]; then + echo -n '\['"$ansi"'\](in git branch '"$branch"') ' + fi + fi +} + +function report_status() { + RET_CODE=$? + if [[ $RET_CODE -ne 0 ]] ; then + echo -ne "[\[$RED\]$RET_CODE\[$NC\]]" + fi +} + +#export _PS1="\[$RED\]\u\[$NC\]@\[$YELLOW\]\h \[$yellow\]\w | \[$GREEN\]\V\s \[$BLUE\]\d \@ \[$NC\]" +export _PS1="\[$LCYAN\]\u \[$dgray\]at \[$GREEN\]\h \[$dgray\]in \[$NC\]\w " +export PROMPT_COMMAND='export PS1="${_status}${_PS1}$(_git_prompt)\[$NC\]\$ "' |