Lem

Lem is a text editor written in Common Lisp. It's supposed to be a "clone" of Emacs, but Lem does not have all the features and modes that Emacs does (as of 2024).

Benefits of Common Lisp over Emacs Lisp

Hacking

Setting up a development environment

Lem debugee:

M-x start-lisp-repl CL-USER> (micros:create-server :dont-close t)

Emacs or Lem development environment:

M-x slime-connect

Running test cases

lisp (ql:quickload '(:lem-vi-mode/tests)) (rove:run-suite :lem-vi-mode/tests/operator) (rove:run :lem-vi-mode/tests)

Print Debugging

lisp (lem-core::log-message format-string arguments) ;; Syntax is slightly different from format (lem-core::log-message "~A~%" (list "Hello World!"))

Bugs I need to report

cc does not enter insert mode on trailing newline

In the following situation, the cc command does not enter insert mode. The brackets represent the cursor.

abc []


Created .

Home > Q Science > QA Mathematics Computer science > Lem