No description
  • Lua 99.1%
  • Tree-sitter Query 0.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jeremie Fraeys 42c54bcc11
Some checks failed
Luacheck / luacheck (push) Has been cancelled
StyLua / stylua (push) Has been cancelled
chore: update lazy-lock.json
2026-09-24 07:35:10 -04:00
.github ci: fix stylua URL to use correct asset name 2026-02-08 15:20:33 -05:00
after/queries refactor(treesitter): migrate to nvim-treesitter v1.0 API, rework textobjects 2026-09-10 11:07:27 -04:00
ftplugin fix(yaml): disable textwidth to stop unwanted hard wraps 2026-09-24 07:34:55 -04:00
lua fix(refactoring): add missing async.nvim dependency 2026-09-24 07:35:07 -04:00
.gitignore refactor: reorganize config and simplify README 2026-02-08 14:48:48 -05:00
.luacheckrc refactor: core configuration cleanup 2026-03-23 20:32:26 -04:00
.stylua.toml chore(nvim): reinitialize with working config 2026-02-07 21:06:45 -05:00
init.lua refactor(config): OS-agnostic setup, streamline core options/mappings 2026-09-10 11:08:52 -04:00
lazy-lock.json chore: update lazy-lock.json 2026-09-24 07:35:10 -04:00
LICENSE.md chore(nvim): reinitialize with working config 2026-02-07 21:06:45 -05:00
README.md refactor(config): OS-agnostic setup, streamline core options/mappings 2026-09-10 11:08:52 -04:00

nvim

Personal Neovim configuration — built for ML/AI and backend development.

Install

git clone https://git.jfraeys.com/jfraeysd/nvim.git ~/.config/nvim
nvim  # lazy.nvim bootstraps and installs plugins on first launch

Requires Neovim 0.12+, git, ripgrep, fd, and node (for some LSP servers).

Stack

Area Plugin
Completion blink.cmp
LSP nvim-lspconfig + Mason
Syntax nvim-treesitter
Fuzzy finding snacks.nvim picker (ripgrep / fd)
File manager oil.nvim
File marks harpoon2
Terminal snacks.nvim terminal (<leader>ft)
Git signs/hunks gitsigns.nvim
Git TUI neogit
Git worktrees git-worktree.nvim
Formatting conform.nvim
Linting nvim-lint
Debugging nvim-dap
Testing neotest
Snippets LuaSnip
Text objects mini.ai + nvim-treesitter-textobjects
Surround mini.surround
Auto-pairs mini.pairs
Refactoring refactoring.nvim
Statusline lualine.nvim
Notifications snacks.nvim notifier
Keybind hints which-key.nvim
Diagnostics trouble.nvim
Markdown render-markdown.nvim
LaTeX vimtex
Python REPL iron.nvim
Jupyter jupytext.nvim
Databases vim-dadbod-ui
Venv venv-selector.nvim
AI assistant opencode.nvim
Theme (dark) monokai.nvim (monokai_pro)
Theme (light) solarized.nvim (neo)

Dark/light theme switches automatically with the OS (macOS + GNOME).

Languages

LSP, formatting, and linting pre-configured for:

Python · Go · Rust · C/C++ · Lua · Bash/Zsh · Julia · Zig · SQL · JSON · YAML · TOML · LaTeX · Markdown · HTML

Key mappings (non-obvious)

Key Action
<leader>ft Toggle floating terminal
<leader>lr LSP rename (floating input)
<leader>la LSP code action
<leader>sf Find files (git)
<leader>sG Live grep
<leader>sw Grep word under cursor
<C-h/j/k/l> Harpoon jump to mark 1–4
]m / [m Next / prev function
af / if Around / inside function (visual/operator)
ac / ic Around / inside class

Updates

nvim --headless "+Lazy! sync" +qa