diff options
| author | aktersnurra <gustaf@gustafrydholm.xyz> | 2026-04-17 23:34:22 +0200 |
|---|---|---|
| committer | aktersnurra <gustaf@gustafrydholm.xyz> | 2026-04-18 00:50:44 +0200 |
| commit | ac8edfb0db52efe65e01f73ef44133a86571ba02 (patch) | |
| tree | 928d8f0d5ce0520d5acf782c4fdfd452f8f8470f /README.md | |
| parent | 152fd9d787c7433cad95795992e444250cb83216 (diff) | |
More based fixes
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 67 |
1 files changed, 48 insertions, 19 deletions
@@ -1,41 +1,70 @@ # nvim -My neovim rice. +My neovim rice. Written in [Fennel](https://fennel-lang.org/) via +[Hotpot](https://github.com/rktjmp/hotpot.nvim). -# Dependencies +## Dependencies -``` -neovim = nightly -``` +- Neovim nightly (0.13+) +- [Cargo](https://rustup.rs/) (builds `fff.nvim` and `tree-sitter-cli`) -# Structure +## Structure ``` . +├── init.lua # Bootstrap Hotpot └── fnl - ├── plugins # Plugin configs. - │ └── lsp # LSP related configs. - └── settings # Neovim settings. + ├── config.fnl # Plugin loader (lazy.nvim) + ├── macros.fnlm # Compile-time Fennel macros + ├── plugins/ # Plugin specs + │ ├── lsp/ # LSP servers, diagnostics, keymaps + │ └── snippets/ # LuaSnip snippet files + └── settings/ # Options, keymaps, autocmds, terminal ``` -## Treesitter +## Hotpot -Install treesitter cli with if treesitter seems broken: +Hotpot compiles Fennel to Lua on the fly and caches the result. -```sh -cargo install tree-sitter-cli +**Macro files** must use the `.fnlm` extension and return a table of exported +macros. Consumers use `(import-macros {: name} :macros)`. + +### Sync after external edits + +Hotpot watches `BufWritePost` inside Neovim. Edits made outside Neovim +(terminal, CI, Claude Code) won't trigger recompilation. Run: + +```vim +:Hotpot sync ``` -## Vale +### Clear compiled cache -1. Create a `.vale.ini` file in the project -2. Run `vale sync` with the vale located in `mason/packages/vale` +If things get weird, nuke the cache: + +```vim +:Hotpot clear-cache +``` -## Clear lua Cache +Or from Fennel: -```fnl +```fennel (let [cache-api (require :hotpot.api.cache)] (cache-api.clear-cache)) ``` -Select and run `:Fnl` +## Treesitter + +Uses `nvim-treesitter` on the `main` branch (parser-only). Highlighting and +indentation use Neovim's built-in `vim.treesitter` APIs. + +Install the treesitter CLI if parser compilation fails: + +```sh +cargo install tree-sitter-cli +``` + +## fff.nvim + +Fuzzy finder built from source. If the build fails, make sure `cargo` is +available and up to date (`rustup update`). |