set nocompatible " be iMproved, required filetype off " required call plug#begin() Plug 'vim-scripts/c.vim' Plug 'arcticicestudio/nord-vim' Plug 'scrooloose/nerdtree' Plug 'jistr/vim-nerdtree-tabs' Plug 'rhysd/vim-clang-format' Plug 'kana/vim-operator-user' Plug 'rust-lang/rust.vim' "Plug 'Shougo/deoplete.nvim' "Plug 'zchee/deoplete-clang' "Plug 'Shougo/deoplete-clangx' "Plug 'Shougo/neoinclude.vim' "Plug 'roxma/nvim-yarp' "Plug 'sebastianmarkow/deoplete-rust' "Plug 'carlitux/deoplete-flow' Plug 'jpalardy/vim-slime' "Plug 'autozimu/LanguageClient-neovim', { " \ 'branch': 'next', " \ 'do': 'bash install.sh', " \ } Plug 'calviken/vim-gdscript3' "Plug 'Shougo/neosnippet' "Plug 'Shougo/neosnippet-snippets' Plug 'nikvdp/ejs-syntax' Plug 'pangloss/vim-javascript' Plug 'MaxMEllon/vim-jsx-pretty' Plug 'jelera/vim-javascript-syntax' Plug 'w0rp/ale' Plug 'prettier/prettier' Plug 'flrnprz/plastic.vim' Plug 'rakr/vim-one' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'vim-pandoc/vim-rmarkdown' Plug 'vim-pandoc/vim-pandoc' Plug 'vim-pandoc/vim-pandoc-syntax' Plug 'junegunn/fzf.vim' Plug 'tpope/vim-dadbod' "Plug 'lervag/vimtex' Plug 'dpelle/vim-LanguageTool' Plug 'neoclide/coc.nvim', {'branch': 'release'} Plug 'tikhomirov/vim-glsl' Plug 'soli/prolog-vim' call plug#end() " required filetype plugin indent on " required autocmd FileType matlab setlocal keywordprg=info\ octave\ --vi-keys\ --index-search augroup filetypedetect " Mail autocmd BufRead,BufNewFile *mutt-* setfiletype mail augroup END let g:languagetool_jar = "/home/daan/.local/share/languagetool/languagetool-commandline.jar" let g:jsx_ext_required = 0 let g:neosnippet#enable_completed_snippet = 1 let g:autocomplete_flow#insert_paren_after_function = 0 let g:languagetool_jar = "~/Documents/LanguageTool-4.9.1/languagetool-commandline.jar" set tags+=./.tags set nobackup set nowritebackup "Credit joshdick "Use 24-bit (true-color) mode in Vim/Neovim when outside tmux. "If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support "(see < http://sunaku.github.io/tmux-24bit-color.html#usage > for more information.) if (empty($TMUX)) if (has("nvim")) "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 > let $NVIM_TUI_ENABLE_TRUE_COLOR=1 endif "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 > "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd > " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 > if (has("termguicolors")) set termguicolors endif endif let g:airline_powerline_fonts = 1 " Session management set switchbuf=useopen,usetab let g:session = 0 fu! AutoSaveSess() if g:session == 1 call SaveSess() endif endfunction fu! SaveSess() execute 'NERDTreeTabsClose' execute 'mksession! ' . getcwd() . '/.session.vim' let g:session = 1 endfunction fu! RemoveSess() shell "rm " . getcwd() . "/.session.vim" endfunction fu! RestoreSess() if filereadable(getcwd() . '/.session.vim') let initial_args = argv() execute 'so ' . getcwd() . '/.session.vim' for file in initial_args if bufloaded(file) != 1 execute 'tabnew ' . getcwd() . '/' . file else execute 'sb ' . file endif endfor let g:session = 1 endif endfunction :command Savesess call SaveSess() :command Restoresess call RestoreSess() :command Removesess call RemoveSess() nnoremap :Restoresess " Save session on quitting Vim autocmd VimLeave * call AutoSaveSess() " Restore session on starting Vim "autocmd VimEnter * nested call RestoreSess() "---------------------- " move between tabs nnoremap :tabprevious nnoremap :tabnext map :NERDTreeMirrorToggle " prevent mouse vanishing set nomousehide " toggles menu in graphical mode function! ToggleGUICruft() if &guioptions=='ir' exec('set guioptions=imrLn') else exec('set guioptions=ir') endif endfunction map :call ToggleGUICruft() set number set linebreak set nobackup set noswapfile "set shortmess+=I set backspace=indent,eol,start set visualbell t_vb= set showmode "set smartcase nnoremap nnoremap Q nnoremap K runtime! ftplugin/man.vim nnoremap K :Man set mouse=a set nu let g:clang_format#code_style="llvm" set clipboard=unnamed set backspace=indent,eol,start " allow backspacing over everything in insert mode cmap w!! w !sudo tee > /dev/null % set laststatus=2 let g:nord_uniform_diff_background = 1 let g:nord_cursor_line_number_background = 1 "let g:lightline = { "\ 'colorscheme': 'one', "\ } let g:airline_theme='one' set background=dark colorscheme one filetype plugin indent on set smartindent set tabstop=4 set shiftwidth=4 set expandtab :set number relativenumber :set nu rnu :augroup numbertoggle : autocmd! : autocmd BufEnter,FocusGained,InsertLeave * set relativenumber : autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber :augroup END :command WQ wq :command Wq wq :command W w :command Q q :command WQa wqa :command Wqa wqa " Terminal stuff :tnoremap :set ma let g:C_Mapfeader = ',' nnoremap :noh: imap (neosnippet_expand_or_jump) smap (neosnippet_expand_or_jump) xmap (neosnippet_expand_target) imap neosnippet#expandable_or_jumpable() ? \ "\(neosnippet_expand_or_jump)" \: pumvisible() ? "\" : "\" smap neosnippet#expandable_or_jumpable() ? \ "\(neosnippet_expand_or_jump)" \: "\" inoremap \ pumvisible() ? coc#_select_confirm() : \ coc#expandableOrJumpable() ? "\=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\" : \ check_back_space() ? "\" : \ coc#refresh() function! s:check_back_space() abort let col = col('.') - 1 return !col || getline('.')[col - 1] =~# '\s' endfunction let g:coc_snippet_next = '' nnoremap :Files nnoremap :Buffers nnoremap ,s :split nnoremap .s :vsplit nnoremap nnoremap nnoremap nnoremap " Disable arrow keys map map map map imap imap imap imap set completeopt=menu,noinsert