- Remove macOS/Windows clipboard branches, homebrew fzf path from .vimrc
- Remove is_macos/is_windows logic from wezterm.lua
- Drop scripts/nvim-offline-* and NVIM_OFFLINE plumbing from nvim config
- Clean macOS section from .gitignore; simplify .gitattributes to LF-only
- Trim README of offline-bundle section
Issues found when running the prepare script:
1. nvim-treesitter's main branch has a breaking rewrite that removed
the configs module, ensure_installed, and auto_install. Pin to the
master branch which has the stable API the config depends on.
2. Second Lazy sync caused mason-nvim-dap "Package is already
installing" conflicts. Removed — one sync is sufficient.
3. TSInstallSync command no longer exists in new treesitter. Removed
the step entirely — parsers are already compiled during Lazy sync
via the :TSUpdate build step and ensure_installed.
4. Mason async installs (mason-nvim-dap) were aborted when nvim quit.
Added a polling wait on the Mason registry so nvim stays alive
until all async package installs complete.
5. Removed unnecessary vim.wait(5000) before MasonToolsInstallSync.
6. Collapsed from 4 steps to 3. Added treesitter parser count to the
summary output.
https://claude.ai/code/session_01J1XAGFnocxQ1cfoaRZceGA
When NVIM_OFFLINE=1 is set, all network-dependent operations are disabled:
- lazy.nvim update checker and git timeouts
- Mason ensure_installed for LSP servers and tools
- Treesitter auto_install for parsers
- mason-nvim-dap automatic_installation for debug adapters
Includes two scripts for the offline workflow:
- scripts/nvim-offline-prepare.sh: run on a machine with internet to
pre-download all plugins, Mason packages, and Treesitter parsers
- scripts/nvim-offline-install.sh: deploy the bundle on the proxy machine
Also increases nvim-tree git timeout to 2s for proxy resilience.
https://claude.ai/code/session_01J1XAGFnocxQ1cfoaRZceGA
- lualine: change default theme from 'nord' to 'auto' to match kanagawa
- noice: remove cmp.entry.get_documentation override (for nvim-cmp, not blink.cmp)
- telescope: move live_grep and git_files into pickers where they belong,
move path_display into defaults so it actually takes effect
- Remove empty after/lsp directory (svelte.lua was the only file)
https://claude.ai/code/session_01CZ49E2kHN3z3B8BaymxJJC
Two fixes:
- Add automatic_enable.exclude for rust_analyzer so mason-lspconfig
doesn't auto-start it alongside rustaceanvim's instance
- Remove duplicate emmet_ls (emmet_language_server is the newer
replacement and was already listed)
https://claude.ai/code/session_013d8HpzpE7xdxSGD1ErgoMG
rustaceanvim already manages its own rust-analyzer LSP instance.
Having rust_analyzer in mason-lspconfig's ensure_installed caused a
second instance to auto-attach, resulting in doubled inlay hints
(e.g. "id: id: 6", "ProductStore: ProductStore").
https://claude.ai/code/session_013d8HpzpE7xdxSGD1ErgoMG