Lem is the editor/IDE well-tuned for Common Lisp.
After installing lem, you can start developing in Common Lisp at once.
You can skip over writing tidy settings or installing many plugins as you do on Emacs.
If the installation fails
Please refer to the following issue lem-project#628
Screenshot
Requirement
- roswell
- ncurses
Platform
- Linux
- MacOS
- Windows
Play with Lem in the Docker
You can try Lem by running it in a docker container:
docker run --rm -ti -v `pwd`:/app 40ants/lem:latest
Installation with roswell
Please install roswell at first.
After that, please follow the steps bellow.
1. install lem by roswell
$ ros follow-dependency=t install lem-project/lem
2. add the PATH in the initialization file(such as ~/.bashrc)
export PATH=$PATH:~/.roswell/bin
Updating
$ ros update lem
Usage
$ lem <filename.lisp>
You can watch the screencast on Youtube.
Installation with sbcl
Please clone lem to a location where the path to asdf is accessible.
$ mkdir $HOME/common-lisp
$ cd $HOME/common-lisp
$ git clone --recursive https://github.com/lem-project/lem.git
You can start "lem" using the following command.
$ sbcl
* (ql:quickload :lem-ncurses)
* (lem:lem)
You can create the executable file of lem using the following command.
$ sbcl --eval '(ql:quickload :lem-ncurses)' --load build.lisp
Configuration
Lem loads ~/.lem/init.lisp
when starting up.
You can see an example here
fukamachi also published his init files on GitHub. https://github.com/fukamachi/.lem
Extensions and modes
- Pareto - A mode, complement to the Paredit. Makes Lisp code editing even more efficient!
SDL2 version
GUI version using SDL2 is also available
Electron version (Experiment)
Electron version is in the experimental stage.
If you try, please follow below steps.
$ node -v # check if your nodejs is 8.9.3LTS+.
v8.9.3
$ npm -v
5.5.1
$ npm install -g cxxxr/lem # install lem-electron
$ lem-electron # Electron version will start
How to develop lisp
See https://github.com/lem-project/lem/wiki/Lisp-Mode
How to hack on lem itself
See https://github.com/lem-project/lem/wiki/How-to-hack-on-lem-itself
If you have a questions, join the Discord.
Contributors
This project exists thanks to all the people who contribute. [Contribute].
Backers
Thank you to all our backers!
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]