dotfiles/nvim/.config/nvim/init.vim
Sanchayan Maity 69654597d2 nvim: Use in built LSP for rust
While at it, use wombat colorscheme for Rust.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 16:57:26 +05:30

122 lines
3.4 KiB
VimL

call plug#begin('~/.config/nvim/plugged')
" Tab completion
Plug 'ervandew/supertab'
" Motions
Plug 'haya14busa/incsearch.vim'
Plug 'rhysd/clever-f.vim'
" Fuzzy search
Plug 'junegunn/fzf.vim'
" Remove extraneous whitespace when edit mode is exited
Plug 'axelf4/vim-strip-trailing-whitespace'
" Manage Project sessions
Plug 'thaerkh/vim-workspace'
" For autocompletion
Plug 'haorenW1025/completion-nvim'
" For tmux
Plug 'tmux-plugins/vim-tmux-focus-events'
Plug 'wellle/tmux-complete.vim'
" Git support
Plug 'lambdalisue/gina.vim'
Plug 'airblade/vim-gitgutter'
Plug 'rhysd/git-messenger.vim', { 'on': 'GitMessenger' }
Plug 'rhysd/conflict-marker.vim'
Plug 'whiteinge/diffconflicts'
Plug 'salcode/vim-interactive-rebase-reverse'
" Boost vim command line mode
Plug 'vim-utils/vim-husk'
" GDB
Plug 'sakhnik/nvim-gdb', { 'do': ':UpdateRemotePlugins' }
" Rainbow Parentheses
Plug 'luochen1990/rainbow'
" Formatting
Plug 'sbdchd/neoformat'
" Run things async
Plug 'hauleth/asyncdo.vim'
" Quickfix
Plug 'ronakg/quickr-cscope.vim'
Plug 'stefandtw/quickfix-reflector.vim'
Plug 'milkypostman/vim-togglelist'
Plug 'yssl/QFEnter'
" Text Object plugins
Plug 'wellle/targets.vim'
Plug 'tpope/vim-surround'
" Tim pope essentials
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-repeat'
Plug 'tpope/vim-sleuth'
" Show indentation levels
Plug 'Yggdroot/indentLine'
" Smooth scrolling
Plug 'psliwka/vim-smoothie'
" Directory viewer
Plug 'justinmk/vim-dirvish'
" Handle line & column jump specifications as found in stack traces
Plug 'wsdjeg/vim-fetch'
" Show leader key bindings
Plug 'liuchengxu/vim-which-key'
" Clipboard
Plug 'christoomey/vim-system-copy'
" Signs for entries in location list or quickfix lists
Plug 'dhruvasagar/vim-markify'
" Toggle terminal
Plug 'caenrique/nvim-toggle-terminal'
" LSP
Plug 'neovim/nvim-lsp'
Plug 'haorenW1025/diagnostic-nvim'
" Language support & syntax highlighting
" Haskell
Plug 'neovimhaskell/haskell-vim'
Plug 'Twinside/vim-hoogle', { 'for': 'haskell' }
Plug 'godlygeek/tabular', { 'for': 'haskell' }
Plug 'ndmitchell/ghcid', { 'rtp': 'plugins/nvim' }
" Rust
Plug 'rust-lang/rust.vim', { 'for': 'rust' }
" Purescript
Plug 'purescript-contrib/purescript-vim'
Plug 'frigoeu/psc-ide-vim'
" Lisp
Plug 'wlangstroth/vim-racket'
Plug 'guns/vim-clojure-static'
Plug 'guns/vim-sexp', { 'for': [ 'racket', 'scheme', 'lisp', 'clojure' ] }
Plug 'tpope/vim-sexp-mappings-for-regular-people', { 'for': [ 'racket', 'scheme', 'lisp', 'clojure' ] }
" Erlang
Plug 'vim-erlang/vim-erlang-runtime', { 'for': 'erlang' }
Plug 'vim-erlang/vim-erlang-tags', { 'for': 'erlang' }
Plug 'vim-erlang/vim-erlang-omnicomplete', { 'for': 'erlang' }
Plug 'vim-erlang/vim-erlang-compiler', { 'for': 'erlang' }
" C/C++
Plug 'vim-jp/vim-cpp'
Plug 'octol/vim-cpp-enhanced-highlight'
Plug 'FromtonRouge/OmniCppComplete'
" LaTeX
Plug 'lervag/vimtex'
" Dhall & nix
Plug 'vmchale/dhall-vim'
Plug 'LnL7/vim-nix'
" Lua
Plug 'wsdjeg/vim-lua'
" Other syntax highlighting support
Plug 'georgewitteman/vim-fish'
Plug 'elzr/vim-json'
Plug 'lifepillar/pgsql.vim'
Plug 'plasticboy/vim-markdown'
Plug 'mtdl9/vim-log-highlighting'
Plug 'martinda/Jenkinsfile-vim-syntax'
call plug#end()
let g:vim_home = get(g:, 'vim_home', expand('~/.config/nvim/'))
let config_list = [
\ 'autocmd.vim',
\ 'config.vim',
\ 'functions.vim',
\ 'keymappings.vim',
\ 'plugin_settings.vim',
\]
for files in config_list
for f in glob(g:vim_home.files, 1, 1)
exec 'source' f
endfor
endfor