summaryrefslogtreecommitdiff
path: root/vim/.vimrc
blob: a56128dd74798d4b6c98c6780afe8d188f567742 (plain)
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
" load bundles under ~/.vim/bundle/*
execute pathogen#infect()

" utf8. always utf8.
set fileencoding=utf8
set fileencodings=utf8

" these seem reasonable
set tabstop=4
set softtabstop=4
set shiftwidth=4

" remove trailing whitespace when saving
function StripTrailingWhitespace()
	if !&binary && &filetype != 'diff'
		normal mz
		normal Hmy
		%s/\s\+$//e
		normal 'yz<CR>
		normal `z
	endif
endfunction

autocmd BufWritePre * :call StripTrailingWhitespace()

" display absolute line numbers in insert mode, relative otherwise
" allow ^N to toggle between them on demand
function! NumberToggle()
	if(&relativenumber == 1)
		set number
	else
		set relativenumber
	endif
endfunc

nnoremap <C-n> :call NumberToggle()<cr>

set relativenumber
autocmd InsertEnter * :set number
autocmd InsertLeave * :set relativenumber

" ===== BUNDLE CONFIGURATION =====

" ctrlp.vim:
let g:ctrlp_map='<c-p>'   "display fuzzy buffer search on ^P