<commit_before># Sam's dotfiles
Configs for Bash, Vim, Tmux, and Git. Makes for a wonderful development environment.

![Screenshot of dev environment](https://samholman.com/files/tmux-vim.jpg)

## To set up:
```bash
git clone https://github.com/samholman/dotfiles.git
cd dotfiles
git submodule update --init --recursive
./setup.sh
```

Your Git user details can be added to `~/.gitconfig.extra`:
```
[user]
    name = <NAME>
    email = <EMAIL>
```

### Additional software
You will (fairly obviously) need to install at least some of the following:

* [Vim](http://www.vim.org)
* [Tmux](http://tmux.sourceforge.net)
* [Tmuxinator](https://github.com/tmuxinator/tmuxinator)
* [Git](http://git-scm.com)
* [Tig](https://github.com/jonas/tig)

## Basic usage
Create a tmux profile by copying and modifying one of the files in `.tmuxinator/`.
You can then start said profile by running `tmuxinator start <profile>`.

The *tmux* prefix key is set to `Ctrl+\`. After pressing this:

* % creates a new vertical split
* " creates a horizontal split
* z zooms into the current pane (making it full screen)
* c creates a new "tab"
* \<num\> jumps to the numbered tab
* Ctrl+\ twice jumps between splits

*Vim* is set up with a few sane defaults for development (see `.vimrc`), and a few plugins are included:

* Fugitive for Git integration
* Ctrl+N toggles NERDtree (file browser pane)
* Ctrl+P for fuzzy filename searching
* Syntastic for syntax checking (on save)
* Ultisnips for code auto-completion (tab to activate)
* Easy align to aid in aligning multi-line assignments, etc (highlight some lines in Visual mode, press Enter, then a character to align by - such as equals or colon)

## Feedback

Suggestions and improvements welcome via [Github issues](https://github.com/samholman/dotfiles/issues) or [Twitter](https://twitter.com/samh).
<commit_msg>Adding links in readme to Vim plugins.<commit_after># Sam's dotfiles
Configs for Bash, Vim, Tmux, and Git. Makes for an awesome, programmable development environment.

![Screenshot of dev environment](https://samholman.com/files/tmux-vim.jpg)

## To set up:
```bash
git clone https://github.com/samholman/dotfiles.git
cd dotfiles
git submodule update --init --recursive
./setup.sh
```

Your Git user details can be added to `~/.gitconfig.extra`:
```
[user]
    name = <NAME>
    email = <EMAIL>
```

### Additional software
You will (fairly obviously) need to install at least some of the following:

* [Vim](http://www.vim.org)
* [Tmux](http://tmux.sourceforge.net)
* [Tmuxinator](https://github.com/tmuxinator/tmuxinator)
* [Git](http://git-scm.com)
* [Tig](https://github.com/jonas/tig)

## Basic usage
Create a tmux profile by copying and modifying one of the files in `.tmuxinator/`.
You can then start said profile by running `tmuxinator start <profile>`.

The *tmux* prefix key is set to `Ctrl+\`. After pressing this:

* % creates a new vertical split
* " creates a horizontal split
* z zooms into the current pane (making it full screen)
* c creates a new "tab"
* \<num\> jumps to the numbered tab
* Ctrl+\ twice jumps between splits

*Vim* is set up with a few sane defaults for development (see `.vimrc`), and a few plugins are included:

* [Fugitive](https://github.com/tpope/vim-fugitive) for Git integration
* Ctrl+N toggles [NERDtree](https://github.com/scrooloose/nerdtree) (file browser pane)
* [Ctrl+P](https://github.com/kien/ctrlp.vim) for fuzzy filename searching
* [Syntastic](https://github.com/scrooloose/syntastic) for syntax checking (on save)
* [Ultisnips](https://github.com/SirVer/ultisnips) for code auto-completion (tab to activate)
* [Easy align](https://github.com/junegunn/vim-easy-align) to aid in aligning multi-line assignments, etc (highlight some lines in Visual mode, press Enter, then a character to align by - such as equals or colon)

## Feedback

Suggestions and improvements welcome via [Github issues](https://github.com/samholman/dotfiles/issues) or [Twitter](https://twitter.com/samh).

{'fraction_non_alphanumeric': 0.12556504269211452, 'fraction_numerical': 0.0, 'mean_word_length': 4.404341926729987, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 18, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '32375', 'n_tokens_mistral': 1316, 'n_tokens_neox': 1230, 'n_words': 461}