" Load plugins call plug#begin() " CodeStats and Airline Plug 'https://gitlab.com/code-stats/code-stats-vim.git' Plug 'vim-airline/vim-airline' " Syntax highlighters Plug 'tikhomirov/vim-glsl' " Treesitter things Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} " Language server protocol Plug 'neovim/nvim-lspconfig' " Autocompletion shenanigans Plug 'hrsh7th/cmp-nvim-lsp' Plug 'hrsh7th/cmp-buffer' Plug 'hrsh7th/cmp-path' Plug 'hrsh7th/cmp-cmdline' Plug 'hrsh7th/nvim-cmp' Plug 'hrsh7th/cmp-vsnip' Plug 'hrsh7th/vim-vsnip' Plug 'petertriho/cmp-git' call plug#end() " Key remap for resizing split windows nnoremap nnoremap nnoremap nnoremap " Set custom glsl extensions autocmd! BufNewFile,BufRead *.effect set ft=glsl " Python plugins, needed for CodeStats let g:python3_host_prog = '/usr/bin/python' " CodeStats let g:codestats_api_key = $CODESTATS_API_KEY " Main configuration set tabstop=2 softtabstop=2 shiftwidth=2 expandtab smarttab autoindent set mouse= set laststatus=2 set t_Co=256 lua <'] = cmp.mapping.scroll_docs(-4), [''] = cmp.mapping.scroll_docs(4), [''] = cmp.mapping.complete(), [''] = cmp.mapping.abort(), [''] = cmp.mapping.confirm({ select = true }), }), sources = cmp.config.sources({ { name = 'nvim_lsp' }, { name = 'vsnip' }, { name = 'buffer' }, }) }) -- filetype specific setup -- gitconfig cmp.setup.filetype('gitcommit', { sources = cmp.config.sources({ { name = 'git' }, { name = 'buffer' }, }) }) -- / andd ? completion cmp.setup.cmdline({'/', '?'}, { mapping = cmp.mapping.preset.cmdline(), sources = { { name = 'buffer' } }, }) -- : completion cmp.setup.cmdline(':', { mapping = cmp.mapping.preset.cmdline(), sources = { { name = 'path' }, { name = 'cmdline' }, }, matching = { disallow_symbol_nonprefix_matching = false }, }) -- Elixir LSP configuration local capabilities = require('cmp_nvim_lsp').default_capabilities() require'lspconfig'.elixirls.setup { capabilities = capabilities, cmd = { '~/.local/share/lsp-servers/elixir-ls/language_server.sh' } } EOF " disable dfraw for text files if did_filetype() finish endif if getline(1) =~# '[a-z_]' setfiletype dfraw endif