neovim goodness
This commit is contained in:
parent
0e80fa3b8f
commit
d2c2041fa4
6 changed files with 43 additions and 64 deletions
2
.config/nvim/init.lua
Normal file
2
.config/nvim/init.lua
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
require("plugins")
|
||||||
|
require("settings")
|
|
@ -1,35 +0,0 @@
|
||||||
lua require("init")
|
|
||||||
|
|
||||||
set title
|
|
||||||
set titlestring=%F%m\ %r\ %y
|
|
||||||
|
|
||||||
function s:recompile_plugins()
|
|
||||||
luafile %
|
|
||||||
PackerCompile
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
"" Autocommands
|
|
||||||
|
|
||||||
augroup recompile_plugins
|
|
||||||
autocmd!
|
|
||||||
autocmd BufWritePost plugins.lua call <SID>recompile_plugins()
|
|
||||||
augroup END
|
|
||||||
|
|
||||||
autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab
|
|
||||||
autocmd BufRead,BufNewFile *.hcl set filetype=terraform
|
|
||||||
autocmd BufRead,BufNewFile *.tf set filetype=terraform
|
|
||||||
|
|
||||||
"" Temporary hacks
|
|
||||||
|
|
||||||
" Show syntax highlight group in the status bar
|
|
||||||
map ,H :echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<'
|
|
||||||
\ . synIDattr(synID(line("."),col("."),0),"name") . "> lo<"
|
|
||||||
\ . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">"<CR>
|
|
||||||
|
|
||||||
function! SynGroup()
|
|
||||||
let l:s = synID(line('.'), col('.'), 1)
|
|
||||||
echo synIDattr(l:s, 'name') . ' -> ' . synIDattr(synIDtrans(l:s), 'name')
|
|
||||||
endfun
|
|
||||||
map ,J :call SynGroup()<CR>
|
|
||||||
|
|
||||||
map ,L :luafile %<CR>
|
|
|
@ -2,6 +2,10 @@ local lspconfig = require("lspconfig")
|
||||||
-- local configs = require("lspconfig.configs")
|
-- local configs = require("lspconfig.configs")
|
||||||
local util = require("lspconfig.util")
|
local util = require("lspconfig.util")
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
|
||||||
|
|
||||||
|
|
||||||
vim.lsp.handlers["textDocument/publishDiagnostics"] =
|
vim.lsp.handlers["textDocument/publishDiagnostics"] =
|
||||||
vim.lsp.with(
|
vim.lsp.with(
|
||||||
vim.lsp.diagnostic.on_publish_diagnostics,
|
vim.lsp.diagnostic.on_publish_diagnostics,
|
||||||
|
@ -81,11 +85,12 @@ local yaml_is_k8s = function(bufnr)
|
||||||
end
|
end
|
||||||
|
|
||||||
lspconfig.cssls.setup {
|
lspconfig.cssls.setup {
|
||||||
cmd = { "css-languageserver", "--stdio" },
|
cmd = { "vscode-css-languageserver", "--stdio" },
|
||||||
filetypes = { "css" },
|
capabilities = capabilities,
|
||||||
settings = {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lspconfig.cssmodules_ls.setup{}
|
||||||
|
|
||||||
lspconfig.html.setup {
|
lspconfig.html.setup {
|
||||||
cmd = { "vscode-html-languageserver", "--stdio" },
|
cmd = { "vscode-html-languageserver", "--stdio" },
|
||||||
filetypes = { "html" },
|
filetypes = { "html" },
|
||||||
|
|
|
@ -6,10 +6,8 @@ return require('packer').startup(function()
|
||||||
use 'ray-x/lsp_signature.nvim'
|
use 'ray-x/lsp_signature.nvim'
|
||||||
use 'jose-elias-alvarez/nvim-lsp-ts-utils'
|
use 'jose-elias-alvarez/nvim-lsp-ts-utils'
|
||||||
use 'rafamadriz/friendly-snippets'
|
use 'rafamadriz/friendly-snippets'
|
||||||
use 'mfussenegger/nvim-dap'
|
|
||||||
|
|
||||||
use {'ray-x/guihua.lua', run = 'cd lua/fzy && make'}
|
|
||||||
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"} }
|
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"} }
|
||||||
|
use {'ray-x/guihua.lua', run = 'cd lua/fzy && make'}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'theHamsta/nvim-dap-virtual-text',
|
'theHamsta/nvim-dap-virtual-text',
|
||||||
|
@ -20,6 +18,14 @@ return require('packer').startup(function()
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
use({
|
||||||
|
"jose-elias-alvarez/null-ls.nvim",
|
||||||
|
requires = { "nvim-lua/plenary.nvim" },
|
||||||
|
config = function()
|
||||||
|
require("plugins/null-ls")
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'b3nj5m1n/kommentary',
|
'b3nj5m1n/kommentary',
|
||||||
config = function()
|
config = function()
|
||||||
|
@ -234,9 +240,8 @@ return require('packer').startup(function()
|
||||||
map('n', 'g?', '<cmd>lua require("telescope.builtin").lsp_workspace_symbols()<CR>')
|
map('n', 'g?', '<cmd>lua require("telescope.builtin").lsp_workspace_symbols()<CR>')
|
||||||
map('n', 'ge', '<cmd>lua require("telescope.builtin").lsp_document_diagnostics()<CR>')
|
map('n', 'ge', '<cmd>lua require("telescope.builtin").lsp_document_diagnostics()<CR>')
|
||||||
map('n', 'Db', '<cmd>lua require("telescope").extensions.dap.list_breakpoints()<CR>')
|
map('n', 'Db', '<cmd>lua require("telescope").extensions.dap.list_breakpoints()<CR>')
|
||||||
map('n', 'Dc', '<cmd>lua require("telescope").extensions.dap.commands()<CR>')
|
map('n', 'Dcc', '<cmd>lua require("telescope").extensions.dap.commands()<CR>')
|
||||||
map('n', 'Df', '<cmd>lua require("telescope").extensions.dap.frames()<CR>')
|
map('n', 'Df', '<cmd>lua require("telescope").extensions.dap.frames()<CR>')
|
||||||
map('n', 'DD', '<cmd>:GoBreakToggle<CR>')
|
|
||||||
map('n', 'Dv', '<cmd>lua require("telescope").extensions.dap.variables()<CR>')
|
map('n', 'Dv', '<cmd>lua require("telescope").extensions.dap.variables()<CR>')
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
@ -256,25 +261,13 @@ return require('packer').startup(function()
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
use {
|
|
||||||
'mattn/efm-langserver',
|
|
||||||
config = function()
|
|
||||||
require "lspconfig".efm.setup {
|
|
||||||
init_options = {documentFormatting = true},
|
|
||||||
settings = {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
end
|
|
||||||
}
|
|
||||||
|
|
||||||
use {
|
use {
|
||||||
"ray-x/go.nvim",
|
"ray-x/go.nvim",
|
||||||
config = function()
|
config = function()
|
||||||
require('go').setup({
|
require('go').setup({
|
||||||
comment_placeholder = '',
|
comment_placeholder = '',
|
||||||
icons = {breakpoint = '🧘', currentpos = '🏃'},
|
icons = {breakpoint = '🧘', currentpos = '🏃'},
|
||||||
dap_debug_gui = true
|
dap_debug_gui = false
|
||||||
})
|
})
|
||||||
vim.cmd("autocmd FileType go nmap <Leader>c :lua require('go.comment').gen()<cr>")
|
vim.cmd("autocmd FileType go nmap <Leader>c :lua require('go.comment').gen()<cr>")
|
||||||
vim.cmd("autocmd BufWritePre *.go :silent! lua require('go.format').gofmt()")
|
vim.cmd("autocmd BufWritePre *.go :silent! lua require('go.format').gofmt()")
|
||||||
|
@ -296,6 +289,18 @@ return require('packer').startup(function()
|
||||||
config = function() require("plugins/marks") end,
|
config = function() require("plugins/marks") end,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-- dap
|
||||||
|
use {
|
||||||
|
'mfussenegger/nvim-dap',
|
||||||
|
config = function() require("plugins/dap") end,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- go
|
||||||
|
use {
|
||||||
|
"leoluz/nvim-dap-go",
|
||||||
|
config = function() require("plugins/nvim-dap-go") end,
|
||||||
|
}
|
||||||
|
|
||||||
-- zenbones
|
-- zenbones
|
||||||
use {
|
use {
|
||||||
"mcchrish/zenbones.nvim",
|
"mcchrish/zenbones.nvim",
|
||||||
|
|
|
@ -15,7 +15,7 @@ local specs = lush.parse(function()
|
||||||
CursorLine { bg = "#f5f5f0" },
|
CursorLine { bg = "#f5f5f0" },
|
||||||
CursorLineNr { fg = "#BCAAA4", bg="#f5f5f0" },
|
CursorLineNr { fg = "#BCAAA4", bg="#f5f5f0" },
|
||||||
MsgArea { fg = "#A1887F", bg="#f1f1f1" },
|
MsgArea { fg = "#A1887F", bg="#f1f1f1" },
|
||||||
String { fg = "#33691E", gui = "italic" },
|
String { fg = "#2E7D32", gui = "italic" },
|
||||||
Comment { fg = "#114499", gui = "bold,italic" },
|
Comment { fg = "#114499", gui = "bold,italic" },
|
||||||
LineNr { fg = "#CFD8DC", gui = "bold,italic" },
|
LineNr { fg = "#CFD8DC", gui = "bold,italic" },
|
||||||
Indent1 { fg = "#FFEBEE", gui = "italic" },
|
Indent1 { fg = "#FFEBEE", gui = "italic" },
|
||||||
|
|
|
@ -12,6 +12,8 @@ vim.o.updatetime = 100
|
||||||
vim.o.autochdir = true
|
vim.o.autochdir = true
|
||||||
vim.o.backupdir = "/home/dln/.local/share/nvim/backup/"
|
vim.o.backupdir = "/home/dln/.local/share/nvim/backup/"
|
||||||
vim.o.backup = true
|
vim.o.backup = true
|
||||||
|
vim.g.netrw_dirhistmax = 0
|
||||||
|
vim.o.clipboard = "unnamedplus"
|
||||||
|
|
||||||
--- Indent
|
--- Indent
|
||||||
vim.o.autoindent = true
|
vim.o.autoindent = true
|
||||||
|
@ -44,7 +46,7 @@ vim.o.completeopt = 'menuone,noinsert,noselect'
|
||||||
|
|
||||||
--- Appearance
|
--- Appearance
|
||||||
vim.o.background = 'light'
|
vim.o.background = 'light'
|
||||||
vim.o.scrolloff = 8
|
vim.o.scrolloff = 5
|
||||||
vim.o.showmode = false
|
vim.o.showmode = false
|
||||||
vim.o.sidescrolloff = 5
|
vim.o.sidescrolloff = 5
|
||||||
vim.o.termguicolors = true
|
vim.o.termguicolors = true
|
||||||
|
@ -54,6 +56,10 @@ vim.wo.signcolumn = "yes"
|
||||||
vim.o.laststatus = 0
|
vim.o.laststatus = 0
|
||||||
vim.o.statusline = "═"
|
vim.o.statusline = "═"
|
||||||
vim.o.fillchars = "stl:═,stlnc:═"
|
vim.o.fillchars = "stl:═,stlnc:═"
|
||||||
|
vim.o.title = true
|
||||||
|
vim.o.titlestring = "%F%m %r %y"
|
||||||
|
vim.wo.foldmethod = "expr"
|
||||||
|
vim.wo.foldexpr = "nvim_treesitter#foldexpr()"
|
||||||
|
|
||||||
--- Key mappings
|
--- Key mappings
|
||||||
local map = require("dln.utils").map
|
local map = require("dln.utils").map
|
||||||
|
@ -62,10 +68,11 @@ map('n', 'H', '^')
|
||||||
map('n', 'L', '$')
|
map('n', 'L', '$')
|
||||||
map('i', '', '<C-w>')
|
map('i', '', '<C-w>')
|
||||||
|
|
||||||
|
map('n', ',L', ':luafile %<CR>') -- Reload lua file
|
||||||
|
|
||||||
--- Plugins
|
--- Plugins
|
||||||
vim.g.netrw_dirhistmax = 0
|
vim.g.netrw_dirhistmax = 0
|
||||||
|
|
||||||
require('plugins')
|
|
||||||
|
|
||||||
local border = {
|
local border = {
|
||||||
{"🭽", "FloatBorder"},
|
{"🭽", "FloatBorder"},
|
||||||
|
@ -80,8 +87,3 @@ local border = {
|
||||||
|
|
||||||
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = border })
|
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = border })
|
||||||
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, {border = border })
|
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, {border = border })
|
||||||
|
|
||||||
-- vim.cmd [[nnoremap <buffer><silent> <C-space> :lua vim.lsp.diagnostic.show_line_diagnostics({ border = border })<CR>]]
|
|
||||||
-- vim.cmd [[nnoremap <buffer><silent> ]g :lua vim.lsp.diagnostic.goto_next({ popup_opts = { border = border }})<CR>]]
|
|
||||||
-- vim.cmd [[nnoremap <buffer><silent> [g :lua vim.lsp.diagnostic.goto_prev({ popup_opts = { border = "round" }})<CR>]]
|
|
||||||
|
|
Loading…
Reference in a new issue