chore: nvim upgrades - #866
Conversation
|
You do not have enough credits to review this pull request. Please purchase more credits to continue. |
Summary of ChangesHello @shunkakinoki, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request focuses on enhancing the maintainability and structure of the Neovim configuration by reorganizing its Lua modules into a dedicated Highlights
Changelog
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
Mesa DescriptionTL;DRUpgraded Neovim and refactored its Lua configuration into a dedicated subdirectory. What changed?Neovim's Lua configuration has been reorganized and moved into a subdirectory, alongside general upgrades to Neovim and its associated configurations. Description generated by Mesa. Update settings |
|
Caution Review failedThe pull request is closed. 📝 WalkthroughSummary by CodeRabbit
WalkthroughThis PR reorganizes Neovim Lua module imports from flat names to a namespaced Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
✨ Finishing Touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request is a nice structural refactoring of your Neovim configuration, moving Lua modules into a config subdirectory. The changes are consistent across all modified files, including the tests. I have one suggestion to further simplify the configuration by removing some now-redundant code in init.lua as a result of these changes.
| home.file.".config/nvim/lua" = { | ||
| source = ./lua; | ||
| recursive = true; | ||
| force = true; | ||
| }; |
There was a problem hiding this comment.
By adding this home.file block, you're now explicitly managing the lua directory with home-manager, which is a good simplification.
This change makes some of the path manipulation logic in init.lua redundant. The code block from lines 20-27 in init.lua dynamically determines the path to the lua directory. Since ~/.config/nvim/lua is now a known location thanks to this change, that dynamic logic is no longer needed. The paths added on lines 16-18 are sufficient.
For a cleaner configuration, you could consider removing lines 20-27 from init.lua.
There was a problem hiding this comment.
Pull request overview
This PR upgrades the Neovim Home Manager setup by moving configuration into lua/config/* modules, updating init.lua/tests to use the config.* namespace, and ensuring the Lua module tree is deployed to ~/.config/nvim.
Changes:
- Update
init.luaand test specs torequire("config.*")modules. - Add new
lua/config/*modules for settings/plugins/LSP/UI/treesitter/telescope/terminal/etc. - Update Home Manager config to install the full
lua/directory under~/.config/nvim/lua.
Reviewed changes
Copilot reviewed 9 out of 20 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| home-manager/programs/neovim/tests/workspace_spec.lua | Update module path to config.workspace in tests. |
| home-manager/programs/neovim/tests/utils_spec.lua | Update module path to config.utils in tests. |
| home-manager/programs/neovim/tests/settings_spec.lua | Update module path to config.settings in tests. |
| home-manager/programs/neovim/tests/autocmds_spec.lua | Update module path to config.autocmds in tests. |
| home-manager/programs/neovim/tests/api/init_spec.lua | Update module path to config.settings in API init test. |
| home-manager/programs/neovim/lua/config/workspace.lua | Add workspace-specific autocmd + user command (needs idempotency/ft-scope fixes). |
| home-manager/programs/neovim/lua/config/utils.lua | Add utility helpers (buffer cycling, qf helpers, etc.). |
| home-manager/programs/neovim/lua/config/ui.lua | Add UI plugin setup (notify/lualine/nvim-tree/etc.). |
| home-manager/programs/neovim/lua/config/treesitter.lua | Add treesitter + related plugin setup. |
| home-manager/programs/neovim/lua/config/terminal.lua | Add toggleterm-based terminal management. |
| home-manager/programs/neovim/lua/config/telescope.lua | Add Telescope config + keymaps. |
| home-manager/programs/neovim/lua/config/settings.lua | Add core editor options and diagnostic configuration. |
| home-manager/programs/neovim/lua/config/plugins.lua | Add plugin install/setup via vim.pack.add. |
| home-manager/programs/neovim/lua/config/lsp.lua | Add LSP setup and LSP keymaps. |
| home-manager/programs/neovim/lua/config/keymaps.lua | Update utils import path to config.utils. |
| home-manager/programs/neovim/lua/config/completion.lua | Add nvim-cmp + Copilot completion configuration. |
| home-manager/programs/neovim/lua/config/autocmds.lua | Update utils import path to config.utils. |
| home-manager/programs/neovim/lua/config/ai.lua | Add sidekick/snacks/opencode configuration + keymaps. |
| home-manager/programs/neovim/init.lua | Switch module requires to config.*. |
| home-manager/programs/neovim/default.nix | Ensure ./lua is installed to ~/.config/nvim/lua. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary by cubic
Refactored Neovim config to use a config/ Lua namespace and updated all requires accordingly. Home Manager now syncs the lua/ directory to ~/.config/nvim for consistent module loading.
Written for commit de79918. Summary will update on new commits.