set encoding=utf-8 set fileencoding=utf-8 set nu set rnu set listchars=tab:▸\ ,eol:¬,trail:• " set listchars=tab:\|\ " Alternative listchars w/o special chars. set tw=80 set colorcolumn=80 set ic set hls set updatecount=0 set nocompatible set tabstop=4 set shiftwidth=4 set noexpandtab set mouse+=a syntax on "if &term =~ '^screen' " " tmux knows the extended mouse mode " set ttymouse=xterm2 "endif " I know how to setup my editor, I don't need your changes to my vim " configuration. set nomodeline " Use \-n in normal mode to toggle line numbers nmap n :set invnu nmap r :set invrnu " Use \-l in normal mode to toggle listchars nmap l :set list! " Use \-s to pop open a spelling menu. use ]s to search forwards and [s to go " backwards. " Apparently this also doesn't work if spell checking isn't enabled " at the time you enable it. set spell nnoremap \s ea set nospell " set hidden " This will allow you to change buffers w/o saving " Omni completion, c-x c-o in insert/append mode filetype plugin on set omnifunc=syntaxcomplete#Complete " Stolen from the help page: " " One typical way to use the netrw tree display is to: > " " vim . " (use i until a tree display shows) " navigate to a file " v (edit as desired in vertically split window) " ctrl-w h (to return to the netrw listing) " P (edit newly selected file in the previous window) " ctrl-w h (to return to the netrw listing) " P (edit newly selected file in the previous window) let g:netrw_liststyle=3 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " call plug#begin('~/.vim/plugged') call plug#begin(stdpath('data') . '/plugged') Plug 'scrooloose/nerdtree' Plug 'scrooloose/syntastic' Plug 'tpope/vim-fugitive' Plug 'preservim/tagbar' Plug 'rking/ag.vim' Plug 'sjl/gundo.vim' Plug 'ctrlpvim/ctrlp.vim' Plug 'godlygeek/tabular' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes/' Plug 'mattn/emmet-vim' Plug 'tpope/vim-commentary' Plug 'takac/vim-hardtime' " Misc Plug 'https://git.riedstra.dev/vim/vim-l9' Plug 'https://git.riedstra.dev/vim/mitch' " Neovim Plug 'neovim/nvim-lspconfig' " Languages Plug 'fatih/vim-go' Plug 'hashivim/vim-terraform' Plug 'MaxMEllon/vim-jsx-pretty' " Plug 'xavierd/clang_complete' " Neovim specific " Color schemes Plug 't184256/vim-boring' Plug 'plan9-for-vimspace/acme-colors' Plug 'huyvohcmc/atlas.vim' Plug 'w0ng/vim-hybrid' Plug 'altercation/vim-colors-solarized' Plug 'kristijanhusak/vim-hybrid-material' Plug 'Lokaltog/vim-monotone' Plug 'arcticicestudio/nord-vim' call plug#end() map :NERDTreeToggle let g:ctrlp_follow_symlinks = 1 let g:ctrlp_working_path_mode = 0 " Always show status line " set laststatus=2 " 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']) " Persistent undo set undofile set undodir=~/.nvimundo 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 " Useful on some terminals, not always supported in old tmux versions " set termguicolors " let g:airline_theme="monochrome" " let g:airline_theme="distinguished" " let g:airline_theme="hybrid" " colorscheme 256_noir " colorscheme distinguished " colorscheme sane " set background=dark " let g:hybrid_transparent_background = 1 " colorscheme hybrid_material " autocmd ColorScheme nord highlight vimCommentTitle ctermfg=10 guifg=#8FBCBB autocmd ColorScheme nord highlight Comment ctermfg=14 guifg=#8FBCBB let g:nord_uniform_diff_background = 1 colorscheme nord " For syntastic it's worth running " SyntasticInfo : to see what's available for the given open file " SyntasticCheck yamllint : if you want to say manually run the `yamllint` " checker let g:syntastic_yaml_checkers = ['yamllint'] let g:syntastic_go_checkers = [ 'go', 'gofmt', 'golangci_lint' ] let g:syntastic_lua_checkers = [ 'luac', 'luacheck' ] " This lets :lopen / :lwindow always be populated work let g:syntastic_always_populate_loc_list = 1 " some info on the Tabular plugin: " http://vimcasts.org/episodes/aligning-text-with-tabular-vim/ " Commenting in and out blocks can be done with `gc` " https://github.com/tpope/vim-commentary " For improved Go support " go get github.com/jstemmer/gotags nmap :TagbarToggle " let g:tagbar_ctags_bin='uctags' " let g:tagbar_ctags_bin='uctags' let g:tagbar_ctags_bin='ctags' " For clang complete " path to directory where library can be found " let g:clang_library_path='/usr/local/lib' " let g:clang_library_path='/usr/lib/clang/12/lib' " let g:clang_library_path='/usr/lib/llvm-12/lib/libclang.so' " package clang-tools-extra on OpenBSD provides the library " For info on fugitive " https://github.com/tpope/vim-fugitive