117 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # .rc
 | |
| # vim: ft=zsh
 | |
| # Generic interactive shell setup
 | |
| # Eryn Wells <eryn@erynwells.me>
 | |
| 
 | |
| print_heading -l 1 'Initializing interactive shell'
 | |
| 
 | |
| print_info -l 2 'Creating aliases'
 | |
| alias j='jobs'
 | |
| alias h='history'
 | |
| alias df='df -h'
 | |
| alias du='du -h'
 | |
| alias e='emacs'
 | |
| 
 | |
| binary_exists ledger && alias l='ledger'
 | |
| binary_exists gpg2 && alias gpg='gpg2'
 | |
| binary_exists keybase && alias keybase="keybase --gpg \"`which gpg2`\""
 | |
| 
 | |
| alias chux='chmod u+x'
 | |
| alias chuw='chmod u+w'
 | |
| alias chur='chmod u+r'
 | |
| alias cho="chown $USER"
 | |
| 
 | |
| alias today='date +%Y-%m-%d'
 | |
| 
 | |
| alias addkey="ssh-agent ~/.ssh/id_rsa"
 | |
| 
 | |
| #
 | |
| # Git
 | |
| #
 | |
| 
 | |
| function g
 | |
| {
 | |
|     if [[ $# -gt 0 ]]; then
 | |
|         git $@
 | |
|     else
 | |
|         git status --short --branch
 | |
|     fi
 | |
|     return $?
 | |
| }
 | |
| 
 | |
| function vi
 | |
| {
 | |
|     if whence -cp nvim 1>/dev/null 2>&1; then
 | |
|         command nvim $@
 | |
|     elif whence -cp vim 1>/dev/null 2>&1; then
 | |
|         command vim $@
 | |
|     elif whence -cp vi 1>/dev/null 2>&1; then
 | |
|         command vi $@
 | |
|     fi
 | |
| }
 | |
| 
 | |
| alias gp='g p origin $gitbranch'
 | |
| alias gpf='g p -f origin $gitbranch'
 | |
| 
 | |
| #
 | |
| # Setup
 | |
| #
 | |
| 
 | |
| function configure_ls
 | |
| {
 | |
|     local has_gnu_ls
 | |
|     local ls_options
 | |
| 
 | |
|     if [[ ! -e "$1" ]]; then
 | |
|         return
 | |
|     fi
 | |
| 
 | |
|     if $1 --version 2>&1 | grep GNU 1>/dev/null; then
 | |
|         has_gnu_ls=1
 | |
|         ls_options='--color=auto'
 | |
|     else
 | |
|         has_gnu_ls=0
 | |
|         ls_options='-G'
 | |
|     fi
 | |
| 
 | |
|     print_info_sub -l 3 "Setting up ls: $1"
 | |
|     alias ls="$1 $ls_options"
 | |
|     alias la="$1 -A $ls_options"
 | |
|     alias ll="$1 -l $ls_options"
 | |
|     alias l.="$1 -d $ls_options .*"
 | |
| 
 | |
|     local dircolors_bin=`whence -p dircolors || whence -p gdircolors`
 | |
|     if [[ $has_gnu_ls -eq 1 && -n "$dircolors_bin" ]]; then
 | |
|         if [[ -e "$HOME/.dircolors/$SYS.cfg" ]]; then
 | |
|             dircolors="$HOME/.dircolors/$SYS.cfg"
 | |
|         else
 | |
|             dircolors="$HOME/.dircolors/default.cfg"
 | |
|         fi
 | |
|         print_info_sub -l 3 "Setting up dircolors: `basename $dircolors`"
 | |
|         eval `$dircolors_bin $dircolors`
 | |
|     fi
 | |
| }
 | |
| 
 | |
| 
 | |
| # NetHack options
 | |
| # use color in the terminal
 | |
| binary_exists nethack && export NETHACKOPTIONS="color"
 | |
| 
 | |
| # Default ledger file
 | |
| [[ -e "$HOME/Documents/Ledger/personal.ledger" ]] && \
 | |
|     LEDGER_FILE=$HOME/Documents/Ledger/personal.ledger
 | |
| 
 | |
| if [[ -e "$HOME/.rc.$SYS" ]]; then
 | |
|     print_info -l 2 "Sourcing $SYS interactive shell setup"
 | |
|     source "$HOME/.rc.$SYS"
 | |
| fi
 | |
| 
 | |
| # Set up ls if it wasn't already done.
 | |
| if ! alias ls 2>&1 1>/dev/null; then
 | |
|     configure_ls `which ls`
 | |
| fi
 | |
| 
 | |
| if [[ -e "$HOME/.rc.local" ]]; then
 | |
|     print_info -l 2 'Sourcing local interactive shell setup'
 | |
|     source "$HOME/.rc.local"
 | |
| fi
 |