Import existing bashrc and depending bashrc files
parent
16c4979878
commit
d72be38811
@ -0,0 +1,68 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
pods_dir='~/podcasts'
|
||||||
|
# Aliases for OS X
|
||||||
|
if [[ `uname` == 'Darwin' ]]; then
|
||||||
|
alias ls='ls -G'
|
||||||
|
alias grep='grep --color'
|
||||||
|
alias fgrep='fgrep --color'
|
||||||
|
alias egrep='egrep --color'
|
||||||
|
|
||||||
|
music_dir='~/Music'
|
||||||
|
desktop_dir='~/Desktop'
|
||||||
|
docs_dir='~/Documents'
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 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'
|
||||||
|
|
||||||
|
music_dir='~/music'
|
||||||
|
desktop_dir='~/desktop'
|
||||||
|
docs_dir='~/documents'
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Some common aliases
|
||||||
|
alias ll='ls -alF'
|
||||||
|
alias df='df -h'
|
||||||
|
alias du='du -h'
|
||||||
|
alias curl='curl -s '
|
||||||
|
|
||||||
|
# Shorthand helpers
|
||||||
|
alias 644='chmod 644 '
|
||||||
|
alias 755='chmod 755 '
|
||||||
|
alias 600='chmod 600 '
|
||||||
|
alias 700='chmod 500 '
|
||||||
|
alias +x='chmod +x '
|
||||||
|
alias ..='cd .. '
|
||||||
|
|
||||||
|
# Some specialty aliases
|
||||||
|
alias wget-opendir='wget -r -l 0 -c -nc -np -e robots=off --random-wait --limit-rate=800000k --reject=html,htm,index'
|
||||||
|
alias youtube-dl='youtube-dl -t '
|
||||||
|
alias rsync-win='rsync --recursive --verbose --times --modify-window=1 '
|
||||||
|
alias can-upgrade='sudo apt-get update && sudo apt-get upgrade -y '
|
||||||
|
alias can-find='aptitude search '
|
||||||
|
alias can-haz='sudo apt-get install '
|
||||||
|
alias curl-headers='curl -s -v -I '
|
||||||
|
alias take='sudo chown `whoami`:`whoami` '
|
||||||
|
alias simple-http-server='python -m SimpleHTTPServer'
|
||||||
|
alias numfiles='find . -maxdepth 1 -type f | wc -l'
|
||||||
|
alias deepgrep='find . -type f | sed "s/$/\"/g" | sed "s/^/\"/g" | xargs grep --color '
|
||||||
|
|
||||||
|
# Move around to common locations
|
||||||
|
alias desktop="cd $desktop_dir"
|
||||||
|
alias podcasts="cd $pods_dir"
|
||||||
|
alias code='cd ~/code/ '
|
||||||
|
alias music="cd $music_dir"
|
||||||
|
alias documents="cd $docs_dir"
|
||||||
|
|
||||||
|
# Will add these scripts later
|
||||||
|
#alias podcasts-play-playlist="cd $pods_dir && mkpodcastplaylist ./ > pods.m3u && vlc pods.m3u 2>/dev/null &"
|
||||||
|
|
@ -0,0 +1,75 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Reset
|
||||||
|
color_off='\e[0m' # Text Reset
|
||||||
|
|
||||||
|
# Regular Colors
|
||||||
|
black='\e[0;30m' # Black
|
||||||
|
red='\e[0;31m' # Red
|
||||||
|
green='\e[0;32m' # Green
|
||||||
|
yellow='\e[0;33m' # Yellow
|
||||||
|
blue='\e[0;34m' # Blue
|
||||||
|
purple='\e[0;35m' # Purple
|
||||||
|
cyan='\e[0;36m' # Cyan
|
||||||
|
white='\e[0;37m' # White
|
||||||
|
|
||||||
|
# Bold
|
||||||
|
bblack='\e[1;30m' # Black
|
||||||
|
bred='\e[1;31m' # Red
|
||||||
|
bgreen='\e[1;32m' # Green
|
||||||
|
byellow='\e[1;33m' # Yellow
|
||||||
|
bblue='\e[1;34m' # Blue
|
||||||
|
bpurple='\e[1;35m' # Purple
|
||||||
|
bcyan='\e[1;36m' # Cyan
|
||||||
|
bwhite='\e[1;37m' # White
|
||||||
|
|
||||||
|
# Underline
|
||||||
|
ublack='\e[4;30m' # Black
|
||||||
|
ured='\e[4;31m' # Red
|
||||||
|
ugreen='\e[4;32m' # Green
|
||||||
|
uyellow='\e[4;33m' # Yellow
|
||||||
|
ublue='\e[4;34m' # Blue
|
||||||
|
upurple='\e[4;35m' # Purple
|
||||||
|
ucyan='\e[4;36m' # Cyan
|
||||||
|
uwhite='\e[4;37m' # White
|
||||||
|
|
||||||
|
# Background
|
||||||
|
on_black='\e[40m' # Black
|
||||||
|
on_red='\e[41m' # Red
|
||||||
|
on_green='\e[42m' # Green
|
||||||
|
on_yellow='\e[43m' # Yellow
|
||||||
|
on_blue='\e[44m' # Blue
|
||||||
|
on_purple='\e[45m' # Purple
|
||||||
|
on_cyan='\e[46m' # Cyan
|
||||||
|
on_white='\e[47m' # White
|
||||||
|
|
||||||
|
# High Intensty
|
||||||
|
iblack='\e[0;90m' # Black
|
||||||
|
ired='\e[0;91m' # Red
|
||||||
|
igreen='\e[0;92m' # Green
|
||||||
|
iyellow='\e[0;93m' # Yellow
|
||||||
|
iblue='\e[0;94m' # Blue
|
||||||
|
ipurple='\e[0;95m' # Purple
|
||||||
|
icyan='\e[0;96m' # Cyan
|
||||||
|
iwhite='\e[0;97m' # White
|
||||||
|
|
||||||
|
# Bold High Intensty
|
||||||
|
biblack='\e[1;90m' # Black
|
||||||
|
biRed='\e[1;91m' # Red
|
||||||
|
biGreen='\e[1;92m' # Green
|
||||||
|
biYellow='\e[1;93m' # Yellow
|
||||||
|
biBlue='\e[1;94m' # Blue
|
||||||
|
biPurple='\e[1;95m' # Purple
|
||||||
|
biCyan='\e[1;96m' # Cyan
|
||||||
|
biWhite='\e[1;97m' # White
|
||||||
|
|
||||||
|
# High Intensty backgrounds
|
||||||
|
on_iblack='\e[0;100m' # Black
|
||||||
|
on_ired='\e[0;101m' # Red
|
||||||
|
on_igreen='\e[0;102m' # Green
|
||||||
|
on_iyellow='\e[0;103m' # Yellow
|
||||||
|
on_iblue='\e[0;104m' # Blue
|
||||||
|
on_ipurple='\e[10;95m' # Purple
|
||||||
|
on_icyan='\e[0;106m' # Cyan
|
||||||
|
on_iwhite='\e[0;107m' # White
|
||||||
|
|
@ -0,0 +1,48 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# don't put duplicate lines in the history. See bash(1) for more options
|
||||||
|
# ... or force ignoredups and ignorespace
|
||||||
|
HISTCONTROL=ignoredups:ignorespace
|
||||||
|
|
||||||
|
# append to the history file, don't overwrite it
|
||||||
|
shopt -s histappend
|
||||||
|
|
||||||
|
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||||
|
HISTSIZE=10000
|
||||||
|
HISTFILESIZE=20000
|
||||||
|
|
||||||
|
# check the window size after each command and, if necessary,
|
||||||
|
# update the values of LINES and COLUMNS.
|
||||||
|
shopt -s checkwinsize
|
||||||
|
|
||||||
|
# make less more friendly for non-text input files, see lesspipe(1)
|
||||||
|
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||||
|
|
||||||
|
if [ "$TERM" == "xterm" ]; then
|
||||||
|
export TERM=xterm-256color
|
||||||
|
fi
|
||||||
|
|
||||||
|
function _add-path {
|
||||||
|
dir="$1"
|
||||||
|
if [[ -d $dir ]]; then
|
||||||
|
PATH=$dir:$PATH
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_add-path /var/lib/gems/1.8/bin
|
||||||
|
_add-path ~/opt/bin
|
||||||
|
_add-path /opt/local/bin
|
||||||
|
_add-path /opt/local/sbin
|
||||||
|
_add-path /opt/bin
|
||||||
|
_add-path ~/bin
|
||||||
|
_add-path ~/code/cli/bin
|
||||||
|
_add-path ~/code/ci/phpunit-git-deploy/bin
|
||||||
|
|
||||||
|
export EDITOR='vim'
|
||||||
|
|
||||||
|
# python virtualenvwrapper
|
||||||
|
export WORKON_HOME="$HOME/.virtualenvs"
|
||||||
|
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
|
||||||
|
source /usr/local/bin/virtualenvwrapper.sh
|
||||||
|
fi
|
||||||
|
|
@ -0,0 +1,51 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Taken from: http://www.commandlinefu.com/commands/view/4873/google-spell-checker
|
||||||
|
function spellcheck () {
|
||||||
|
typeset y=$@;curl -sd "<spellrequest><text>$y</text></spellrequest>" https://www.google.com/tbproxy/spell|sed -n '/s="[0-9]"/{s/<[^>]*>/ /g;s/\t/ /g;s/ *\(.*\)/Suggestions: \1\n/g;p}'|tee >(grep -Eq '.*'||echo -e "OK");
|
||||||
|
}
|
||||||
|
|
||||||
|
function min-jpg {
|
||||||
|
tmpfile=`mktemp`
|
||||||
|
ogfile="$1"
|
||||||
|
jpegtran -optimize -perfect -outfile $tmpfile $ogfile
|
||||||
|
mv $tmpfile $ogfile
|
||||||
|
}
|
||||||
|
|
||||||
|
function min-png {
|
||||||
|
tmpfile=`mktemp`
|
||||||
|
ogfile="$1"
|
||||||
|
pngcrush -rem alla -reduce -brute $ogfile $tmpfile
|
||||||
|
mv $tmpfile $ogfile
|
||||||
|
}
|
||||||
|
|
||||||
|
function parse_git_status {
|
||||||
|
if [[ $(git status 2> /dev/null | wc -l) -eq 0 ]]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
if [[ $(git status 2> /dev/null | grep "working directory clean" | wc -l) -eq 0 ]]; then
|
||||||
|
echo '∓'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function parse_git_branch {
|
||||||
|
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
|
||||||
|
}
|
||||||
|
|
||||||
|
function get-create-date {
|
||||||
|
date=`date -r "$1" +"%F"`
|
||||||
|
echo $date
|
||||||
|
}
|
||||||
|
|
||||||
|
function add-date-prefix {
|
||||||
|
DIR=`dirname "$1"`
|
||||||
|
FILE=`basename "$1"`
|
||||||
|
DATE=`date -r "$1" +"%F"`
|
||||||
|
|
||||||
|
mv "$1" "$DIR/$DATE_$FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
function get-bitrate {
|
||||||
|
echo `exiftool -AudioBitrate "$1" | awk '{print $4}'`": $1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,197 @@
|
|||||||
|
#!bash
|
||||||
|
#
|
||||||
|
# git-flow-completion
|
||||||
|
# ===================
|
||||||
|
#
|
||||||
|
# Bash completion support for [git-flow](http://github.com/nvie/gitflow)
|
||||||
|
#
|
||||||
|
# The contained completion routines provide support for completing:
|
||||||
|
#
|
||||||
|
# * git-flow init and version
|
||||||
|
# * feature, hotfix and release branches
|
||||||
|
# * remote feature, hotfix and release branch names
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Installation
|
||||||
|
# ------------
|
||||||
|
#
|
||||||
|
# To achieve git-flow completion nirvana:
|
||||||
|
#
|
||||||
|
# 0. Install git-completion.
|
||||||
|
#
|
||||||
|
# 1. Install this file. Either:
|
||||||
|
#
|
||||||
|
# a. Place it in a `bash-completion.d` folder:
|
||||||
|
#
|
||||||
|
# * /etc/bash-completion.d
|
||||||
|
# * /usr/local/etc/bash-completion.d
|
||||||
|
# * ~/bash-completion.d
|
||||||
|
#
|
||||||
|
# b. Or, copy it somewhere (e.g. ~/.git-flow-completion.sh) and put the following line in
|
||||||
|
# your .bashrc:
|
||||||
|
#
|
||||||
|
# source ~/.git-flow-completion.sh
|
||||||
|
#
|
||||||
|
# 2. If you are using Git < 1.7.1: Edit git-completion.sh and add the following line to the giant
|
||||||
|
# $command case in _git:
|
||||||
|
#
|
||||||
|
# flow) _git_flow ;;
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# The Fine Print
|
||||||
|
# --------------
|
||||||
|
#
|
||||||
|
# Copyright (c) 2011 [Justin Hileman](http://justinhileman.com)
|
||||||
|
#
|
||||||
|
# Distributed under the [MIT License](http://creativecommons.org/licenses/MIT/)
|
||||||
|
|
||||||
|
_git_flow ()
|
||||||
|
{
|
||||||
|
local subcommands="init feature release hotfix help version"
|
||||||
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
|
if [ -z "$subcommand" ]; then
|
||||||
|
__gitcomp "$subcommands"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$subcommand" in
|
||||||
|
init)
|
||||||
|
__git_flow_init
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
feature)
|
||||||
|
__git_flow_feature
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
release)
|
||||||
|
__git_flow_release
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
hotfix)
|
||||||
|
__git_flow_hotfix
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
COMPREPLY=()
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_init ()
|
||||||
|
{
|
||||||
|
local subcommands="help"
|
||||||
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
|
if [ -z "$subcommand" ]; then
|
||||||
|
__gitcomp "$subcommands"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_feature ()
|
||||||
|
{
|
||||||
|
local subcommands="list start finish publish track diff rebase checkout pull help"
|
||||||
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
|
if [ -z "$subcommand" ]; then
|
||||||
|
__gitcomp "$subcommands"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$subcommand" in
|
||||||
|
pull)
|
||||||
|
__gitcomp "$(__git_remotes)"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
checkout|finish|diff|rebase)
|
||||||
|
__gitcomp "$(__git_flow_list_branches 'feature')"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
publish)
|
||||||
|
__gitcomp "$(comm -23 <(__git_flow_list_branches 'feature') <(__git_flow_list_remote_branches 'feature'))"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
track)
|
||||||
|
__gitcomp "$(comm -23 <(__git_flow_list_remote_branches 'feature') <(__git_flow_list_branches 'feature'))"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
COMPREPLY=()
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_release ()
|
||||||
|
{
|
||||||
|
local subcommands="list start finish track publish help"
|
||||||
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
|
if [ -z "$subcommand" ]; then
|
||||||
|
__gitcomp "$subcommands"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$subcommand" in
|
||||||
|
finish)
|
||||||
|
__gitcomp "$(__git_flow_list_branches 'release')"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
publish)
|
||||||
|
__gitcomp "$(comm -23 <(__git_flow_list_branches 'release') <(__git_flow_list_remote_branches 'release'))"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
track)
|
||||||
|
__gitcomp "$(comm -23 <(__git_flow_list_remote_branches 'release') <(__git_flow_list_branches 'release'))"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
COMPREPLY=()
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_hotfix ()
|
||||||
|
{
|
||||||
|
local subcommands="list start finish help"
|
||||||
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
|
if [ -z "$subcommand" ]; then
|
||||||
|
__gitcomp "$subcommands"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$subcommand" in
|
||||||
|
finish)
|
||||||
|
__gitcomp "$(__git_flow_list_branches 'hotfix')"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
COMPREPLY=()
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_prefix ()
|
||||||
|
{
|
||||||
|
case "$1" in
|
||||||
|
feature|release|hotfix)
|
||||||
|
git config "gitflow.prefix.$1" 2> /dev/null || echo "$1/"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_list_branches ()
|
||||||
|
{
|
||||||
|
local prefix="$(__git_flow_prefix $1)"
|
||||||
|
git branch 2> /dev/null | tr -d ' |*' | grep "^$prefix" | sed s,^$prefix,, | sort
|
||||||
|
}
|
||||||
|
|
||||||
|
__git_flow_list_remote_branches ()
|
||||||
|
{
|
||||||
|
local prefix="$(__git_flow_prefix $1)"
|
||||||
|
local origin="$(git config gitflow.origin 2> /dev/null || echo "origin")"
|
||||||
|
git branch -r 2> /dev/null | sed "s/^ *//g" | grep "^$origin/$prefix" | sed s,^$origin/$prefix,, | sort
|
||||||
|
}
|
||||||
|
|
||||||
|
# alias __git_find_on_cmdline for backwards compatibility
|
||||||
|
if [ -z "`type -t __git_find_on_cmdline`" ]; then
|
||||||
|
alias __git_find_on_cmdline=__git_find_subcommand
|
||||||
|
fi
|
@ -0,0 +1,17 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# display hostname
|
||||||
|
PS1="\[$blue\]«\h»"
|
||||||
|
# display separator
|
||||||
|
PS1="$PS1\[$yellow\]⚡"
|
||||||
|
# display current path
|
||||||
|
PS1="$PS1\[$green\]\w "
|
||||||
|
# display git branch
|
||||||
|
PS1="$PS1\[$bblack\]"'$(parse_git_branch)'
|
||||||
|
# display git status
|
||||||
|
PS1="$PS1\[$yellow\]"'$(parse_git_status) '
|
||||||
|
# display date
|
||||||
|
PS1="$PS1\[$black\]\D{%F %I:%M%P} "
|
||||||
|
# display date
|
||||||
|
PS1="$PS1\[$color_off\]\n⚓ "
|
||||||
|
|
@ -0,0 +1,38 @@
|
|||||||
|
# If not running interactively, don't do anything
|
||||||
|
[ -z "$PS1" ] && return
|
||||||
|
|
||||||
|
if [ -f ~/.bash/environment ]; then
|
||||||
|
source ~/.bash/environment
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash/colors ]; then
|
||||||
|
source ~/.bash/colors
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash/functions ]; then
|
||||||
|
source ~/.bash/functions
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash/aliases ]; then
|
||||||
|
source ~/.bash/aliases
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash/git-flow-completion ]; then
|
||||||
|
source ~/.bash/git-flow-completion
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f ~/.bash/prompt ]; then
|
||||||
|
source ~/.bash/prompt
|
||||||
|
fi
|
||||||
|
|
||||||
|
# enable programmable completion features (you don't need to enable
|
||||||
|
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||||
|
# sources /etc/bash.bashrc).
|
||||||
|
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
|
||||||
|
source /etc/bash_completion
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /opt/local/etc/profile.d/bash_completion.sh ]; then
|
||||||
|
source /opt/local/etc/profile.d/bash_completion.sh
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in New Issue