# dotfiles Configuration files for: - Bash (3.2+) and Zsh (4.3.17+) - Vim (7+) and NeoVim - Vimperator (3.8+) and Tridactyl - Tmux (1.8+) - Other bits and pieces Heavy preference for Vim-like bindings. ![Screenshot](docs/screenshot.png) ## Installation Clone to a home folder and run `make install` or `./install`. Restart the terminal session. ## Usage Below is a non-exhaustive list of dotfiles features. ### Bash/Zsh - Case-insensitive completion. - The excellent [z][] and [v][] commands: - `z` for folder jumping: `z regex` = `cd /path/with/regex`. - `v` for file editing: `v regex` = `vim /path/with/regex`. - Multi-line shell prompt that displays Git repo info and job count. - Mostly-Mnemonic Git shortcuts: `gs` = `git status`, `gd` = `git diff`, etc. - Custom settings can be contained in `.local` files: - bash: `~/.bashrc.local` and `~/.bashenv.local` - zsh: `~/.zshrc.local` and `~/.zshenv.local` - SSH agent automation: - Set `AUTO_AGENT_SETUP=1` (in an env file) to auto-load keys into `ssh-agent`. [z]: https://github.com/rupa/z [v]: https://github.com/rupa/v ### Vim `Space` is the ``. - `w` saves. - `q` closes. - `l` lists loaded buffers and allows jumping to them by number. - `p` fuzzy-finds files. - `n` toggles line numbers. - `c` finds VCS conflict markers. - `-` opens a file browser. - Additional text objects exist (see `'Text Objects'` in [plugins.vim][]). - `:Goyo` for distraction-free writing. - `:Dark`, `:Light` colour schemes available. - Custom plugins can be listed in `~/.vim/plugins.vim.local`. - Custom settings can be put in `.vim.local` files in `~/.vim/settings/`, or in a `~/.vim/settings/local/` directory. [plugins.vim]: vim/plugins.vim ### Tmux `` = `Ctrl-a` = the tmux prefix. - ` + [vi motion]` moves around panes. - ` + ` moves around windows. - `Alt/Meta + number` moves to window number (1-10). - ` + -` cuts a pane horizontally, - ` + \` cuts a pane vertically (think `|`). - ` + s` starts synchronized panes. - `` swaps between sessions. - Mouse support works for selecting and resizing panes/windows. ### Vimperator and Tridactyl Apart from the default Vimperator goodness e.g. - `/` searches like `vim`. - `f` and `F` follow links on this tab/in a new tab. - et cetera... These dotfiles provide a dark theme and the following binding changes: - `h` and `l` - change between tabs (left and right). - `j` and `k` - scroll by a half-page (down and up). - `H`, `J`, `K`, `L` - scroll slowly (left, down, up, right). - `` and `` - relocate a tab left and right. ## Recommended - Font: [Meslo for Powerline][] (works well with [Rainbarf][]). - Vim with Ruby/Python support, or Neovim: for [Vim-Plug][] parallel downloads. - [Ripgrep][] - fast text search ([Ack][] included as fallback). - [Pandoc][] - Vim creates documents from `.pandoc` files ([Pandoc Markdown][]). - [pandoc-citeproc][] - bibliographical assistance when using Pandoc. [Meslo for Powerline]: https://github.com/powerline/fonts [Rainbarf]: https://github.com/creaktive/rainbarf [Vim-Plug]: https://github.com/junegunn/vim-plug [ripgrep]: https://github.com/BurntSushi/ripgrep [Ack]: http://beyondgrep.com/ [Pandoc]: http://pandoc.org/ [Pandoc Markdown]: http://pandoc.org/README.html#pandocs-markdown [pandoc-citeproc]: https://github.com/jgm/pandoc-citeproc