What is CLedit for?

You may read CLedit as "Common Lisp editor". CLedit is an editor for freshly-baked Lisp novices. All it aims for is comfort and usability when exploring Lisp.  It is minimalistic and painless, but nevertheless offers some neat features for your first Lisp steps:

   - fully interactive 
graphical editor with usual copy/paste...
   - fully menu/mouse driven
   - fully interactive with your Lisp interpreter or compiler
   - automatic keyword highlighting
   - automatic parenthesis matcher
   - automatic Lisp-help with keyword completion/suggestions
   - a REPL command-line history
   - automatic parenthesis-completion for the REPL command-line
   - recompile/execute selected parts or whole code with one mouse-click
   - message history from the Lisp interpreter/compiler
   - remote/local access to the LispWorks HyperSpecs
   - multi-platform (32/64 bit, *nix, Linux, Mac OS, Windows, ...)


When or why CLedit?

After getting in touch with Common Lisp I quickly got tired of the usual *nix interfaces. Extremely powerful and capable, but a severe hurdle for newcomers by themselves. Hardcore "Lispers" will - and shall - prefer Emacs/SLIME e.g. for sure. But I was too lazy to learn this stuff. Instead of I spent a few hours to provide an CL-editor suited to my personal needs.


Basic usage

At the very first start CLedit comes up with default settings. Mostly you will want to change window sizes or positions e.g. Do this according to your needs. Next time starting CLedit will respect your actual settings.

When CLedit was started from the command line, different Lisp's may behave different in case of debugging/errors. E.g. SBCL would need input via command line too then, CLISP not. To eliminate these subtle differences, start CLedit from your GUI only! All things - including debugging - can be handled fully within CLedit then. This also hinders ghost processes to occure, when sutting down CLedit or killing running processes.

CLedit interacts with Lisp. So choose your Lisp executable first and start it up. What Lisp is telling then, you can watch in the "Messages" window.

Entering a command in the CMD-line and pressing return will execute it. Though looking like a one-liner you may paste in here code of any length. Missing right parenthesis are added automatically here.

For whole programs the main editor is more convenient however. Enter your code here, paste it or load it via "File/Open". Other than in the CMD-line nothing is compiled automatically here. Via "Exec all" you can - nomen est omen - compile/execute the whole code. Alternatively you can mark any piece of code and execute this solely via "Exec selection" from the menu or a right mouse-click.


Lisp keyword help

Help to a specific Lisp command you get via the HLP-editor. Type in the first few letters and choose a topic/command via keyword-completion. The "Message" window will show you syntax and meaning then. For this a Lisp executable must have been started however.


Syntax highlighting

When loading a Lisp-file into CLedit keyword/symbol highlighting is applied automatically. The approach for this is most simple and straightforward - and hence not perfect. But nearly. My guess: some 99.8% out of the ~1500 recognized Lisp-keywords will work out of the box. When you are a perfectionist, feel free to add/change the default rules:-)  The code is short and well commented.



Demo examples

For a quick tryout you may check the example programs. Load one, set an appropriate CL-executable like "sbcl" or "clisp", start it and go. The latter means nothing else but clicking the "Execute all" button in the toolbar. Then you may edit the
example and/or re-run it as a whole again. Or just recompile/execute a text/code selections made via mouse. Or play with the REPL-command-line, ....

When you want to try out Lisp shell-scrips, look at the *.sh files. They provide everything for a quick start.


License

CLedit may be used under the terms of the GNU General Public License version 3 or later as published by the Free Software Foundation and appearing in the file
license.gpl included in this package.

This program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

(C) 2010 Heinz van Saanen