From 53d6525db7f9cce4f2890afa18d21a814edce090 Mon Sep 17 00:00:00 2001 From: Geoff Cheshire Date: Sun, 10 May 2026 11:38:47 -0400 Subject: [PATCH] feat: setup unified config with vim.pack keymaps and hostname detection --- .gitignore | 2 +- init.lua | 22 ++++++++++- nvim-pack-lock.json | 91 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 nvim-pack-lock.json diff --git a/.gitignore b/.gitignore index a52bd495..3890fdb8 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,6 @@ spell/ # nvim-pack-lock.json in version control - see :help vim.pack-lockfile # For the official `nvim-lua/kickstart.nvim` git repository, we leave it ignored to avoid unneeded # merge conflicts. -nvim-pack-lock.json +# nvim-pack-lock.json .DS_Store diff --git a/init.lua b/init.lua index 5d29c72d..6535a56b 100644 --- a/init.lua +++ b/init.lua @@ -98,8 +98,14 @@ do vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' + -- [[ Machine Specific Setup ]] + local hostname = vim.uv.os_gethostname() + if hostname == 'vera' then + -- Vera specific settings + end + -- Set to true if you have a Nerd Font installed and selected in the terminal - vim.g.have_nerd_font = false + vim.g.have_nerd_font = true -- [[ Setting options ]] -- See `:help vim.o` @@ -266,6 +272,13 @@ do -- To update plugins, run -- :lua vim.pack.update() -- + -- For a more ergonomic workflow, we can map these to keybinds: + -- ps to fetch updates (Sync) + -- pi to see current status (Inspect) + -- In the update window, press `w` to apply changes and `q` to quit. + vim.keymap.set('n', 'ps', vim.pack.update, { desc = '[P]ackage [S]ync' }) + vim.keymap.set('n', 'pi', function() vim.pack.update(nil, { offline = true }) end, { desc = '[P]ackage [I]nspect' }) + -- -- -- Throughout the rest of the config there will be examples -- of how to install and configure plugins using `vim.pack`. @@ -396,6 +409,13 @@ do -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. vim.cmd.colorscheme 'tokyonight-night' + -- File explorer that lets you edit the filesystem like a buffer + vim.pack.add { gh 'stevearc/oil.nvim' } + require('oil').setup { + view_options = { show_hidden = true }, + } + vim.keymap.set('n', '-', 'Oil', { desc = 'Open parent directory' }) + -- Highlight todo, notes, etc in comments vim.pack.add { gh 'folke/todo-comments.nvim' } require('todo-comments').setup { signs = false } diff --git a/nvim-pack-lock.json b/nvim-pack-lock.json new file mode 100644 index 00000000..64830eab --- /dev/null +++ b/nvim-pack-lock.json @@ -0,0 +1,91 @@ +{ + "plugins": { + "LuaSnip": { + "rev": "642b0c595e11608b4c18219e93b88d7637af27bc", + "src": "https://github.com/L3MON4D3/LuaSnip", + "version": "2.0.0 - 3.0.0" + }, + "blink.cmp": { + "rev": "78336bc89ee5365633bcf754d93df01678b5c08f", + "src": "https://github.com/saghen/blink.cmp", + "version": "1.0.0 - 2.0.0" + }, + "conform.nvim": { + "rev": "dca1a190aa85f9065979ef35802fb77131911106", + "src": "https://github.com/stevearc/conform.nvim" + }, + "fidget.nvim": { + "rev": "889e2e96edef4e144965571d46f7a77bcc4d0ddf", + "src": "https://github.com/j-hui/fidget.nvim" + }, + "gitsigns.nvim": { + "rev": "dd3f588bacbeb041be6facf1742e42097f62165d", + "src": "https://github.com/lewis6991/gitsigns.nvim" + }, + "guess-indent.nvim": { + "rev": "84a4987ff36798c2fc1169cbaff67960aed9776f", + "src": "https://github.com/NMAC427/guess-indent.nvim" + }, + "mason-lspconfig.nvim": { + "rev": "51feb0ada33d18f3c5c71ffb46005dbf8b33bef4", + "src": "https://github.com/mason-org/mason-lspconfig.nvim" + }, + "mason-tool-installer.nvim": { + "rev": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc", + "src": "https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim" + }, + "mason.nvim": { + "rev": "e54f5bf5f12c560da31c17eee5b3e1bd369f3ff9", + "src": "https://github.com/mason-org/mason.nvim" + }, + "mini.nvim": { + "rev": "60b5aaac2f0465d67699702e76b9baebf52cb42f", + "src": "https://github.com/nvim-mini/mini.nvim" + }, + "nvim-lspconfig": { + "rev": "451d4ef9abd4f0f08e379ef0d55d1c391b6125a7", + "src": "https://github.com/neovim/nvim-lspconfig" + }, + "nvim-treesitter": { + "rev": "4916d6592ede8c07973490d9322f187e07dfefac", + "src": "https://github.com/nvim-treesitter/nvim-treesitter", + "version": "'main'" + }, + "nvim-web-devicons": { + "rev": "2795c26c916bb3c57dde308b82be51971fa92747", + "src": "https://github.com/nvim-tree/nvim-web-devicons" + }, + "oil.nvim": { + "rev": "0fcc83805ad11cf714a949c98c605ed717e0b83e", + "src": "https://github.com/stevearc/oil.nvim" + }, + "plenary.nvim": { + "rev": "74b06c6c75e4eeb3108ec01852001636d85a932b", + "src": "https://github.com/nvim-lua/plenary.nvim" + }, + "telescope-fzf-native.nvim": { + "rev": "b25b749b9db64d375d782094e2b9dce53ad53a40", + "src": "https://github.com/nvim-telescope/telescope-fzf-native.nvim" + }, + "telescope-ui-select.nvim": { + "rev": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2", + "src": "https://github.com/nvim-telescope/telescope-ui-select.nvim" + }, + "telescope.nvim": { + "rev": "f04ab730b8f9c6bf3f54a206d0dcddfd70c52d59", + "src": "https://github.com/nvim-telescope/telescope.nvim" + }, + "todo-comments.nvim": { + "rev": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668", + "src": "https://github.com/folke/todo-comments.nvim" + }, + "tokyonight.nvim": { + "rev": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6", + "src": "https://github.com/folke/tokyonight.nvim" + }, + "which-key.nvim": { + "rev": "3aab2147e74890957785941f0c1ad87d0a44c15a", + "src": "https://github.com/folke/which-key.nvim" + } + } +}