emacs lisp mode, mailing list?

Elias MÃ¥rtenson lokedhs at gmail.com
Sat Jun 30 16:50:04 UTC 2018


On 30 June 2018 at 11:40, Vladimir Sedach <vsedach at gmail.com> wrote:

> > I'm currently working on a project where I am bringing Maxima to CLIM
> (I've
> > had some pretty good progress)
>
> Very cool!
>

Thank you. The source repository is here:
https://github.com/lokedhs/maxima-client
and I made a couple of videos showing what it looks like. Here is a
playlist:
https://www.youtube.com/watch?v=AvC82EjoPYU&list=PL6AQVVynH5Dg3Wwpk3zNT962GntKfssje


> > but one thing that has frustrated me is
> > that CLIM does not have a consistent concept of keyboard control.
> > I believe this comes from Genera. I wonder if it was designed at a time
> > where it was thought that mouse control would be the primary mechanism of
> > interaction.
>
> I have not looked at Genera sources. I have poked around TI Explorer
> source code, and it looks to me like there was no convention for
> handling keyboard input as commands in the MIT derived Lisp Machines.
> This is a hard problem that went without an obviously satisfactory
> solution for a very long time. I believe the keymap and keymap
> inheritance and nesting mechanisms in GNU Emacs is the best model
> available today. One of the neat things in GNU Emacs is which-key mode
> (https://github.com/justbur/emacs-which-key), which is like the
> modeline help for mouse commands in Genera, for keyboard shortcuts.


CLIM does have a concept of keyboard shortcuts. You can bind keys to
commands
in a way that is somewhat similar to Emacs. Also, the default editor
widget, Drei,
is modelled on Emacs, and uses keybindings in a very similar way.

Thus, it's definitely possible to build a keyboard-driven application in
CLIM, but you
have to do everything yourself. In CLIM, you work a lot with graphical
representation
of objects, and clicking on an object (for example, a form in the REPL, or a
subexpression in an equation in my Maxima client) will invoke various
operations
based on the current input context of the application.

Unfortunately CLIM has no provisions at all for keyboard navigation here.
If I want
to be able to select something using the keyboard, I have to build it all
myself.
What's even more surprising is that there isn't even a keybinding to
navigate
multiple text fields. You'd expect to be able to press Tab, but that will
just invoke
whatever that key is bound to in Drei.

People must have had one hand on the mouse more or less constantly while
working in Genera.

Regards,
Elias
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/pro/attachments/20180701/9f5397ff/attachment.html>


More information about the pro mailing list