Dotfiles, by @jm3
Dotfiles should be able to be installed on a new mac or ubuntu server install; NO additional dependencies should be required.
Paste this one liner into your terminal to install. Your existing dotfiles will be backed up safely and your new life of unix luxury will commence. Enjoy the jealous looks of your friends!
- Modular design; add/remove features at will. Down with 500-line config files!
- Zero gems required for operation (no rake, no thor, etc)
- Install with one line of code and you're off to the races
- Re-run
dots
at any time to retrieve recent changes + plugin updates
- A preference for rebase (
autosetuprebase = always
is your friend) - Concise log format (
git
) fits more info on screen in a legible fashion - Git mergetool pre-configured for emacs ediff, vimdiff, and Changes.app
- Rapid-fire aliases for convenience + speed:
ci
(check-in),co
(check-out),st
(status),di
(diff),dic
(diff "cached", aka diff the staging area),l
(log) - Visually pleasing color scheme; eliminate "angry fruit salad"
- vimscript accrued + polished over years of working alongside vim geniuses in web dev + systems / dev.ops
- all configs rewritten in 2025 in idiomatic neovim lua
- Search speedily with Jungunn's excellent fzf.vim
- Align any code structure with easy-align
- Automatically lint (asynchronously) with ALE, using the latest fork
- Highlight syntax for css, docker, javascript, json, haml, lua, markdown, pug, python, ruby, slim
- To load/unload any plugin just add the plugin's url to plugins.vim and re-run
dots
. - Manage vim plugins with ease + grace; plugins refreshed from git no more than once weekly
- Navigate most recently used files with MRU (
,m
) - Pretty-print minified (or otherwise ugly) HTML + JSON with
,h
or,j
- Small spell-check dictionary of some common developer terms
- Save useful code snippets directly to Github Gists from Vim
- Accidentally edit a file that needs to be edited with sudo? just hit
\s
! - Tab-complete anything you've typed once with Supertab
- Several tasteful color schemes that are easy on the eyes: Dracula, Solarized, Gummybears, Wild Cherry
- Options: hidden, hlsearch, ignorecase, incsearch, nocompatible, smartcase, wildmenu
- A really great prompt: concise to save real estate, with git-awareness (branch/rebase) and git "dirty" status; no more typing git status
- Tab-complete bundler commands, screen session names, git branches, git tags, and hostnames
- Git aliases defined to shorten every common git command
- Aliases for navigation acceleration written to be back-compatible with bash
- Custom profiles loaded for each OS you use + host-name you want custom settings for. Override anything OS-level here.
- Options: auto_cd, auto_param_keys, auto_pushd, append_history, hist_ignore_dups, auto_list, list_ambiguous, auto_param_keys, correct, glob, glob_dots, menu_complete, interactive_comments, prompt_subst
- extended_glob is disabled; it confounds commands like
git reset HEAD^3
- Improved keybindings for navigation and buffer compilation
- If I have text selected and I start typing, replace the selection -
pending-delete-mode
- When Emacs says "type yes", and i type "y", do what I mean -
(fset 'yes-or-no-p 'y-or-n-p)
- Pleasing default colors + fonts
- Bonus configs + solarized color theme included for Sublime Text 2 + iTerm 2
No warranty given, express or implied. Have fun and stay safe. Copycenter license: think xerox machine; give it to everyone. All rights reserved, all wrongs reversed, no punches pulled.