___ ___ ___ ___
/ /\ / /\ / /\ ___ ___ /__/\
/ /::\ / /:/_ / /::\ /__/\ / /\ | |::\
/ /:/\:\ / /:/ /\ / /:/\:\ \ \:\ / /:/ | |:|:\
/ /:/~/:/ / /:/ /:/_ / /:/ \:\ \ \:\ /__/::\ __|__|:|\:\
/__/:/ /:/___ /__/:/ /:/ /\ /__/:/ \__\:\ ___ \__\:\ \__\/\:\__ /__/::::| \:\
\ \:\/:::::/ \ \:\/:/ /:/ \ \:\ / /:/ /__/\ | |:| \ \:\/\ \ \:\~~\__\/
\ \::/~~~~ \ \::/ /:/ \ \:\ /:/ \ \:\| |:| \__\::/ \ \:\
\ \:\ \ \:\/:/ \ \:\/:/ \ \:\__|:| /__/:/ \ \:\
\ \:\ \ \::/ \ \::/ \__\::::/ \__\/ \ \:\
\__\/ \__\/ \__\/ ~~~~ \__\/
The flake provides the required Neovim nightly and custom Fennel fork:
nix run github:reo101/reovim
# or, from a checkout:
nix build .#reovim
nix run .#reovimThis config requires current Neovim nightly; it uses vim.pack,
vim.lsp.enable, vim.secure.trust, and internal vim._core.ui2 APIs.
It also requires reo101/Fennel, branch
feat/discard, which implements the #_ reader macro.
git clone --branch feat/discard https://github.com/reo101/Fennel ~/src/Fennel
make -C ~/src/Fennel install PREFIX="$HOME/.local"
export PATH="$HOME/.local/bin:$PATH"
git clone https://www.github.com/reo101/reovim ~/.config/reovim
NVIM_APPNAME=reovim nvim- First startup bootstraps
nfnl, the custom Fennel loader, and the plugin set. - To precompile everything manually, run
:NfnlCompileAll. - Optional tools: a
C/C++compiler for parsers,cargoforparinfer-rust, andfzf/rgfor Telescope. - Language servers are listed here.
Profile variants are exposed as passthroughs and top-level packages:
nix build .#reovim.full
nix build .#reovim.dev
nix build .#reovim.lite
nix build .#reovim.writinginit.lua- Entry point for Neovim.nfnl.fnl-nfnlcompile routing and output placementlua/- Tracked bootstrap Lua plus Nix build outputsbootstrap-nfnl.lua- compiled bootstrap copy offnl/bootstrap-nfnl.fnlfennel-loader.lua- compiled bootstrap copy offnl/fennel-loader.fnl
fnl/- Fennel config filesinitialize.fnl- main Fennel entrypoint after bootstrapbootstrap-nfnl.fnl- startup/bootstrap logicfennel-loader.fnl- custom Fennel and macro injectionpackages.fnl- plugin loading throughlze/vim.packpackages/specs.fnl- side-effect-free plugin spec discovery shared by runtime loading and lockfile syncsettings.fnl- globalvim.optand UI setupautocommands.fnl- global autocommands and navigation helpersdef-keymaps.fnl- nested keymap DSL wrapperrv-config/- plugin and feature modules grouped by domainmacros/- injected Fennel aliases and typed-fennel bootstrapfp/- local functional programming utilities and experiments
after/- ftplugins, filetype detection, and treesitter query overridesluasnippets/- LuaSnip snippetsnix/- flake module, lockfile builders, treesitter grammar packaging, and helper derivationsnvim-pack-lock.json- pinned plugin and grammar lockfile used by Nix
