├── README.md └── dotfiles ├── .gitconfig ├── .gitignore_global ├── .vimrc ├── .zpreztorc └── .zshrc /README.md: -------------------------------------------------------------------------------- 1 | ## Applications 2 | 3 | * 1Password 4 | * Discord 5 | * Docker 6 | * Dropbox 7 | * Firefox 8 | * Google Chrome 9 | * Google Chrome Canary 10 | * Google Earth Pro 11 | * HandBrake 12 | * ImageOptim 13 | * iTerm2 14 | * krisp 15 | * Pixelmator 16 | * ScreenFlow 17 | * Sequel Pro 18 | * Sketch 19 | * Slack 20 | * Spotify 21 | * The Unarchiver 22 | * Toggl 23 | * Transmission 24 | * Vagrant 25 | * VirtualBox 26 | * VS Code 27 | * VLC 28 | * Xcode 29 | 30 | ## Terminal 31 | 32 | * Prezto 33 | * [Sensible macOS defaults](https://github.com/mathiasbynens/dotfiles/blob/master/.macos) 34 | * Homebrew 35 | * ack 36 | * awscli 37 | * composer 38 | * gettext 39 | * pyenv 40 | * wget 41 | * youtube-dl 42 | * Node.js via [nvm](https://github.com/creationix/nvm) 43 | 44 | ## Settings 45 | 46 | ### General 47 | 48 | * Enable "Ask to keep changes when closing documents" 49 | * iTerm: Preferences > Profiles > Session > "Always prompt before closing" 50 | 51 | ### Keyboard 52 | 53 | * Shortcuts > App Shortcuts > Add "Paste and Match Style" with ⌘V 54 | * Modifier keys for MS Ergo: 55 | * Option Key: Command 56 | * Command Key: Option 57 | * Function Key: N/A 58 | -------------------------------------------------------------------------------- /dotfiles/.gitconfig: -------------------------------------------------------------------------------- 1 | [user] 2 | name = Ben Word 3 | email = ben@benword.com 4 | 5 | [alias] 6 | l = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit 7 | s = status -s 8 | st = status 9 | 10 | [push] 11 | default = current 12 | 13 | [color] 14 | ui = auto 15 | 16 | [color "diff"] 17 | meta = blue bold 18 | frag = magenta bold 19 | old = red bold 20 | new = green bold 21 | 22 | [color "branch"] 23 | current = yellow reverse 24 | local = yellow bold 25 | remote = green bold 26 | plain = red bold 27 | 28 | [color "status"] 29 | added = yellow 30 | changed = green bold 31 | untracked = blue bold 32 | 33 | [core] 34 | excludesfile = /Users/ben/.gitignore_global 35 | editor = code --wait 36 | -------------------------------------------------------------------------------- /dotfiles/.gitignore_global: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /dotfiles/.vimrc: -------------------------------------------------------------------------------- 1 | " File-type 2 | filetype on 3 | filetype off 4 | 5 | " Tabs and Spaces 6 | set tabstop=2 7 | set shiftwidth=2 8 | set softtabstop=2 9 | set backspace=indent,eol,start 10 | set expandtab 11 | set autoindent 12 | set smartindent 13 | set smarttab 14 | 15 | " Misc 16 | set number 17 | set ruler 18 | set showcmd 19 | set showmatch 20 | set nowrap 21 | set hidden 22 | set modeline 23 | set autoread " auto-reload modified files (with no local changes) 24 | set nocompatible " don't try to be compatible with vi 25 | set ignorecase " ignore case in search 26 | set smartcase " override ignorecase if uppercase is used in search string 27 | set report=0 " report all changes 28 | set laststatus=2 " always show status-line 29 | set cursorline " highlight current line 30 | set scrolloff=4 31 | set nofoldenable 32 | set shell=/bin/zsh 33 | 34 | " Swaps and backups 35 | set nobackup " do not keep backups after close 36 | set nowritebackup " do not keep a backup while working 37 | set noswapfile " don't keep swp files either 38 | set backupdir=$HOME/.vim/backup " store backups under ~/.vim/backup 39 | set backupcopy=yes " keep attributes of original file 40 | set backupskip=/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/* 41 | set directory=~/.vim/swap,~/tmp,. " keep swp files under ~/.vim/swap 42 | set undofile 43 | set undodir=~/.vim/undo 44 | set undoreload=10000 45 | 46 | " Show trailing whitespace 47 | set list listchars=tab:→\ ,trail:· 48 | 49 | set autowrite 50 | 51 | syntax enable 52 | 53 | colorscheme monokai 54 | 55 | " automatically reload vimrc when it's saved 56 | au BufWritePost .vimrc so ~/.vimrc 57 | -------------------------------------------------------------------------------- /dotfiles/.zpreztorc: -------------------------------------------------------------------------------- 1 | # 2 | # Sets Prezto options. 3 | # 4 | # Authors: 5 | # Sorin Ionescu 6 | # 7 | 8 | # 9 | # General 10 | # 11 | 12 | # Set case-sensitivity for completion, history lookup, etc. 13 | # zstyle ':prezto:*:*' case-sensitive 'yes' 14 | 15 | # Color output (auto set to 'no' on dumb terminals). 16 | zstyle ':prezto:*:*' color 'yes' 17 | 18 | # Add additional directories to load prezto modules from 19 | # zstyle ':prezto:load' pmodule-dirs $HOME/.zprezto-contrib 20 | 21 | # Set the Zsh modules to load (man zshmodules). 22 | # zstyle ':prezto:load' zmodule 'attr' 'stat' 23 | 24 | # Set the Zsh functions to load (man zshcontrib). 25 | # zstyle ':prezto:load' zfunction 'zargs' 'zmv' 26 | 27 | # Set the Prezto modules to load (browse modules). 28 | # The order matters. 29 | zstyle ':prezto:load' pmodule \ 30 | 'environment' \ 31 | 'terminal' \ 32 | 'editor' \ 33 | 'history' \ 34 | 'directory' \ 35 | 'spectrum' \ 36 | 'utility' \ 37 | 'completion' \ 38 | 'git' \ 39 | 'homebrew' \ 40 | 'ruby' \ 41 | 'osx' \ 42 | 'history' \ 43 | 'syntax-highlighting' \ 44 | 'history-substring-search' \ 45 | 'prompt' 46 | 47 | # 48 | # Autosuggestions 49 | # 50 | 51 | # Set the query found color. 52 | # zstyle ':prezto:module:autosuggestions:color' found '' 53 | 54 | # 55 | # Completions 56 | # 57 | 58 | # Set the entries to ignore in static */etc/hosts* for host completion. 59 | # zstyle ':prezto:module:completion:*:hosts' etc-host-ignores \ 60 | # '0.0.0.0' '127.0.0.1' 61 | 62 | # 63 | # Editor 64 | # 65 | 66 | # Set the key mapping style to 'emacs' or 'vi'. 67 | zstyle ':prezto:module:editor' key-bindings 'emacs' 68 | 69 | # Auto convert .... to ../.. 70 | # zstyle ':prezto:module:editor' dot-expansion 'yes' 71 | 72 | # 73 | # Git 74 | # 75 | 76 | # Ignore submodules when they are 'dirty', 'untracked', 'all', or 'none'. 77 | # zstyle ':prezto:module:git:status:ignore' submodules 'all' 78 | 79 | # 80 | # GNU Utility 81 | # 82 | 83 | # Set the command prefix on non-GNU systems. 84 | # zstyle ':prezto:module:gnu-utility' prefix 'g' 85 | 86 | # 87 | # History Substring Search 88 | # 89 | 90 | # Set the query found color. 91 | # zstyle ':prezto:module:history-substring-search:color' found '' 92 | 93 | # Set the query not found color. 94 | # zstyle ':prezto:module:history-substring-search:color' not-found '' 95 | 96 | # Set the search globbing flags. 97 | # zstyle ':prezto:module:history-substring-search' globbing-flags '' 98 | 99 | # 100 | # OS X 101 | # 102 | 103 | # Set the keyword used by `mand` to open man pages in Dash.app 104 | # zstyle ':prezto:module:osx:man' dash-keyword 'manpages' 105 | 106 | # 107 | # Pacman 108 | # 109 | 110 | # Set the Pacman frontend. 111 | # zstyle ':prezto:module:pacman' frontend 'yaourt' 112 | 113 | # 114 | # Prompt 115 | # 116 | 117 | # Set the prompt theme to load. 118 | # Setting it to 'random' loads a random theme. 119 | # Auto set to 'off' on dumb terminals. 120 | zstyle ':prezto:module:prompt' theme 'sorin' 121 | 122 | # Set the working directory prompt display length. 123 | # By default, it is set to 'short'. Set it to 'long' (without '~' expansion) 124 | # for longer or 'full' (with '~' expansion) for even longer prompt display. 125 | # zstyle ':prezto:module:prompt' pwd-length 'short' 126 | 127 | # Set the prompt to display the return code along with an indicator for non-zero 128 | # return codes. This is not supported by all prompts. 129 | # zstyle ':prezto:module:prompt' show-return-val 'yes' 130 | 131 | # 132 | # Ruby 133 | # 134 | 135 | # Auto switch the Ruby version on directory change. 136 | # zstyle ':prezto:module:ruby:chruby' auto-switch 'yes' 137 | 138 | # 139 | # Python 140 | # 141 | 142 | # Auto switch the Python virtualenv on directory change. 143 | # zstyle ':prezto:module:python:virtualenv' auto-switch 'yes' 144 | 145 | # Automatically initialize virtualenvwrapper if pre-requisites are met. 146 | # zstyle ':prezto:module:python:virtualenv' initialize 'yes' 147 | 148 | # 149 | # Screen 150 | # 151 | 152 | # Auto start a session when Zsh is launched in a local terminal. 153 | # zstyle ':prezto:module:screen:auto-start' local 'yes' 154 | 155 | # Auto start a session when Zsh is launched in a SSH connection. 156 | # zstyle ':prezto:module:screen:auto-start' remote 'yes' 157 | 158 | # 159 | # SSH 160 | # 161 | 162 | # Set the SSH identities to load into the agent. 163 | # zstyle ':prezto:module:ssh:load' identities 'id_rsa' 'id_rsa2' 'id_github' 164 | 165 | # 166 | # Syntax Highlighting 167 | # 168 | 169 | # Set syntax highlighters. 170 | # By default, only the main highlighter is enabled. 171 | # zstyle ':prezto:module:syntax-highlighting' highlighters \ 172 | # 'main' \ 173 | # 'brackets' \ 174 | # 'pattern' \ 175 | # 'line' \ 176 | # 'cursor' \ 177 | # 'root' 178 | # 179 | # Set syntax highlighting styles. 180 | # zstyle ':prezto:module:syntax-highlighting' styles \ 181 | # 'builtin' 'bg=blue' \ 182 | # 'command' 'bg=blue' \ 183 | # 'function' 'bg=blue' 184 | # 185 | # Set syntax pattern styles. 186 | # zstyle ':prezto:module:syntax-highlighting' pattern \ 187 | # 'rm*-rf*' 'fg=white,bold,bg=red' 188 | 189 | # 190 | # Terminal 191 | # 192 | 193 | # Auto set the tab and window titles. 194 | # zstyle ':prezto:module:terminal' auto-title 'yes' 195 | 196 | # Set the window title format. 197 | # zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s' 198 | 199 | # Set the tab title format. 200 | # zstyle ':prezto:module:terminal:tab-title' format '%m: %s' 201 | 202 | # Set the terminal multiplexer title format. 203 | # zstyle ':prezto:module:terminal:multiplexer-title' format '%s' 204 | 205 | # 206 | # Tmux 207 | # 208 | 209 | # Auto start a session when Zsh is launched in a local terminal. 210 | # zstyle ':prezto:module:tmux:auto-start' local 'yes' 211 | 212 | # Auto start a session when Zsh is launched in a SSH connection. 213 | # zstyle ':prezto:module:tmux:auto-start' remote 'yes' 214 | 215 | # Integrate with iTerm2. 216 | # zstyle ':prezto:module:tmux:iterm' integrate 'yes' 217 | 218 | # Set the default session name: 219 | # zstyle ':prezto:module:tmux:session' name 'YOUR DEFAULT SESSION NAME' 220 | 221 | # 222 | # Utility 223 | # 224 | 225 | # Enabled safe options. This aliases cp, ln, mv and rm so that they prompt 226 | # before deleting or overwriting files. Set to 'no' to disable this safer 227 | # behavior. 228 | # zstyle ':prezto:module:utility' safe-ops 'yes' 229 | -------------------------------------------------------------------------------- /dotfiles/.zshrc: -------------------------------------------------------------------------------- 1 | if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then 2 | source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" 3 | fi 4 | 5 | export PATH="$HOME/.rbenv/bin:$PATH" 6 | export PATH="$PATH:/usr/local/share/npm/bin/" 7 | export PATH="$PATH:$HOME/.composer/vendor/bin" 8 | export PATH="$PATH:$HOME/.yarn/bin" 9 | export PATH="/usr/local/bin:${PATH}" 10 | export PATH="/usr/local/opt/gettext/bin:$PATH" 11 | 12 | export EDITOR="code -w -n" 13 | export HISTSIZE=4096 14 | 15 | alias flush="dscacheutil -flushcache" 16 | alias ip="dig +short myip.opendns.com @resolver1.opendns.com" 17 | alias ips="ifconfig -a | grep -o 'inet6\? \(\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\)\|[a-fA-F0-9:]\+\)' | sed -e 's/inet6* //'" 18 | alias dcr="docker-compose run --rm" 19 | 20 | export NVM_DIR="$HOME/.nvm" 21 | [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm 22 | [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion 23 | 24 | eval "$(rbenv init -)" 25 | --------------------------------------------------------------------------------