set nocompatible " Enable syntax highlighting syntax on filetype plugin indent on " Colorscheme see https://github.com/hukl/Smyck-Color-Scheme color smyck " Add line numbers set number set ruler " Set encoding set encoding=utf-8 " Whitespace stuff set nowrap set tabstop=2 set shiftwidth=2 set softtabstop=2 set expandtab " Show trailing spaces and highlight hard tabs set list listchars=tab:»·,trail:· " allow backspacing over everything in insert mode set backspace=indent,eol,start " Strip trailing whitespaces on each save fun! StripTrailingWhitespaces() let l = line(".") let c = col(".") %s/\s\+$//e call cursor(l, c) endfun autocmd BufWritePre * :call StripTrailingWhitespaces() " Search related settings set incsearch set hlsearch " Map Ctrl+l to clear highlighted searches nnoremap :nohlsearch " Highlight characters behind the 80 chars margin :au BufWinEnter * let w:m2=matchadd('ColumnMargin', '\%>80v.\+', -1) " Disable code folding set nofoldenable " Directories for swp files set backupdir=~/.vim/backups set directory=~/.vim/backups " make uses real tabs au FileType make set noexpandtab " add json syntax highlighting au BufNewFile,BufRead *.json set ft=javascript " make Python follow PEP8 ( http://www.python.org/dev/peps/pep-0008/ ) au FileType python set softtabstop=4 tabstop=4 shiftwidth=4 textwidth=79 " allow backspacing over everything in insert mode set backspace=indent,eol,start