Lem with LTK frontend and other additions

Discussion of Common Lisp
Post Reply
jessymilare
Posts: 1
Joined: Sat Jun 22, 2019 10:41 pm

Lem with LTK frontend and other additions

Post by jessymilare » Sat Jun 22, 2019 10:46 pm

One of the main limitations I've always felt in Emacs is its distance from Common Lisp language. Of course, Slime is great, yet I always thought an editor in CL would be much better: more flexible and faster (anyone else notes using extensions in Emacs is slow sometimes?)

I'm happy to test the editor Lem and see a strong alternative. Fast, light and extensible, although it's code is not anywhere near being as complete as Emacs, it does a nice job as a CL editor.

For that reason, I intend to work on some improvements and extensions to Lem:
  • Integration with Quicklisp. There seems to be a problem with QL when the system depends on `quicklisp` system, I'll try removing that dependency;
  • `auto-indent-mode` . Something along the lines of `aggressive-indent-mode`, but maybe more flexible and with per-package and per-ASDF system configurations. I already have one initial personal version in my PC, after cleaning and packing I will publish it;
  • `full-paredit-mode`. Current `lem-paredit-mode` is cool, but very small. I think the best way is to port the original `paredit-mode` from Emacs and work on top of it;
  • ASDF integration, open project files, manage package imports, exports readtable and symbol conflicts, code snippets;
  • LTK frontend. It's light, fast, stable, lispy and flexible. Some people might think Tk is ugly in Linux, but with non-default themes it looks very nice;
  • Support for emacs lisp code. Still unsure if the best is a code walker/translator (so we can edit and fix the code in CL) or fully support .el with new functions and macros (long term);
I also noted that the code needs some polishing and I suspect that the maintainers won't accept all changes so fast. One option is to create another project, a fork. Another, maybe, is to create a project that extends Lem packages, define hooks, redefine functions, etc. I don't know, maybe someone can share some thoughts.

My personal fork: https://github.com/jessymilare/lem

Jessica

vindarel
Posts: 4
Joined: Tue Sep 24, 2019 8:05 am

Re: Lem with LTK frontend and other additions

Post by vindarel » Tue Sep 24, 2019 8:15 am

Hello !

Those are all good plans :)

Did you see the IUP bindings though ? https://github.com/lispnik/iup/ IUP has many more widgets and is more developed, so it could be a good idea to use it.

Also I stumbled upon this once, hope this helps: https://sourceforge.net/p/clocc/hg/ci/d ... elisp.lisp
I wrote an ELisp compatibility layer which allowed me to run Emacs Calendar from CLISP (also a Common Lisp implementation). It should allow you to load Emacs Calculator in SBCL and run its code.
(https://stackoverflow.com/a/53950180/1506338).

Post Reply