From 152611874aa413b00d31d60a7117535b5f222db5 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:18:03 -0600 Subject: [PATCH 01/12] fix shared clipboard with os --- lua/settings.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lua/settings.lua b/lua/settings.lua index d793e745..6837c983 100644 --- a/lua/settings.lua +++ b/lua/settings.lua @@ -11,7 +11,7 @@ vim.opt.mouse = '' -- FIX: shared clipboard not working -- Sync clipboard between OS and Neovim. -vim.opt.clipboard = 'unnamedplus' +vim.opt.clipboard = 'unnamed,unnamedplus' -- Enable spell check vim.opt.spell = true From 11fdede2f8462258fe38da2ca9b6dae2e166cae6 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:20:14 -0600 Subject: [PATCH 02/12] enable cursor line highlighting --- lua/settings.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lua/settings.lua b/lua/settings.lua index 6837c983..43f38458 100644 --- a/lua/settings.lua +++ b/lua/settings.lua @@ -9,10 +9,12 @@ vim.opt.incsearch = true -- Enable mouse mode vim.opt.mouse = '' --- FIX: shared clipboard not working -- Sync clipboard between OS and Neovim. vim.opt.clipboard = 'unnamed,unnamedplus' +-- Enables cursor-line highlighting +vim.opt.cursorline = true + -- Enable spell check vim.opt.spell = true vim.opt.spelloptions = 'camel' From de1dacb829f2ec5b7264591cc051fc4e4b782b85 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:29:57 -0600 Subject: [PATCH 03/12] plugin description commenting --- lazy-lock.json | 38 ++++++++++++++++++------------------ lua/plugins/catpuccin.lua | 1 + lua/plugins/fugitive.lua | 1 + lua/plugins/gitsigns.lua | 1 + lua/plugins/lspconfig.lua | 1 + lua/plugins/lualine.lua | 1 + lua/plugins/oil.lua | 1 + lua/plugins/rust.lua | 1 + lua/plugins/telescope.lua | 1 + lua/plugins/todocomments.lua | 1 + lua/plugins/treesitter.lua | 1 + lua/plugins/whichkey.lua | 1 + 12 files changed, 30 insertions(+), 19 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index 5f7ad537..6147d872 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,30 +1,30 @@ { "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, - "LuaSnip": { "branch": "master", "commit": "6a001360cea89df50f7c5cc8c7a75e6a21f1ef5c" }, - "catppuccin": { "branch": "main", "commit": "64dc309bc157779691be38bbfc5123584e0a4a85" }, + "LuaSnip": { "branch": "master", "commit": "2dbef19461198630b3d7c39f414d09fb07d1fdd2" }, + "catppuccin": { "branch": "main", "commit": "c2034f7b549152e5cc757820426341ea5000bc7a" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, - "fidget.nvim": { "branch": "main", "commit": "7b9c383438a2e490e37d57b07ddeae3ab4f4cf69" }, - "friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" }, - "gitsigns.nvim": { "branch": "main", "commit": "d195f0c35ced5174d3ecce1c4c8ebb3b5bc23fa9" }, - "indent-blankline.nvim": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" }, - "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, - "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "9453e3d6cd2ca45d96e20f343e8f1b927364b630" }, - "mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" }, - "neodev.nvim": { "branch": "main", "commit": "ef351fae5df2559956398923c5d38c9b64e7d898" }, - "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, - "nvim-lspconfig": { "branch": "master", "commit": "84f2dd42efffa20d505ac44c78568d778ca7e0a1" }, - "nvim-treesitter": { "branch": "master", "commit": "ab818bf5a2ee21515ade9afcf428e98056b6197b" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" }, - "oil.nvim": { "branch": "master", "commit": "24027ed8d7f3ee5c38cfd713915e2e16d89e79b3" }, - "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, + "fidget.nvim": { "branch": "main", "commit": "a3e1e79116ceb93d4c8c0ff432bf506b3213a24d" }, + "friendly-snippets": { "branch": "main", "commit": "b8fae73a479ae0a1c54f5c98fa687ae8a0addc53" }, + "gitsigns.nvim": { "branch": "main", "commit": "2c2463dbd82eddd7dbab881c3a62cfbfbe3c67ae" }, + "indent-blankline.nvim": { "branch": "master", "commit": "12e92044d313c54c438bd786d11684c88f6f78cd" }, + "lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" }, + "lualine.nvim": { "branch": "master", "commit": "7d131a8d3ba5016229e8a1d08bf8782acea98852" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "0954d7730e749d606ddf8d7ae8846848be435d53" }, + "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, + "neodev.nvim": { "branch": "main", "commit": "0ee95ecefc8ea45898a0383364f736e098c8703f" }, + "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" }, + "nvim-lspconfig": { "branch": "master", "commit": "d12140c5687a1186b95b3f42dbc6cc769df0cf0d" }, + "nvim-treesitter": { "branch": "master", "commit": "4fbf150a1621d52f17b099506e1a32f107079210" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "8edd5a6d96936bdff23333d3bc177481388839e5" }, + "oil.nvim": { "branch": "master", "commit": "bf753c3e3f8736939ad5597f92329dfe7b1df4f5" }, + "plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" }, "rust.vim": { "branch": "master", "commit": "889b9a7515db477f4cb6808bef1769e53493c578" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, "telescope.nvim": { "branch": "0.1.x", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, - "todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" }, - "vim-fugitive": { "branch": "master", "commit": "46eaf8918b347906789df296143117774e827616" }, + "todo-comments.nvim": { "branch": "main", "commit": "833d8dd8b07eeda37a09e99460f72a02616935cb" }, + "vim-fugitive": { "branch": "master", "commit": "e7bf502a6ae492f42a91d231864e25630286319b" }, "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, "vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" }, "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" } diff --git a/lua/plugins/catpuccin.lua b/lua/plugins/catpuccin.lua index ade84e6c..bbbe4808 100644 --- a/lua/plugins/catpuccin.lua +++ b/lua/plugins/catpuccin.lua @@ -1,3 +1,4 @@ +-- Default theme return { 'catppuccin/nvim', name='catppuccin', priority = 1000, config = function() require('catppuccin').setup({ diff --git a/lua/plugins/fugitive.lua b/lua/plugins/fugitive.lua index af264934..de7b9232 100644 --- a/lua/plugins/fugitive.lua +++ b/lua/plugins/fugitive.lua @@ -1,3 +1,4 @@ +-- UI for git commands return { 'tpope/vim-fugitive', config = function() vim.keymap.set('n', 'gs', 'Git', { desc = '[G]it [S]tatus' }); diff --git a/lua/plugins/gitsigns.lua b/lua/plugins/gitsigns.lua index 9865461d..50f9d251 100644 --- a/lua/plugins/gitsigns.lua +++ b/lua/plugins/gitsigns.lua @@ -1,3 +1,4 @@ +-- Displays git changes in gutter return { -- Adds git related signs to the gutter, as well as utilities for managing changes 'lewis6991/gitsigns.nvim', diff --git a/lua/plugins/lspconfig.lua b/lua/plugins/lspconfig.lua index a35480b1..c56c32aa 100644 --- a/lua/plugins/lspconfig.lua +++ b/lua/plugins/lspconfig.lua @@ -1,3 +1,4 @@ +-- Configuration for language servers local function keymaps(bufnr) local keymap = function(keys, func, desc) if desc then diff --git a/lua/plugins/lualine.lua b/lua/plugins/lualine.lua index 074ea501..849b1895 100644 --- a/lua/plugins/lualine.lua +++ b/lua/plugins/lualine.lua @@ -1,3 +1,4 @@ +-- Informational line at bottom of screen return { -- Set lualine as statusline 'nvim-lualine/lualine.nvim', diff --git a/lua/plugins/oil.lua b/lua/plugins/oil.lua index 36593445..492c860e 100644 --- a/lua/plugins/oil.lua +++ b/lua/plugins/oil.lua @@ -1,3 +1,4 @@ +-- file browser return { 'stevearc/oil.nvim', config = function() require("oil").setup(); diff --git a/lua/plugins/rust.lua b/lua/plugins/rust.lua index e2a56aec..9fec3d2f 100644 --- a/lua/plugins/rust.lua +++ b/lua/plugins/rust.lua @@ -1,3 +1,4 @@ +-- rust language integrations return { 'rust-lang/rust.vim', ft = "rust", diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua index aa12e1ca..c77ae8b6 100644 --- a/lua/plugins/telescope.lua +++ b/lua/plugins/telescope.lua @@ -1,3 +1,4 @@ +-- Fuzzy finder local function telescope_live_grep_open_files() require('telescope.builtin').live_grep { grep_open_files = true, diff --git a/lua/plugins/todocomments.lua b/lua/plugins/todocomments.lua index 2797ff53..e4ef92f9 100644 --- a/lua/plugins/todocomments.lua +++ b/lua/plugins/todocomments.lua @@ -1,3 +1,4 @@ +-- Comment highlighting for specific comment types (TODO, NOTE, HACK, FIX) return { 'folke/todo-comments.nvim', dependencies = { 'nvim-lua//plenary.nvim' }, diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index 42e19d64..d6d0a26c 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -1,3 +1,4 @@ +-- code token highlighting local text_objects = { select = { enable = true, diff --git a/lua/plugins/whichkey.lua b/lua/plugins/whichkey.lua index 2e7edbc9..509fbd07 100644 --- a/lua/plugins/whichkey.lua +++ b/lua/plugins/whichkey.lua @@ -1,3 +1,4 @@ +-- displays command and key chain options and help return { 'folke/which-key.nvim', opts = {}, config = function() -- document existing key chains From 90db684e6d6970797c6334bafbcd05150dc3943b Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:42:28 -0600 Subject: [PATCH 04/12] add and configure bracket pairing with autocompletion --- lazy-lock.json | 1 + lua/plugins/autocompletion.lua | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/lazy-lock.json b/lazy-lock.json index 6147d872..34e95550 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -14,6 +14,7 @@ "mason-lspconfig.nvim": { "branch": "main", "commit": "0954d7730e749d606ddf8d7ae8846848be435d53" }, "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, "neodev.nvim": { "branch": "main", "commit": "0ee95ecefc8ea45898a0383364f736e098c8703f" }, + "nvim-autopairs": { "branch": "master", "commit": "096d0baecc34f6c5d8a6dd25851e9d5ad338209b" }, "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" }, "nvim-lspconfig": { "branch": "master", "commit": "d12140c5687a1186b95b3f42dbc6cc769df0cf0d" }, "nvim-treesitter": { "branch": "master", "commit": "4fbf150a1621d52f17b099506e1a32f107079210" }, diff --git a/lua/plugins/autocompletion.lua b/lua/plugins/autocompletion.lua index d14bdfa6..15d46077 100644 --- a/lua/plugins/autocompletion.lua +++ b/lua/plugins/autocompletion.lua @@ -12,10 +12,18 @@ return { -- Adds a number of user-friendly snippets 'rafamadriz/friendly-snippets', + + -- Auto-closing brackets, quotes, etc. + 'windwp/nvim-autopairs', }, config = function() + local cmp_autopairs = require('nvim-autopairs.completion.cmp') local cmp = require 'cmp' local luasnip = require 'luasnip' + + require('nvim-autopairs').setup(); + cmp.event:on('confirm_done', cmp_autopairs.on_confirm_done()) + require('luasnip.loaders.from_vscode').lazy_load() luasnip.config.setup {} From 0309f492102f6362e9db16f8089fd27954544414 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:49:30 -0600 Subject: [PATCH 05/12] update key bindings and display for autocompletion --- lua/plugins/autocompletion.lua | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lua/plugins/autocompletion.lua b/lua/plugins/autocompletion.lua index 15d46077..3bceaca5 100644 --- a/lua/plugins/autocompletion.lua +++ b/lua/plugins/autocompletion.lua @@ -37,8 +37,8 @@ return { completeopt = 'menu,menuone,noinsert', }, mapping = cmp.mapping.preset.insert { - [''] = cmp.mapping.select_next_item(), - [''] = cmp.mapping.select_prev_item(), + [''] = cmp.mapping.select_next_item(), + [''] = cmp.mapping.select_prev_item(), [''] = cmp.mapping.scroll_docs(-4), [''] = cmp.mapping.scroll_docs(4), [''] = cmp.mapping.complete {}, @@ -52,6 +52,9 @@ return { { name = 'luasnip' }, { name = 'path' }, }, + experimental = { + ghost_text = true, + } } end } From 7cec2bf60559a60a30aef3f4e26bf03fed13f2cc Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:50:14 -0600 Subject: [PATCH 06/12] formating --- lua/plugins/autocompletion.lua | 46 +++++++++++++++++----------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/lua/plugins/autocompletion.lua b/lua/plugins/autocompletion.lua index 3bceaca5..f46633fe 100644 --- a/lua/plugins/autocompletion.lua +++ b/lua/plugins/autocompletion.lua @@ -28,30 +28,30 @@ return { luasnip.config.setup {} cmp.setup { - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - completion = { - completeopt = 'menu,menuone,noinsert', - }, - mapping = cmp.mapping.preset.insert { - [''] = cmp.mapping.select_next_item(), - [''] = cmp.mapping.select_prev_item(), - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.mapping.complete {}, - [''] = cmp.mapping.confirm { - behavior = cmp.ConfirmBehavior.Replace, - select = true, + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + completion = { + completeopt = 'menu,menuone,noinsert', + }, + mapping = cmp.mapping.preset.insert { + [''] = cmp.mapping.select_next_item(), + [''] = cmp.mapping.select_prev_item(), + [''] = cmp.mapping.scroll_docs(-4), + [''] = cmp.mapping.scroll_docs(4), + [''] = cmp.mapping.complete {}, + [''] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Replace, + select = true, + }, + }, + sources = { + { name = 'nvim_lsp' }, + { name = 'luasnip' }, + { name = 'path' }, }, - }, - sources = { - { name = 'nvim_lsp' }, - { name = 'luasnip' }, - { name = 'path' }, - }, experimental = { ghost_text = true, } From 19f7ff62354a0e58bc5f577d3ec19ce2517f64af Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 11:54:06 -0600 Subject: [PATCH 07/12] explicitly apply color theme to plugins --- lua/plugins/catpuccin.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lua/plugins/catpuccin.lua b/lua/plugins/catpuccin.lua index bbbe4808..65a9c885 100644 --- a/lua/plugins/catpuccin.lua +++ b/lua/plugins/catpuccin.lua @@ -1,5 +1,8 @@ -- Default theme -return { 'catppuccin/nvim', name='catppuccin', priority = 1000, +return { + 'catppuccin/nvim', + name = 'catppuccin', + priority = 1000, config = function() require('catppuccin').setup({ flavour = "macchiato", @@ -9,6 +12,10 @@ return { 'catppuccin/nvim', name='catppuccin', priority = 1000, conditionals = { 'italic' }, }, integrations = { + cmp = true, + gitsigns = true, + mason = true, + telescope = true, treesitter = true, } }) From 04a331f3ce11f9ed915b0892d9600381c48b34b5 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 12:13:36 -0600 Subject: [PATCH 08/12] update lualine configuration --- lua/plugins/lualine.lua | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/lua/plugins/lualine.lua b/lua/plugins/lualine.lua index 849b1895..ef96d38b 100644 --- a/lua/plugins/lualine.lua +++ b/lua/plugins/lualine.lua @@ -1,13 +1,16 @@ --- Informational line at bottom of screen +-- Informational status line at bottom of screen return { - -- Set lualine as statusline - 'nvim-lualine/lualine.nvim', - opts = { - options = { - icons_enabled = false, - theme = 'onedark', + 'nvim-lualine/lualine.nvim', + opts = { + options = { + theme = 'catppuccin', component_separators = '|', section_separators = '', + }, + sections = { + lualine_c = { + { "filename", path = 1 } + } } } } From 9459f0f20e6ff8fe36db681d8e01ca87d075a981 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 12:18:45 -0600 Subject: [PATCH 09/12] install and configure markdown preview plugin --- lazy-lock.json | 2 ++ lua/plugins/markdownpreview.lua | 12 ++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 lua/plugins/markdownpreview.lua diff --git a/lazy-lock.json b/lazy-lock.json index 34e95550..89446881 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -8,9 +8,11 @@ "fidget.nvim": { "branch": "main", "commit": "a3e1e79116ceb93d4c8c0ff432bf506b3213a24d" }, "friendly-snippets": { "branch": "main", "commit": "b8fae73a479ae0a1c54f5c98fa687ae8a0addc53" }, "gitsigns.nvim": { "branch": "main", "commit": "2c2463dbd82eddd7dbab881c3a62cfbfbe3c67ae" }, + "harpoon": { "branch": "master", "commit": "ccae1b9bec717ae284906b0bf83d720e59d12b91" }, "indent-blankline.nvim": { "branch": "master", "commit": "12e92044d313c54c438bd786d11684c88f6f78cd" }, "lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" }, "lualine.nvim": { "branch": "master", "commit": "7d131a8d3ba5016229e8a1d08bf8782acea98852" }, + "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "0954d7730e749d606ddf8d7ae8846848be435d53" }, "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, "neodev.nvim": { "branch": "main", "commit": "0ee95ecefc8ea45898a0383364f736e098c8703f" }, diff --git a/lua/plugins/markdownpreview.lua b/lua/plugins/markdownpreview.lua new file mode 100644 index 00000000..5ea063bf --- /dev/null +++ b/lua/plugins/markdownpreview.lua @@ -0,0 +1,12 @@ +return { + 'iamcco/markdown-preview.nvim', + ft = 'markdown', + build = function() + vim.fn['mkdp#util#install']() + end, + cmd = { + 'MarkdownPreviewToggle', + 'MarkdownPreview', + 'MarkdownStop', + }, +} From 46496f572d32a1768180b0335c04e29b1c706b53 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 12:26:48 -0600 Subject: [PATCH 10/12] install and configure vim surround plugin --- lazy-lock.json | 1 + lua/plugins/oil.lua | 3 ++- lua/plugins/vimsurround.lua | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 lua/plugins/vimsurround.lua diff --git a/lazy-lock.json b/lazy-lock.json index 89446881..f48886b9 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -30,5 +30,6 @@ "vim-fugitive": { "branch": "master", "commit": "e7bf502a6ae492f42a91d231864e25630286319b" }, "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, "vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" }, + "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }, "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" } } \ No newline at end of file diff --git a/lua/plugins/oil.lua b/lua/plugins/oil.lua index 492c860e..52174176 100644 --- a/lua/plugins/oil.lua +++ b/lua/plugins/oil.lua @@ -1,5 +1,6 @@ -- file browser -return { 'stevearc/oil.nvim', +return { + 'stevearc/oil.nvim', config = function() require("oil").setup(); vim.keymap.set('n', '-', 'Oil --float', { desc = 'Open current directory' }) diff --git a/lua/plugins/vimsurround.lua b/lua/plugins/vimsurround.lua new file mode 100644 index 00000000..4f101a3a --- /dev/null +++ b/lua/plugins/vimsurround.lua @@ -0,0 +1,5 @@ +return { + { + 'tpope/vim-surround' + } +} From b35041ab69fb42d45e76fba6d8de1be26fd6f906 Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 5 Feb 2024 12:52:19 -0600 Subject: [PATCH 11/12] install and configure harpoon --- lua/plugins/catpuccin.lua | 1 + lua/plugins/harpoon.lua | 52 +++++++++++++++++++++++++++++++++++++++ lua/plugins/oil.lua | 2 +- lua/plugins/whichkey.lua | 1 + 4 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 lua/plugins/harpoon.lua diff --git a/lua/plugins/catpuccin.lua b/lua/plugins/catpuccin.lua index 65a9c885..4e7767b5 100644 --- a/lua/plugins/catpuccin.lua +++ b/lua/plugins/catpuccin.lua @@ -14,6 +14,7 @@ return { integrations = { cmp = true, gitsigns = true, + harpoon = true, mason = true, telescope = true, treesitter = true, diff --git a/lua/plugins/harpoon.lua b/lua/plugins/harpoon.lua new file mode 100644 index 00000000..38a16cfc --- /dev/null +++ b/lua/plugins/harpoon.lua @@ -0,0 +1,52 @@ +-- tag and quickly switch between buffers +return { + 'thePrimeagen/harpoon', + config = function() + local harpoon_mark = require('harpoon.mark') + local harpoon_ui = require("harpoon.ui") + + vim.keymap.set('n', 'ho', function() + harpoon_ui.toggle_quick_menu() + end, { desc = '[O]pen [H]arpoon' }) + + vim.keymap.set('n', 'ha', function() + harpoon_mark.add_file() + end, { desc = '[A]dd [H]arpoon file' }) + + vim.keymap.set('n', 'hr', function() + harpoon_mark.rm_file() + end, { desc = '[R]emove [H]arpoon file' }) + + vim.keymap.set('n', 'hc', function() + harpoon_mark.clear_all() + end, { desc = '[C]lear [H]arpoon files' }) + + vim.keymap.set('n', 'hl', function() + harpoon_ui.nav_next() + end, { desc = 'Next [H]arpoon file' }) + + vim.keymap.set('n', 'hh', function() + harpoon_ui.nav_prev() + end, { desc = 'Previous [H]arpoon file' }) + + vim.keymap.set('n', '1', function() + harpoon_ui.nav_file(1) + end, { desc = 'Navigate to file [1]' }) + + vim.keymap.set('n', '2', function() + harpoon_ui.nav_file(2) + end, { desc = 'Navigate to file [2]' }) + + vim.keymap.set('n', '3', function() + harpoon_ui.nav_file(3) + end, { desc = 'Navigate to file [3]' }) + + vim.keymap.set('n', '4', function() + harpoon_ui.nav_file(4) + end, { desc = 'Navigate to file [4]' }) + + vim.keymap.set('n', '5', function() + harpoon_ui.nav_file(5) + end, { desc = 'Navigate to file [5]' }) + end +} diff --git a/lua/plugins/oil.lua b/lua/plugins/oil.lua index 52174176..fe5a871d 100644 --- a/lua/plugins/oil.lua +++ b/lua/plugins/oil.lua @@ -2,7 +2,7 @@ return { 'stevearc/oil.nvim', config = function() - require("oil").setup(); + require('oil').setup() vim.keymap.set('n', '-', 'Oil --float', { desc = 'Open current directory' }) end }; diff --git a/lua/plugins/whichkey.lua b/lua/plugins/whichkey.lua index 509fbd07..f0a90b20 100644 --- a/lua/plugins/whichkey.lua +++ b/lua/plugins/whichkey.lua @@ -7,6 +7,7 @@ return { 'folke/which-key.nvim', opts = {}, ['d'] = { name = '[D]ocument', _ = 'which_key_ignore' }, ['g'] = { name = '[G]it', _ = 'which_key_ignore' }, ['gh'] = { name = '[G]it [H]unk', _ = 'which_key_ignore' }, + ['h'] = { name = '[H]arpoon'}, ['r'] = { name = '[R]ename', _ = 'which_key_ignore' }, ['s'] = { name = '[S]earch', _ = 'which_key_ignore' }, ['w'] = { name = '[W]orkspace', _ = 'which_key_ignore' }, From b0863fc19d614652af4de454205b349361e265ac Mon Sep 17 00:00:00 2001 From: Nick Burt Date: Mon, 26 Feb 2024 01:59:48 -0600 Subject: [PATCH 12/12] update plenary package --- lazy-lock.json | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index f48886b9..664127b3 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,33 +1,33 @@ { "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, - "LuaSnip": { "branch": "master", "commit": "2dbef19461198630b3d7c39f414d09fb07d1fdd2" }, - "catppuccin": { "branch": "main", "commit": "c2034f7b549152e5cc757820426341ea5000bc7a" }, + "LuaSnip": { "branch": "master", "commit": "6a001360cea89df50f7c5cc8c7a75e6a21f1ef5c" }, + "catppuccin": { "branch": "main", "commit": "64dc309bc157779691be38bbfc5123584e0a4a85" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, - "fidget.nvim": { "branch": "main", "commit": "a3e1e79116ceb93d4c8c0ff432bf506b3213a24d" }, - "friendly-snippets": { "branch": "main", "commit": "b8fae73a479ae0a1c54f5c98fa687ae8a0addc53" }, - "gitsigns.nvim": { "branch": "main", "commit": "2c2463dbd82eddd7dbab881c3a62cfbfbe3c67ae" }, + "fidget.nvim": { "branch": "main", "commit": "7b9c383438a2e490e37d57b07ddeae3ab4f4cf69" }, + "friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" }, + "gitsigns.nvim": { "branch": "main", "commit": "d195f0c35ced5174d3ecce1c4c8ebb3b5bc23fa9" }, "harpoon": { "branch": "master", "commit": "ccae1b9bec717ae284906b0bf83d720e59d12b91" }, - "indent-blankline.nvim": { "branch": "master", "commit": "12e92044d313c54c438bd786d11684c88f6f78cd" }, - "lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" }, - "lualine.nvim": { "branch": "master", "commit": "7d131a8d3ba5016229e8a1d08bf8782acea98852" }, + "indent-blankline.nvim": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" }, + "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, + "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "0954d7730e749d606ddf8d7ae8846848be435d53" }, - "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, - "neodev.nvim": { "branch": "main", "commit": "0ee95ecefc8ea45898a0383364f736e098c8703f" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "9453e3d6cd2ca45d96e20f343e8f1b927364b630" }, + "mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" }, + "neodev.nvim": { "branch": "main", "commit": "ef351fae5df2559956398923c5d38c9b64e7d898" }, "nvim-autopairs": { "branch": "master", "commit": "096d0baecc34f6c5d8a6dd25851e9d5ad338209b" }, - "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" }, - "nvim-lspconfig": { "branch": "master", "commit": "d12140c5687a1186b95b3f42dbc6cc769df0cf0d" }, - "nvim-treesitter": { "branch": "master", "commit": "4fbf150a1621d52f17b099506e1a32f107079210" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "8edd5a6d96936bdff23333d3bc177481388839e5" }, - "oil.nvim": { "branch": "master", "commit": "bf753c3e3f8736939ad5597f92329dfe7b1df4f5" }, + "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, + "nvim-lspconfig": { "branch": "master", "commit": "84f2dd42efffa20d505ac44c78568d778ca7e0a1" }, + "nvim-treesitter": { "branch": "master", "commit": "ab818bf5a2ee21515ade9afcf428e98056b6197b" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" }, + "oil.nvim": { "branch": "master", "commit": "24027ed8d7f3ee5c38cfd713915e2e16d89e79b3" }, "plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" }, "rust.vim": { "branch": "master", "commit": "889b9a7515db477f4cb6808bef1769e53493c578" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, "telescope.nvim": { "branch": "0.1.x", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, - "todo-comments.nvim": { "branch": "main", "commit": "833d8dd8b07eeda37a09e99460f72a02616935cb" }, - "vim-fugitive": { "branch": "master", "commit": "e7bf502a6ae492f42a91d231864e25630286319b" }, + "todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" }, + "vim-fugitive": { "branch": "master", "commit": "46eaf8918b347906789df296143117774e827616" }, "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, "vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" }, "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },