nvim now uses terminal bg colour; split config to more files
This commit is contained in:
parent
fa4add0be8
commit
6df4d4169f
|
@ -1,36 +1,17 @@
|
||||||
" Load plugins
|
" Main configuration
|
||||||
call plug#begin()
|
set tabstop=2 softtabstop=2 shiftwidth=2 expandtab smarttab autoindent
|
||||||
|
set mouse=
|
||||||
|
set laststatus=2
|
||||||
|
set t_Co=256
|
||||||
|
|
||||||
" CodeStats and Airline
|
" stop overriding terminal bg colour
|
||||||
Plug 'https://gitlab.com/code-stats/code-stats-vim.git'
|
highlight Normal guibg=none
|
||||||
Plug 'vim-airline/vim-airline'
|
highlight NonText guibg=none
|
||||||
|
highlight Normal ctermbg=none
|
||||||
|
highlight NonText ctermbg=none
|
||||||
|
|
||||||
" Syntax highlighters
|
source $HOME/.config/nvim/plugins.vim
|
||||||
Plug 'tikhomirov/vim-glsl'
|
source $HOME/.config/nvim/keymaps.vim
|
||||||
|
|
||||||
" 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 <C-H> <C-W><C-H>
|
|
||||||
nnoremap <C-J> <C-W><C-J>
|
|
||||||
nnoremap <C-K> <C-W><C-K>
|
|
||||||
nnoremap <C-L> <C-W><C-L>
|
|
||||||
|
|
||||||
" Set custom glsl extensions
|
" Set custom glsl extensions
|
||||||
autocmd! BufNewFile,BufRead *.effect set ft=glsl
|
autocmd! BufNewFile,BufRead *.effect set ft=glsl
|
||||||
|
@ -41,106 +22,9 @@ let g:python3_host_prog = '/usr/bin/python'
|
||||||
" CodeStats
|
" CodeStats
|
||||||
let g:codestats_api_key = $CODESTATS_API_KEY
|
let g:codestats_api_key = $CODESTATS_API_KEY
|
||||||
|
|
||||||
" Main configuration
|
lua require('treesitter')
|
||||||
set tabstop=2 softtabstop=2 shiftwidth=2 expandtab smarttab autoindent
|
lua require('autocomplete')
|
||||||
set mouse=
|
lua require('lsp')
|
||||||
set laststatus=2
|
|
||||||
set t_Co=256
|
|
||||||
|
|
||||||
lua <<EOF
|
|
||||||
require'nvim-treesitter.configs'.setup {
|
|
||||||
ensure_installed = {
|
|
||||||
"bash", "vim", "regex",
|
|
||||||
"cpp", "go", "rust",
|
|
||||||
"diff", "make",
|
|
||||||
"dockerfile",
|
|
||||||
"elixir", "erlang",
|
|
||||||
"godot_resource", "gdscript",
|
|
||||||
"git_rebase", "gitattributes", "gitcommit", "gitignore",
|
|
||||||
"html", "scss",
|
|
||||||
"http", "sql",
|
|
||||||
"javascript", "jsdoc", "typescript", "vue",
|
|
||||||
"json", "json5", "jq",
|
|
||||||
"lua", "php", "phpdoc",
|
|
||||||
"markdown", "markdown_inline",
|
|
||||||
"rst", "yaml"
|
|
||||||
},
|
|
||||||
highlight = {
|
|
||||||
enable = true,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Parser config for dfraw language
|
|
||||||
local parser_config = require'nvim-treesitter.parsers'.get_parser_configs()
|
|
||||||
parser_config.dfraw = {
|
|
||||||
install_info = {
|
|
||||||
url = 'https://code.criminallycute.fi/mirrors/tree-sitter-dfraw',
|
|
||||||
files = {'src/parser.c'},
|
|
||||||
branch = 'main',
|
|
||||||
},
|
|
||||||
filetype = 'text',
|
|
||||||
used_by = {'dfraw'},
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Autocompletion shenanigans
|
|
||||||
local cmp = require'cmp'
|
|
||||||
|
|
||||||
cmp.setup({
|
|
||||||
snippet = {
|
|
||||||
expand = function(args)
|
|
||||||
vim.fn["vsnip#anonymous"](args.body)
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
window = {
|
|
||||||
completion = cmp.config.window.bordered(),
|
|
||||||
documentation = cmp.config.window.bordered(),
|
|
||||||
},
|
|
||||||
mapping = cmp.mapping.preset.insert({
|
|
||||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
|
||||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
|
||||||
['<C-Space>'] = cmp.mapping.complete(),
|
|
||||||
['<C-e>'] = cmp.mapping.abort(),
|
|
||||||
['<CR>'] = 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
|
" disable dfraw for text files
|
||||||
if did_filetype()
|
if did_filetype()
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
" Key remap for resizing split windows
|
||||||
|
nnoremap <C-H> <C-W><C-H>
|
||||||
|
nnoremap <C-J> <C-W><C-J>
|
||||||
|
nnoremap <C-K> <C-W><C-K>
|
||||||
|
nnoremap <C-L> <C-W><C-L>
|
|
@ -0,0 +1,51 @@
|
||||||
|
-- Autocompletion shenanigans
|
||||||
|
local cmp = require'cmp'
|
||||||
|
|
||||||
|
cmp.setup({
|
||||||
|
snippet = {
|
||||||
|
expand = function(args)
|
||||||
|
vim.fn["vsnip#anonymous"](args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
window = {
|
||||||
|
completion = cmp.config.window.bordered(),
|
||||||
|
documentation = cmp.config.window.bordered(),
|
||||||
|
},
|
||||||
|
mapping = cmp.mapping.preset.insert({
|
||||||
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
['<C-e>'] = cmp.mapping.abort(),
|
||||||
|
['<CR>'] = 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 },
|
||||||
|
})
|
|
@ -0,0 +1,16 @@
|
||||||
|
-- Elixir shenanigans
|
||||||
|
local lspdir = '~/.local/share/lsp-servers'
|
||||||
|
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||||
|
require'lspconfig'.elixirls.setup {
|
||||||
|
capabilities = capabilities,
|
||||||
|
capabilities = { lspdir .. '/elixir-ls/language_server.sh' }
|
||||||
|
}
|
||||||
|
|
||||||
|
local elixir = require('elixir')
|
||||||
|
local elixirls = require('elixir.elixirls')
|
||||||
|
|
||||||
|
elixir.setup {
|
||||||
|
elixirls = {
|
||||||
|
cmd = lspdir .. '/elixir-ls/language_server.sh'
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
require'nvim-treesitter.configs'.setup {
|
||||||
|
ensure_installed = {
|
||||||
|
"bash", "vim", "regex",
|
||||||
|
"cpp", "go", "rust",
|
||||||
|
"diff", "make",
|
||||||
|
"dockerfile",
|
||||||
|
"elixir", "erlang",
|
||||||
|
"godot_resource", "gdscript",
|
||||||
|
"git_rebase", "gitattributes", "gitcommit", "gitignore",
|
||||||
|
"html", "scss",
|
||||||
|
"http", "sql",
|
||||||
|
"javascript", "jsdoc", "typescript", "vue",
|
||||||
|
"json", "json5", "jq",
|
||||||
|
"lua", "php", "phpdoc",
|
||||||
|
"markdown", "markdown_inline",
|
||||||
|
"rst", "yaml"
|
||||||
|
},
|
||||||
|
highlight = {
|
||||||
|
enable = true,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Parser config for dfraw language
|
||||||
|
local parser_config = require'nvim-treesitter.parsers'.get_parser_configs()
|
||||||
|
parser_config.dfraw = {
|
||||||
|
install_info = {
|
||||||
|
url = 'https://code.criminallycute.fi/mirrors/tree-sitter-dfraw',
|
||||||
|
files = {'src/parser.c'},
|
||||||
|
branch = 'main',
|
||||||
|
},
|
||||||
|
filetype = 'text',
|
||||||
|
used_by = {'dfraw'},
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
" 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'
|
||||||
|
|
||||||
|
Plug 'elixir-tools/elixir-tools.nvim', {'tag': 'stable'}
|
||||||
|
Plug 'nvim-lua/plenary.nvim'
|
||||||
|
|
||||||
|
call plug#end()
|
Loading…
Reference in New Issue