Skip to content

Instantly share code, notes, and snippets.

@jcandan
Last active November 16, 2020 22:03
Show Gist options
  • Save jcandan/ceca74b19a45398c06bed63fbaf527ef to your computer and use it in GitHub Desktop.
Save jcandan/ceca74b19a45398c06bed63fbaf527ef to your computer and use it in GitHub Desktop.
# vim: set filetype=bash:
# use bash completion helper
if [ -f `brew --prefix`/etc/bash_completion ]; then
. `brew --prefix`/etc/bash_completion
fi
# use git completion helper
if [ -f /usr/local/etc/bash_completion.d/git-completion.bash ]; then
# source ~/.git-completion.bash
source /usr/local/etc/bash_completion.d/git-completion.bash
fi
# use git prompt helper
if [ -f /usr/local/etc/bash_completion.d/git-prompt.sh ]; then
# PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
# source ~/.git-completion.bash
source /usr/local/etc/bash_completion.d/git-prompt.sh
fi
# color grep search terms
export GREP_OPTIONS='--color=auto'
# vim in bash interactive
set -o vi
alias ll='ls -lahG --color'
alias home='cd ~'
alias up='cd ..'
alias h='history'
alias ding='afplay --volume 40 /System/Library/Sounds/Submarine.aiff'
alias avail="df -h | grep dev | awk '{print $4}'"
# git shortcuts
alias gs='git status'
alias gd='git diff'
# Make these destructive commands prompt
alias mv='mv -i'
alias cp='cp -i'
alias rm='rm -i'
# destructive docker alias
alias dockerdestroyall='docker kill $(docker ps -aq); docker rm $(docker ps -aq); docker rmi $(docker images -q); docker volume rm $(docker volume ls -q);'
# DRUSH alias
alias drush="drush --strict=0"
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# Customize BASH PS1 prompt to show current GIT repository and branch.
# by Mike Stewart - http://MediaDoneRight.com
# 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"
# This PS1 snippet was adopted from code for MAC/BSD I saw from: http://allancraig.net/index.php?option=com_content&view=article&id=108:ps1-export-command-for-git&catid=45:general&Itemid=96
## export PS1=$IBlack$Time12h$Green'\u:'$Yellow$PathShort$Color_Off'$(git branch &>/dev/null;\
## if [ $? -eq 0 ]; then \
## echo "$(echo `git status` | grep "nothing to commit" > /dev/null 2>&1; \
## if [ "$?" -eq "0" ]; then \
## # @4 - Clean repository - nothing to commit
## echo "'$Green'"$(__git_ps1 " (%s)"); \
## else \
## # @5 - Changes to working tree
## echo "'$IRed'"$(__git_ps1 " {%s}"); \
## fi) ";\
## fi) '$Color_Off'\$ '
export PS1=$IBlack$Time12h$Green'\u:'$Yellow'\W'$Color_Off'$(git branch &>/dev/null;\
if [ $? -eq 0 ]; then \
echo "$(echo `git status` | grep "nothing to commit" > /dev/null 2>&1; \
if [ "$?" -eq "0" ]; then \
# @4 - Clean repository - nothing to commit
echo "'$Green'"$(__git_ps1 " (%s)"); \
else \
# @5 - Changes to working tree
echo "'$IRed'"$(__git_ps1 " {%s}"); \
fi) ";\
fi) '$Color_Off'\$ '
# if not running interactively, don't do anything
[ -z "$PS1" ] && return
# enable bash aliases
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
[user]
name = James Candan
email = me@example.co
[color]
ui = true
[core]
excludesfile = ~/.gitignore
editor = vim
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
dc = diff --cached
log = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
who = shortlog -s --
ignore = update-index --assume-unchanged
unignore = update-index --no-assume-unchanged
ignored = !git ls-files -v | grep "^[[:lower:]]"
workprofile = config user.email \"me@myworkexample.com\"
.DS_Store
*.sublime*
/.sass-cache
.idea
-l1
*.swp
*.swo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment