diff --git a/after/plugin/harpoon.lua b/after/plugin/harpoon.lua new file mode 100644 index 0000000..efcab1d --- /dev/null +++ b/after/plugin/harpoon.lua @@ -0,0 +1,16 @@ +local mark = require('harpoon.mark') +local ui = require('harpoon.ui') +local cmd_ui = require('harpoon.cmd-ui') +local term = require('harpoon.term') + +vim.keymap.set('n', 'a', mark.add_file) +vim.keymap.set('n', '', ui.toggle_quick_menu) + +vim.keymap.set('n', '', function() ui.nav_file(1) end) +vim.keymap.set('n', '', function() ui.nav_file(2) end) +vim.keymap.set('n', '', function() ui.nav_file(3) end) +vim.keymap.set('n', '', function() ui.nav_file(4) end) + +vim.keymap.set('n', 'c', cmd_ui.toggle_quick_menu) +vim.keymap.set('n', 'gt1', function() term.gotoTerminal(1) end) +vim.keymap.set('n', 'br', function() term.sendCommand(1, 'build_ros') end) diff --git a/after/plugin/lsp.lua b/after/plugin/lsp.lua index 0ccfca9..83ccf0e 100644 --- a/after/plugin/lsp.lua +++ b/after/plugin/lsp.lua @@ -9,7 +9,16 @@ require('mason-lspconfig').setup { 'lua_ls', 'clangd', 'pylsp', 'yamlls' } } -local lsp = require('lsp-zero').preset({}) +local lsp = require('lsp-zero').preset({ + manage_nvim_cmp = { + set_sources = 'lsp', + set_basic_mappings = true, + set_extra_mappings = false, + use_luasnip = true, + set_format = true, + documentation_window = true, + } +}) lsp.on_attach(function(client, bufnr) lsp.default_keymaps({ buffer = bufnr }) @@ -32,6 +41,7 @@ cmp.setup({ [''] = cmp.mapping.complete(), [''] = cmp.mapping.scroll_docs(1), [''] = cmp.mapping.scroll_docs(-1), + [''] = cmp.mapping.confirm({ select = false }), }, window = { completion = cmp.config.window.bordered(), diff --git a/lua/lennartalff/init.lua b/lua/lennartalff/init.lua index af9c333..5d8957e 100644 --- a/lua/lennartalff/init.lua +++ b/lua/lennartalff/init.lua @@ -1,3 +1,5 @@ require('lennartalff.remap') require('lennartalff.set') -vim.cmd('colorscheme rose-pine') +-- vim.cmd('colorscheme rose-pine') +vim.o.termguicolors = true +vim.cmd.colorscheme 'catppuccin-frappe' diff --git a/lua/lennartalff/remap.lua b/lua/lennartalff/remap.lua index fca9097..596ab06 100644 --- a/lua/lennartalff/remap.lua +++ b/lua/lennartalff/remap.lua @@ -28,7 +28,20 @@ vim.keymap.set('n', 'f', function() end) -- quickfix navigation -vim.keymap.set('n', '', 'cnextzz') -vim.keymap.set('n', '', 'cprevzz') -vim.keymap.set('n', 'k', 'lnextzz') -vim.keymap.set('n', 'j', 'lprevzz') +vim.keymap.set('n', '', 'cnextzz') +vim.keymap.set('n', '', 'cprevzz') +vim.keymap.set('n', 'j', 'lnextzz') +vim.keymap.set('n', 'k', 'lprevzz') + +vim.keymap.set('n', 'i', vim.lsp.buf.hover) +vim.keymap.set('n', 'r', vim.lsp.buf.rename) + +vim.keymap.set('n', 'dq', vim.diagnostic.setqflist) +local function quickfix() + vim.lsp.buf.code_action({ + filter = function(a) return a.isPreferred end, + apply = true + }) +end +vim.keymap.set('n', 'qf', quickfix) + diff --git a/lua/plugins/init.lua b/lua/plugins/init.lua index ca34726..30306e1 100644 --- a/lua/plugins/init.lua +++ b/lua/plugins/init.lua @@ -7,7 +7,8 @@ return { { 'nvim-lua/plenary.nvim' } } }, { 'rose-pine/neovim', name = 'rose-pine' }, - -- 'tpope/fugitive', + { 'catppuccin/nvim', name = 'catppuccin', priority = 1000 }, + { 'tpope/vim-fugitive', name = 'fugitive' }, { 'VonHeikemen/lsp-zero.nvim', branch = 'v2.x', @@ -23,5 +24,13 @@ return { { 'L3MON4D3/LuaSnip' }, -- Required }, }, + { + 'ThePrimeagen/harpoon', + dependencies = { + { 'nvim-lua/plenary.nvim' }, + }, + }, + { 'ray-x/lsp_signature.nvim', event = 'VeryLazy', opts = {}, + config = function(_, opts) require('lsp_signature').setup(opts) end }, }