summary refs log tree commit diff
path: root/vimrc
blob: a79ea567e5b5a4504f81229c60c6009c0c2469f0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
syn off
set nocompatible
let mapleader=","
filetype indent plugin on
set autoread
set nojoinspaces
set list lcs=trail:·,tab:»·
set hlsearch
set incsearch
set ignorecase
set showmatch
set matchtime=1
set encoding=utf-8
set winminheight=0
set hidden " allows files to be open in invisible buffers
set wildmenu
set wildmode=list:longest,full
set smartcase

" seriously, no backup
set nobackup
set nowritebackup
set noswapfile

" Toggle paste mode on and off with comma p.
map ,p :se invpaste paste?<return>

set expandtab
set tabstop=2
set shiftwidth=2
set softtabstop=2
set textwidth=80
set smarttab
set autoindent
set nocindent

set fillchars+=vert:\ " yes, it's a trailing white space

highlight ExtraWhitespace ctermbg=red guibg=red
match ExtraWhitespace /\s\+$/

autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/
autocmd InsertLeave * match ExtraWhitespace /\s\+$/
autocmd BufWinLeave * call clearmatches()

au BufRead,BufNewFile *.json   setlocal filetype=javascript
au BufRead,BufNewFile *.md     setlocal filetype=markdown
au BufRead,BufNewFile *.mesos  setlocal filetype=python
au BufRead,BufNewFile *.aurora setlocal filetype=python
au BufRead,BufNewFile BUILD    setlocal filetype=python
au BufRead,BufNewFile *.pp     setlocal filetype=ruby
au BufRead,BufNewFile *.alert  setlocal filetype=yaml
au BufRead,BufNewFile *.go     setlocal filetype=go

au FileType python   setlocal keywordprg=pydoc shiftwidth=2 softtabstop=2 tabstop=2 tw=100
au FileType make     setlocal shiftwidth=8 tabstop=8 noexpandtab
au FileType markdown setlocal tw=100
au FileType sh       setlocal shiftwidth=2 softtabstop=2 tabstop=2 tw=80
au FileType go       setlocal tw=100 noexpandtab tabstop=2 shiftwidth=2 nolist
au FileType go       autocmd  BufWritePre <buffer> Fmt