[vial-devel] Experiments in the land of Climacs

Brad Beveridge brad.beveridge at gmail.com
Mon Oct 30 03:21:47 UTC 2006


I  mentioned in an earlier email that I felt I needed to at least
investigate the possibility of using Climacs as the substrate for
Vial.
This weekend I have seriously investigated it.  Basically, something
of the order of 90% of things that Vial wants to do, Climacs also
wants to do.  So the good news is that there is a lot of potential for
reuse, things like buffer management, syntax highlighting, basic
editing commands, etc.  The bad news is that Climacs is big and will
take time to figure out, and converting it to use Vi style key
handling is a big issue.  Also, lots of Climacs assumes that it is in
a Clim environment.  This adds up to a huge task to take some of
Climacs and no Clim and make something work.
I prefer to develop incrementally, with small improvements.  With that
in mind here is my rough proposal for Vial's development.

1) Continue work on the current version of Vial until it has support
for Slime, which is my original and main goal.  This Vial will have
the following features/bugs:
 - not aiming for exact Vim replication.
 - core editing features only, fancy features (macros, visual mode,
correct syntax highlighting) are not implemented unless really
required
 - code is allowed to be somewhat ugly as this version is almost a
complete throw away
 - minor bugs will be tolerated as long as they are well known
 - The major feature that must be well coded is the Slime support, it
is potentially the only part that will be kept.
 - At this stage we have a good debugger, and an acceptable editor.

2) There is ongoing Climacs work to make the key handling more
general, so general that it will support Vi style modes.  Hopefully by
the time #1 is ready, this support will be part of Climacs.  At this
stage I will attempt to:
  - Integrate Vi style key handling and bindings into Climacs
  - Integrate Slime support into Climacs.
 - This will be Vial v2, I may stop here.

3) I'm largely a console guy, long term I would like to see a fancy
Vial running in a terminal.  This would be done by implementing an
Ncurses backend for McClim.

So, although I've spend much of the weekend trying to tease apart
Climacs, ultimately I think I will go with the "worse is better"
approach and continue with the code base I currently have.  The major
change in my thinking is that the current code base just became a
throw-away item, and what is acceptable for the editing features
dropped.  I think that Vial is currently almost an acceptable editor,
so I will now work on Slime support.

Cheers
Brad



More information about the Vial-devel mailing list