Created
September 15, 2020 01:29
-
-
Save josephsindel/2c4d5dd9647246112b601680c12994b9 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#env variables | |
export COMMAND_MODE=unix2003 | |
export HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S - ' | |
export HISTSIZE=10000000 | |
export HISTFILESIZE=20000000 | |
export HISTCONTROL=ignoredups:ignorespace | |
export EDITOR='subl -w' | |
STARTCOLOR='\e[0;32m'; | |
ENDCOLOR='\e[0m' | |
export PS1="$STARTCOLOR\u@\h \w> $ENDCOLOR" | |
shopt -s checkwinsize | |
shopt -s cdspell | |
shopt -s histappend | |
shopt -s cmdhist | |
#aliases | |
alias repos='cd ~/Documents/repos' | |
alias xx='exit' | |
alias bash=/usr/local/bin/bash | |
alias ll='ls -alF' | |
alias pg='ps aux | grep' | |
alias rooter='sudo su -' | |
alias weather='curl wttr.in' | |
if [ -f $(brew --prefix)/etc/bash_completion ]; then | |
. $(brew --prefix)/etc/bash_completion | |
fi | |
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function* | |
# Load the shell dotfiles, and then some: | |
# * ~/.path can be used to extend `$PATH`. | |
# * ~/.extra can be used for other settings you don’t want to commit. | |
for file in ~/.{path,bash_prompt,exports,aliases,functions,extra}; do | |
[ -r "$file" ] && [ -f "$file" ] && source "$file"; | |
done; | |
unset file; | |
# Case-insensitive globbing (used in pathname expansion) | |
shopt -s nocaseglob; | |
# Append to the Bash history file, rather than overwriting it | |
shopt -s histappend; | |
# Autocorrect typos in path names when using `cd` | |
shopt -s cdspell; | |
# Enable some Bash 4 features when possible: | |
# * `autocd`, e.g. `**/qux` will enter `./foo/bar/baz/qux` | |
# * Recursive globbing, e.g. `echo **/*.txt` | |
for option in autocd globstar; do | |
shopt -s "$option" 2> /dev/null; | |
done; | |
# Add tab completion for many Bash commands | |
if which brew > /dev/null && [ -f "$(brew --prefix)/share/bash-completion/bash_completion" ]; then | |
source "$(brew --prefix)/share/bash-completion/bash_completion"; | |
elif [ -f /etc/bash_completion ]; then | |
source /etc/bash_completion; | |
fi; | |
# Enable tab completion for `g` by marking it as an alias for `git` | |
if type _git &> /dev/null && [ -f /usr/local/etc/bash_completion.d/git-completion.bash ]; then | |
complete -o default -o nospace -F _git g; | |
fi; | |
# Add tab completion for SSH hostnames based on ~/.ssh/config, ignoring wildcards | |
[ -e "$HOME/.ssh/config" ] && complete -o "default" -o "nospace" -W "$(grep "^Host" ~/.ssh/config | grep -v "[?*]" | cut -d " " -f2- | tr ' ' '\n')" scp sftp ssh; | |
# Add tab completion for `defaults read|write NSGlobalDomain` | |
# You could just use `-g` instead, but I like being explicit | |
complete -W "NSGlobalDomain" defaults; | |
#!/bin/bash | |
# | |
# Open new Terminal tabs from the command line | |
# | |
# Author: Justin Hileman (http://justinhileman.com) | |
# | |
# Installation: | |
# Add the following function to your `.bashrc` or `.bash_profile`, | |
# or save it somewhere (e.g. `~/.tab.bash`) and source it in `.bashrc` | |
# | |
# Usage: | |
# tab Opens the current directory in a new tab | |
# tab [PATH] Open PATH in a new tab | |
# tab [CMD] Open a new tab and execute CMD | |
# tab [PATH] [CMD] ... You can prob'ly guess | |
# Only for teh Mac users | |
[ `uname -s` != "Darwin" ] && return | |
function tab () { | |
local cmd="" | |
local cdto="$PWD" | |
local args="$@" | |
if [ -d "$1" ]; then | |
cdto=`cd "$1"; pwd` | |
args="${@:2}" | |
fi | |
if [ -n "$args" ]; then | |
cmd="; $args" | |
fi | |
osascript &>/dev/null <<EOF | |
tell application "iTerm" | |
tell current terminal | |
launch session "Default Session" | |
tell the last session | |
write text "cd \"$cdto\"$cmd" | |
end tell | |
end tell | |
end tell | |
EOF | |
} | |
export PATH=$PATH:~/.local/bin | |
# pyenv | |
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi | |
export PYENV_ROOT=/usr/local/var/pyenv | |
export PATH="/usr/local/opt/mysql-client/bin:$PATH" | |
export PATH="/usr/local/opt/mysql-client/bin:$PATH" | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion | |
[ -f ~/.bashrc ] && . ~/.bashrc | |
if command -v pyenv 1>/dev/null 2>&1; then | |
eval "$(pyenv init -)" | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment