set encoding=utf-8 " The encoding displayed. set fileencoding=utf-8 " The encoding written to file. set colorcolumn=80 " Apparently there are security issues with this? set nomodeline execute pathogen#infect('bundle/{}', 'themes/{}') " Allow me to hide buffers w/o saving set hidden " Persistent undo set undofile set undodir=~/.vimundo set undolevels=1000 set undoreload=10000 " lots of history, it's always nice to find old nasty command that happen " to be really useful set history=10000 " " Keep the newbs from using arrow keys inoremap inoremap inoremap inoremap " Always show status line set laststatus=2 " Case insensitive searching by default set ic " Highlight my searches by default set hls " No more swap files set updatecount=0 " Vi in-compatibility set nocompatible " Bring down the tab spacing set tabstop=4 set shiftwidth=4 set noexpandtab " Maily for the ability to match HTML tags with '%' runtime macros/matchit.vim " Love hate relationship with this thing. I guess it's back map :NERDTreeToggle " To enable/disable the autocomplete dropdown nmap [ :AcpDisable nmap ] :AcpEnable " Gundo nnoremap :GundoToggle " " Enable the list of buffers let g:airline#extensions#tabline#enabled = 1 " Show just the filename let g:airline#extensions#tabline#fnamemod = ':t' " if !exists('g:airline_symbols') " let g:airline_symbols = {} " endif " let g:airline_symbols.space = "\ua0" let g:airline_section_z = airline#section#create(['windowswap', '%3p%% ', 'linenr', ':%3v']) " This lets you just hit enter instead " of pressing control-n Some people like it " personally I'm not that much of a fan " set completeopt=longest,menuone " Omni completion filetype plugin on set omnifunc=syntaxcomplete#Complete nmap :TagbarToggle let g:ctrlp_follow_symlinks = 1 let g:ctrlp_working_path_mode = 0 autocmd Filetype python call SetPythonOptions() autocmd Filetype htmldjango call SethtmldjangoOptions() autocmd Filetype json call SetJsonOptions() autocmd Filetype javascript call SetjavascriptOptions() autocmd Filetype php call SetPHPOptions() autocmd Filetype html call SetHTMLOptions() autocmd Filetype sh call SetShellOptions() autocmd Filetype go call SetGoOptions() autocmd Filetype yaml call SetYamlOptions() autocmd Filetype markdown call SetMarkdownOptions() function SetMarkdownOptions() set spell set tabstop=4 set shiftwidth=4 set expandtab AcpDisable endfunction function SetPythonOptions() set tabstop=4 set shiftwidth=4 set expandtab filetype indent on set smartindent endfunction function SetjavascriptOptions() set tabstop=2 set shiftwidth=2 set expandtab filetype indent on set smartindent endfunction function SetJsonOptions() set tabstop=3 set shiftwidth=3 set expandtab filetype indent on set smartindent endfunction function SethtmldjangoOptions() set tabstop=2 set shiftwidth=2 set expandtab filetype indent on set smartindent endfunction function SetPHPOptions() set colorcolumn=120 set tabstop=4 set shiftwidth=4 set expandtab filetype indent on set smartindent endfunction function SetHTMLOptions() set colorcolumn=120 set tabstop=2 set shiftwidth=2 set expandtab filetype indent on set smartindent endfunction function SetShellOptions() set tabstop=4 set shiftwidth=4 set noexpandtab filetype indent on set smartindent endfunction function SetGoOptions() " colorscheme acme " syntax off " colorscheme 256_noir AcpDisable set nolist set noic set nolist endfunction function SetYamlOptions() " set listchars=tab:▸\ ,eol:¬,trail:•,space:· set listchars=tab:▸\ ,eol:¬,trail:• set expandtab set noic endfunction " This is specifically for Salt's state files 'sls' autocmd BufNewFile,BufRead *.sls set filetype=yaml function! PhpSyntaxOverride() hi! def link phpDocTags phpDefine hi! def link phpDocParam phpType endfunction augroup phpSyntaxOverride autocmd! autocmd FileType php call PhpSyntaxOverride() augroup END " Backslash l nmap l :set list! " If you want listchars set list " set listchars=tab:\|\ set listchars=tab:▸\ ,eol:¬,trail:• " set listchars=tab:▸\ ,eol:¬ " set listchars=tab:\|\ ,eol:↴ " set listchars=tab:\|\ ,eol:$ " set listchars=tab:\⇒\ ,eol:↴ " Tabs show up as MARCON, aka 0xC2 0xAF " Misc symbols for tabs: ¯ ⇒ ⇥ ⇨ ⇏ ⇸ → " Be smart about the mouse set mouse+=a if &term =~ '^screen' " tmux knows the extended mouse mode set ttymouse=xterm2 endif " Line numbers set nu " Derp syntax on " syntax off colorscheme distinguished