diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 528abd3..94c93c8 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -1,28 +1,7 @@ --- packages -vim.cmd("packadd nvim-treesitter") -require"nvim-treesitter.configs".setup { - auto_install = true, - highlight = {enable = true}, -} +--------------------- +----- variables ----- +--------------------- -vim.cmd("packadd black") - -vim.cmd("packadd indent-blankline") -require"indent_blankline".setup { - show_current_context = true, - show_current_context_start = true, -} - -vim.cmd("packadd nvim-lspconfig") -require"pack_lspconfig" - -vim.cmd("packadd vim-dirdiff") - -vim.cmd("packadd vim-easy-align") -vim.keymap.set("n", "ga", "(EasyAlign)") -vim.keymap.set("x", "ga", "(EasyAlign)") - --- variables vim.g.mapleader = " " vim.o.path = vim.o.path .. ",**" @@ -52,14 +31,23 @@ vim.o.grepprg = "grep -rn" vim.o.scrolloff = 2 vim.wo.cc = "80" --- keybindings --- (mode, key, command ) +-------------------- +----- packages ----- +-------------------- + +require"pack-black" +require"pack-indent-blankline" +require"pack-lspconfig" +require"pack-nvim-treesitter" +require"pack-vim-dirdiff" +require"pack-vim-easy-align" + +----------------------- +----- keybindings ----- +----------------------- -- terminal escape key -vim.keymap.set("t", "", "" ) - --- go to file:line instead of just file -vim.keymap.set("n", "gf", "gF" ) +vim.keymap.set("t", "", "" ) -- remove trailing whitespaces -vim.keymap.set("n", "w", "%s/\\s\\+$//e") +vim.keymap.set("n", "w", "%s/\\s\\+$//e") diff --git a/.config/nvim/lua/pack-black.lua b/.config/nvim/lua/pack-black.lua new file mode 100644 index 0000000..79c288e --- /dev/null +++ b/.config/nvim/lua/pack-black.lua @@ -0,0 +1 @@ +vim.cmd("packadd black") diff --git a/.config/nvim/lua/pack-indent-blankline.lua b/.config/nvim/lua/pack-indent-blankline.lua new file mode 100644 index 0000000..1142633 --- /dev/null +++ b/.config/nvim/lua/pack-indent-blankline.lua @@ -0,0 +1,5 @@ +vim.cmd("packadd indent-blankline") +require"indent_blankline".setup { + show_current_context = true, + show_current_context_start = true, +} diff --git a/.config/nvim/lua/pack-lspconfig.lua b/.config/nvim/lua/pack-lspconfig.lua new file mode 100644 index 0000000..6fc4b61 --- /dev/null +++ b/.config/nvim/lua/pack-lspconfig.lua @@ -0,0 +1,45 @@ +vim.cmd("packadd nvim-lspconfig") + +lspconfig = require"lspconfig" + +-- Mappings. +-- See `:help vim.diagnostic.*` for documentation on any of the below functions +local opts = { noremap=true, silent=true } +vim.keymap.set("n", "e", vim.diagnostic.open_float, opts) +vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, opts) +vim.keymap.set("n", "]d", vim.diagnostic.goto_next, opts) +vim.keymap.set("n", "q", vim.diagnostic.setloclist, opts) + +local servers = { + "bashls", + "dockerls", + "pyright", + "yamlls", +} + +for _, server in ipairs(servers) do + lspconfig[server].setup { + on_attach = function(client, bufnr) + -- Enable completion triggered by + vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") + + -- Mappings. + -- See `:help vim.lsp.*` for documentation on any of the below functions + local bufopts = { noremap=true, silent=true, buffer=bufnr } + vim.keymap.set("n", "gD", vim.lsp.buf.declaration, bufopts) + vim.keymap.set("n", "gd", vim.lsp.buf.definition, bufopts) + vim.keymap.set("n", "K", vim.lsp.buf.hover, bufopts) + vim.keymap.set("n", "gi", vim.lsp.buf.implementation, bufopts) + vim.keymap.set("n", "", vim.lsp.buf.signature_help, bufopts) + vim.keymap.set("n", "wa", vim.lsp.buf.add_workspace_folder, bufopts) + vim.keymap.set("n", "wr", vim.lsp.buf.remove_workspace_folder, bufopts) + vim.keymap.set("n", "wl", function() + print(vim.inspect(vim.lsp.buf.list_workspace_folders())) + end, bufopts) + vim.keymap.set("n", "D", vim.lsp.buf.type_definition, bufopts) + vim.keymap.set("n", "rn", vim.lsp.buf.rename, bufopts) + vim.keymap.set("n", "ca", vim.lsp.buf.code_action, bufopts) + vim.keymap.set("n", "gr", vim.lsp.buf.references, bufopts) + end + } +end diff --git a/.config/nvim/lua/pack-nvim-treesitter.lua b/.config/nvim/lua/pack-nvim-treesitter.lua new file mode 100644 index 0000000..b590b91 --- /dev/null +++ b/.config/nvim/lua/pack-nvim-treesitter.lua @@ -0,0 +1,5 @@ +vim.cmd("packadd nvim-treesitter") +require"nvim-treesitter.configs".setup { + auto_install = true, + highlight = {enable = true}, +} diff --git a/.config/nvim/lua/pack-vim-dirdiff.lua b/.config/nvim/lua/pack-vim-dirdiff.lua new file mode 100644 index 0000000..c6843bc --- /dev/null +++ b/.config/nvim/lua/pack-vim-dirdiff.lua @@ -0,0 +1 @@ +vim.cmd("packadd vim-dirdiff") diff --git a/.config/nvim/lua/pack-vim-easy-align.lua b/.config/nvim/lua/pack-vim-easy-align.lua new file mode 100644 index 0000000..d8f4db3 --- /dev/null +++ b/.config/nvim/lua/pack-vim-easy-align.lua @@ -0,0 +1,3 @@ +vim.cmd("packadd vim-easy-align") +vim.keymap.set("n", "ga", "(EasyAlign)") +vim.keymap.set("x", "ga", "(EasyAlign)") diff --git a/.config/nvim/lua/pack_lspconfig.lua b/.config/nvim/lua/pack_lspconfig.lua deleted file mode 100644 index 60953e0..0000000 --- a/.config/nvim/lua/pack_lspconfig.lua +++ /dev/null @@ -1,41 +0,0 @@ -lspconfig = require"lspconfig" - --- Mappings. --- See `:help vim.diagnostic.*` for documentation on any of the below functions -local opts = { noremap=true, silent=true } -vim.keymap.set("n", "e", vim.diagnostic.open_float, opts) -vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, opts) -vim.keymap.set("n", "]d", vim.diagnostic.goto_next, opts) -vim.keymap.set("n", "q", vim.diagnostic.setloclist, opts) - -local servers = { - "bashls", - "dockerls", - "pyright", - "yamlls", -} - -for _, server in ipairs(servers) do - lspconfig[server].setup{on_attach = function(client, bufnr) - -- Enable completion triggered by - vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") - - -- Mappings. - -- See `:help vim.lsp.*` for documentation on any of the below functions - local bufopts = { noremap=true, silent=true, buffer=bufnr } - vim.keymap.set("n", "gD", vim.lsp.buf.declaration, bufopts) - vim.keymap.set("n", "gd", vim.lsp.buf.definition, bufopts) - vim.keymap.set("n", "K", vim.lsp.buf.hover, bufopts) - vim.keymap.set("n", "gi", vim.lsp.buf.implementation, bufopts) - vim.keymap.set("n", "", vim.lsp.buf.signature_help, bufopts) - vim.keymap.set("n", "wa", vim.lsp.buf.add_workspace_folder, bufopts) - vim.keymap.set("n", "wr", vim.lsp.buf.remove_workspace_folder, bufopts) - vim.keymap.set("n", "wl", function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end, bufopts) - vim.keymap.set("n", "D", vim.lsp.buf.type_definition, bufopts) - vim.keymap.set("n", "rn", vim.lsp.buf.rename, bufopts) - vim.keymap.set("n", "ca", vim.lsp.buf.code_action, bufopts) - vim.keymap.set("n", "gr", vim.lsp.buf.references, bufopts) - end} -end