call plug#begin('~/.config/nvim/plugged') Plug 'roxma/nvim-yarp' Plug 'ncm2/ncm2' Plug 'autozimu/LanguageClient-neovim', {'branch': 'next', 'do': 'bash install.sh' } Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --bin' } Plug 'junegunn/fzf.vim' Plug 'lervag/vimtex' Plug 'rhysd/vim-crystal' Plug 'elmcast/elm-vim' Plug 'ap/vim-css-color' Plug 'vim-scripts/avrasm.vim' Plug 'arcticicestudio/nord-vim' Plug 'iamcco/markdown-preview.vim' call plug#end() set exrc " Execute local vimscripts set shiftwidth=4 " Make indents 4 chars wide set expandtab " Expand tabs into spaces set number " Set line numbers set mouse=a " Allow mouse set signcolumn=yes " Always show extra column autocmd BufEnter * call ncm2#enable_for_buffer() " Enable ncm2 for all buffers autocmd BufRead,BufNewFile *.v set filetype=coq " Coq is not Verilog autocmd FileType crystal setlocal shiftwidth=2 " Crystal likes 2-wide indent set completeopt=noinsert,menuone let g:LanguageClient_serverCommands = { \ 'haskell': ['hie', '--lsp'], \ 'rust': ['rustup', 'run', 'stable', 'rls'], \ 'c': ['clangd'], \ 'crystal': ['scry'], \ 'cpp': ['clangd'], \ 'javascript': ['javascript-typescript-stdio'] \ } let g:deoplete#enable_at_startup = 1 let g:LanguageClient_diagnosticsDisplay = { \ 1: {"name": "Error","texthl": "ALEError","signText": ">>","signTexthl": "ALEErrorSign",}, \ 2: {"name": "Warning","texthl": "ALEWarning","signText": ">>","signTexthl": "ALEWarningSign",}, \ 3: {"name": "Information","texthl": "ALEInfo","signText": ">>","signTexthl": "ALEInfoSign",}, \ 4: {"name": "Hint","texthl": "ALEInfo","signText": ">>","signTexthl": "ALEInfoSign",},} let g:LanguageClient_rootMarkers = { \ 'haskell': ['.git'], \ } colorscheme nord