" defines plugin directory " Install plugins from vim with :PlugInstall call plug#begin('~/.local/share/nvim/plugged') " Base Plug 'tpope/vim-sensible' Plug 'tpope/vim-commentary' " Language Integration Plug 'stephpy/vim-yaml' " Design Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'edkolev/tmuxline.vim' " Colorschemes Plug 'Nequo/vim-allomancer' call plug#end() " PLUGIN CONFIGURATION let g:airline_powerline_fonts=1 let g:airline_theme='raven' let g:airline_extensions = ['keymap', 'netrw', 'po', 'quickfix', 'term', 'whitespace'] colorscheme allomancer " custom preset with left-justified window list let g:tmuxline_preset = { \'a' : '#S', \'b' : '#(whoami)', \'c' : '#I:#P', \'win' : '#I #W', \'cwin' : [' ', '#I #W'], \'x' : '#{prefix_highlight} %H:%M:%S', \'y' : '%d-%b-%y', \'z' : '#H', \'options' : {}} " VIM SETTINGS " set truecolor (neovim) set termguicolors " many of these come from " http://stevelosh.com/blog/2010/09/coming-home-to-vim/ " sets tabs to be 4 characters, expanded into spaces, but still removable with " one press of backspace. " great explanation: http://vimcasts.org/transcripts/2/en/ set tabstop=4 set shiftwidth=4 set softtabstop=4 set expandtab " shows linenumbers relative to the one you are on, for easy movement and " dNUMBERd deletions set relativenumber " keeps an undofile next to files so that you can even undo if vim is closed " in between set undofile " ignores case by default but will use case when search is specifically not " all lowercased set ignorecase set smartcase " whenever vim loses focus, save au FocusLost * :wa " disables showing us the current mode in the command line since airline takes " care of it set noshowmode " KEYBINDINGS " " set our leader key to space since with hjkl, space is largely useless let mapleader = "\" " set jk to escape, in case capslock is not mapped to escape on the system inoremap jk " remove search highlights by pressing space+/ - the key for searching the " first place nnoremap / :noh " move around between matching brackets with tab nnoremap % nnoremap % " select the whole buffer with -a map a ggVG " quickly edit vimrc and source it on saving, useful for testing map V :vsp ~/.config/nvim/init.vim au BufWritePost init.vim so ~/.config/nvim/init.vim " get rid of the help message popping up when I miss esc and hit F1 nnoremap inoremap vnoremap " remove all trailing whitespaces nnoremap W :%s/\s\+$//:let @/='' " 'open new tab' with leader-t (opens new buffer and switches to it) nnoremap t v