" 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