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
128
129
130
131
132
133
134
135
136
|
" Compatibility
set nocompatible
" Filetypes
if has("autocmd")
filetype on
filetype indent on
filetype plugin on
endif
" Backups
set nobackup
if has("writebackup")
set nowritebackup
endif
" Colors
if has("syntax")
syntax enable
silent! colorscheme sahara
endif
" Commands
if has("cmdline_info")
set ruler
set showcmd
set showmode
endif
" Encoding
set fileformats=unix,dos,mac
if has("multi_byte")
set encoding=utf-8
endif
" Formatting
set expandtab
set nojoinspaces
set shiftround
set shiftwidth=4
set softtabstop=4
set tabstop=4
set textwidth=80
" History
set history=1000
" Miscellaneous
set backspace=indent,eol,start
set modelines=0
set noesckeys
set nolist
set nopaste
set shortmess+=I
set ttyfast
set visualbell t_vb=
nnoremap <leader>l :set list!<CR>
nnoremap <leader>p :set paste!<CR>
" Numbers
set nonumber
nnoremap <leader>n :set number!<CR>
" Scrolling
set sidescroll=1
" Search
if has("extra_search")
set hlsearch
set incsearch
nnoremap <leader>h :set hlsearch!<CR>
nnoremap <leader>i :set incsearch!<CR>
nnoremap <C-l> :nohlsearch<CR><C-l>
if has("autocmd")
augroup vimrc
autocmd!
silent! autocmd InsertEnter * :setlocal nohlsearch
silent! autocmd InsertLeave * :setlocal hlsearch
augroup END
endif
endif
" Spelling
if has("spell")
set spelllang=en_nz
nnoremap <leader>s :set spell!<CR>
endif
" Swaps
set noswapfile
" Typos
cnoreabbrev E e
cnoreabbrev W w
cnoreabbrev Wq wq
cnoreabbrev WQ wq
cnoreabbrev Q q
cnoreabbrev QA qa
cnoreabbrev Qa qa
" Wildmenu
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
" Windows
if has("windows")
set laststatus=1
set splitbelow
if has("vertsplit")
set fillchars=""
set splitright
endif
silent! set showtabline=1
endif
" Wrapping
set nowrap
nnoremap j gj
nnoremap k gk
nnoremap <leader>w :set wrap!<CR>
if has("linebreak")
set linebreak
set showbreak=...
endif
" Visual
if has("virtualedit")
set virtualedit+=block
endif
|