aboutsummaryrefslogtreecommitdiff
path: root/vim/vimrc
blob: 989a732306f08821ba62f5378fb00bcb0e75965e (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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
" Compatibility
set nocompatible

" Filetypes
if has("autocmd")
    filetype on
    filetype indent on
    filetype plugin on
endif

" Backups
set nobackup
set nowritebackup

" Buffers
set hidden

" Colors
if has("syntax")
    syntax enable
    silent! colorscheme sahara
endif

" Commands
if has("cmdline_info")
    set ruler
    set showcmd
    set showmode
endif

" Completion
if has("wildmenu")
    set wildignore+=*.a,*.o
    set wildignore+=*.bmp,*.gif,*.ico,*.jpg,*.png
    set wildignore+=.DS_Store,.git,.hg,.svn
    set wildignore+=*~,*.swp,*.tmp
    set wildmenu
    set wildmode=longest,list
endif

" Encoding
set fileformats=unix,dos,mac
if has("multi_byte")
    set encoding=utf-8
endif

" Formatting
set expandtab
set formatoptions+=coqnr1
set nojoinspaces
set shiftround
set shiftwidth=4
set softtabstop=4
set tabstop=4
set textwidth=80

" History
set history=1000

" Leaders
nnoremap <leader>h :set hlsearch!<CR>
nnoremap <leader>i :set incsearch!<CR>
nnoremap <leader>l :set list!<CR>
nnoremap <leader>n :set number!<CR>
nnoremap <leader>p :set paste!<CR>
nnoremap <leader>r :set relativenumber!<CR>
nnoremap <leader>s :set spell!<CR>
nnoremap <leader>w :set wrap!<CR>

" Macros
set lazyredraw

" Miscellaneous
set backspace=indent,eol,start
set modelines=0
set shortmess+=I
set ttyfast
set visualbell t_vb=

" Scrolling
set sidescroll=1

" Search
set hlsearch
set incsearch
nnoremap <C-l> :nohlsearch<CR><C-l>

" Spelling
if has("spell")
    set spelllang=en_nz
endif

" Swaps
set noswapfile

" Typos
cnoreabbrev E w
cnoreabbrev W w
cnoreabbrev Wq wq
cnoreabbrev WQ wq
cnoreabbrev Q q
cnoreabbrev QA qa
cnoreabbrev Qa qa

" Windows
if has("windows")
    set laststatus=1
    set showtabline=1
    set splitbelow
    if has("vertsplit")
        set fillchars=""
        set splitright
    endif
endif

" Wrapping
set nowrap
if has("linebreak")
    set linebreak
    set showbreak=...
endif

" Visual
if has("virtualedit")
    set virtualedit+=block
endif