altermo/nelisp
Emacs LISP interpreter inside Neovim
{ "createdAt": "2024-10-14T15:03:07Z", "defaultBranch": "main", "description": "Emacs LISP interpreter inside Neovim", "fullName": "altermo/nelisp", "homepage": "", "language": "C", "name": "nelisp", "pushedAt": "2026-01-06T22:24:57Z", "stargazersCount": 46, "topics": [], "updatedAt": "2026-04-06T18:40:41Z", "url": "https://github.com/altermo/nelisp"}Nelisp
Section titled “Nelisp”The Neovim Emacs LISP interpreter.
[!NOTE] This is a work in progress.
-- Remember to run `make` once.
-- The `nelisp.c` module is a wrapper around `nelisp.so` using `package.loadlib`.-- Run `make` to generate a meta file for completions.local c = require'nelisp.c'
-- Emacs doesn't really give this path a name, so I call it emacs's runtime path.-- It is the parent directory of the `data-directory` and the parent directory of root load path.-- Typically, either `/usr/share/emacs/30.1/`(or local variant) or the git repo's root.c.init({runtime_path = EMACS_RUNTIME_PATH})
c.eval[[(message "Hello World!")]]- Being able to run emacs plugins such as magit and org-mode
- Performant(fast) loading of elisp-stdlib (100-200ms)
Roadmap
Section titled “Roadmap”- Rewrite in C (old-lua-branch)
- Implement all functions(/other features) to be able to load all of
loadup.elwithout errors - Implement dumping
- Implement a bridge between nelisp and neovim
- Implement the rest of the functions(/other features); make all emacs test pass