Skip to content

Instantly share code, notes, and snippets.

@thomasem
Created April 4, 2017 20:17

Revisions

  1. thomasem created this gist Apr 4, 2017.
    105 changes: 105 additions & 0 deletions .bash_profile
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,105 @@
    # SETUP CONSTANTS
    # Bunch-o-predefined colors. Makes reading code easier than escape sequences.
    # I don't remember where I found this. o_O

    # Reset
    Color_Off="\[\033[0m\]" # Text Reset

    # Regular Colors
    Black="\[\033[0;30m\]" # Black
    Red="\[\033[0;31m\]" # Red
    Green="\[\033[0;32m\]" # Green
    Yellow="\[\033[0;33m\]" # Yellow
    Blue="\[\033[0;34m\]" # Blue
    Purple="\[\033[0;35m\]" # Purple
    Cyan="\[\033[0;36m\]" # Cyan
    White="\[\033[0;37m\]" # White

    # Bold
    BBlack="\[\033[1;30m\]" # Black
    BRed="\[\033[1;31m\]" # Red
    BGreen="\[\033[1;32m\]" # Green
    BYellow="\[\033[1;33m\]" # Yellow
    BBlue="\[\033[1;34m\]" # Blue
    BPurple="\[\033[1;35m\]" # Purple
    BCyan="\[\033[1;36m\]" # Cyan
    BWhite="\[\033[1;37m\]" # White

    # Underline
    UBlack="\[\033[4;30m\]" # Black
    URed="\[\033[4;31m\]" # Red
    UGreen="\[\033[4;32m\]" # Green
    UYellow="\[\033[4;33m\]" # Yellow
    UBlue="\[\033[4;34m\]" # Blue
    UPurple="\[\033[4;35m\]" # Purple
    UCyan="\[\033[4;36m\]" # Cyan
    UWhite="\[\033[4;37m\]" # White

    # Background
    On_Black="\[\033[40m\]" # Black
    On_Red="\[\033[41m\]" # Red
    On_Green="\[\033[42m\]" # Green
    On_Yellow="\[\033[43m\]" # Yellow
    On_Blue="\[\033[44m\]" # Blue
    On_Purple="\[\033[45m\]" # Purple
    On_Cyan="\[\033[46m\]" # Cyan
    On_White="\[\033[47m\]" # White

    # High Intensty
    IBlack="\[\033[0;90m\]" # Black
    IRed="\[\033[0;91m\]" # Red
    IGreen="\[\033[0;92m\]" # Green
    IYellow="\[\033[0;93m\]" # Yellow
    IBlue="\[\033[0;94m\]" # Blue
    IPurple="\[\033[0;95m\]" # Purple
    ICyan="\[\033[0;96m\]" # Cyan
    IWhite="\[\033[0;97m\]" # White

    # Bold High Intensty
    BIBlack="\[\033[1;90m\]" # Black
    BIRed="\[\033[1;91m\]" # Red
    BIGreen="\[\033[1;92m\]" # Green
    BIYellow="\[\033[1;93m\]" # Yellow
    BIBlue="\[\033[1;94m\]" # Blue
    BIPurple="\[\033[1;95m\]" # Purple
    BICyan="\[\033[1;96m\]" # Cyan
    BIWhite="\[\033[1;97m\]" # White

    # High Intensty backgrounds
    On_IBlack="\[\033[0;100m\]" # Black
    On_IRed="\[\033[0;101m\]" # Red
    On_IGreen="\[\033[0;102m\]" # Green
    On_IYellow="\[\033[0;103m\]" # Yellow
    On_IBlue="\[\033[0;104m\]" # Blue
    On_IPurple="\[\033[10;95m\]" # Purple
    On_ICyan="\[\033[0;106m\]" # Cyan
    On_IWhite="\[\033[0;107m\]" # White

    # Various variables you might want for your PS1 prompt instead
    Time12h="\T"
    Time12a="\@"
    PathShort="\w"
    PathFull="\W"
    NewLine="\n"
    Jobs="\j"
    HostName="\h"
    User="\u"

    # include ~/.bashrc if exists
    if [ -f ~/.bashrc ]; then
    source ~/.bashrc
    fi

    # prompt setup
    export PS1=$BWhite'(py:$(pyenv global) | venv:${PYENV_VERSION:-NONE})\n'$Color_Off$BYellow"\D{%H:%M:%S(%z)} "$Color_Off$BGreen"$User@$HostName "$Color_Off$BBlue$PathShort" \$ "$Color_Off;

    # pyenv setup
    export PATH="${HOME}/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    export PYENV_VIRTUALENV_DISABLE_PROMPT=1
    # pyenv virtualenv activate default environment (optional)
    # pyenv activate default-3.6.1

    # PATH setup to include binaries in home directory
    export PATH="${HOME}/bin:${PATH}"