Blocked by
Convert the Vimscript config to pure Lua. Mostly mechanical translation. Done last so previous phases stabilize first.
Depends on: Phases 3, 4, 5, 6.
Target structure
home/.config/nvim/
init.lua
lua/
options.lua -- everything that was `set xxx`
keymaps.lua -- everything that was map/nnoremap/etc.
autocmds.lua -- everything that was autocmd
plugins.lua -- lazy.nvim spec (moved from Phase 3)
lsp.lua -- LSP config (moved from Phase 4)
after/
ftplugin/
markdown.lua -- replaces inline `au BufRead *.md` blocks
gitcommit.lua -- replaces inline gitcommit autocmd
ruby.lua -- replaces the `*.axlsx`, `*.yml.enc*` filetype autocmds
dockerfile.lua -- replaces `Dockerfile*` autocmd
Translation pattern
set xxx=val → vim.opt.xxx = val
map/nnoremap/etc. → vim.keymap.set('n', lhs, rhs, opts)
autocmd Event Pattern cmd → vim.api.nvim_create_autocmd('Event', {...})
let g:foo = bar → vim.g.foo = bar
Filetype reorganization
Move filetype-specific behavior out of init.vim's big au BufRead,BufNewFile *.md ... blocks into proper after/ftplugin/<lang>.lua files — Neovim auto-loads these when the matching filetype is detected, which is cleaner than scattered autocmds.
Cleanup
- Delete
home/.config/nvim/init.vim
- Verify nothing else in the repo references
init.vim
Acceptance
Blocked by
Convert the Vimscript config to pure Lua. Mostly mechanical translation. Done last so previous phases stabilize first.
Depends on: Phases 3, 4, 5, 6.
Target structure
Translation pattern
set xxx=val→vim.opt.xxx = valmap/nnoremap/etc. →vim.keymap.set('n', lhs, rhs, opts)autocmd Event Pattern cmd→vim.api.nvim_create_autocmd('Event', {...})let g:foo = bar→vim.g.foo = barFiletype reorganization
Move filetype-specific behavior out of
init.vim's bigau BufRead,BufNewFile *.md ...blocks into properafter/ftplugin/<lang>.luafiles — Neovim auto-loads these when the matching filetype is detected, which is cleaner than scattered autocmds.Cleanup
home/.config/nvim/init.viminit.vimAcceptance
home/.config/nvim/init.vimno longer exists:checkhealthreports green across the boardafter/ftplugin/