Herbivore ============= Herbivore is a neovim plugin that allows you to write your config entirely in fennel; compiling it AOT to lua. Quickstart ============== You add it to your config with your plugin manager of choice ```````````````````````````````````````````````````````````````````````````````````````````````````` vim.pack.add({ { src = "https://codeberg.org/koldinium/herbivore.nvim.git", name = "herbivore" } }) ```````````````````````````````````````````````````````````````````````````````````````````````````` That's it. Nothing else. Everything else happens auto-magically. Oh and you've got to make you have fennel in your PATH, everything else happens auto-magically. Usage ========= On startup, herbivore looks through fnl/ folder of your config and compiles any .fnl files to the lua/ folder. It only triggers a compilation if the output lua file is older than the input fnl file, so it only compiles when it's needed. Similarly any .fnl files in fnl-foo will be compiled into lua files in foo, allowing you to write things like ftplugins in fnl as well. Any macro-modules placed in the macros/ folder of your config will be available for import everywhere else in your config. You can choose not to include the lua parts of your config in version control, as long as herbivore is in the runtime path it'll regenerate them from the fennel parts. Really the only piece of lua you need is the init.lua.