pyzo chronicles: more problems

35 views
Skip to first unread message

Edward K. Ream

unread,
Aug 4, 2019, 2:24:05 PM8/4/19
to leo-editor
More design problems are arising with pyzo:

1. No minibuffer

Perhaps the shell or logger tool panes could be pressed into service, but that would be quite a hack. In contrast, both vim and emacs have standard ways of executing commands by name.  This is essential for Leo.

2. Settings

Pyzo has nothing remotely like Leo's huge array of settings. Emacs has extensive settings machinery, including ways of specifying mode-specific bindings.  Not sure about vim.

It's probably not good enough to have Leo's bridge read settings.  There must be a way of changing key bindings in pyzo using the bridge's settings.

3. Menus

It would be fairly straightforward to patch pyzo's settings with those in Leo's bridge, but this doesn't look like something anyone would want to see.

Summary

I'm going to sleep on these problems for a day or three.  It's not clear whether these problems apply to org mode or vimoutline.

Edward

Edward K. Ream

unread,
Aug 5, 2019, 3:21:20 AM8/5/19
to leo-editor
On Sunday, August 4, 2019 at 1:24:05 PM UTC-5, Edward K. Ream wrote:

I'm going to sleep on these problems for a day or three.  It's not clear whether these problems apply to org mode or vimoutline.

The original Aha still stands: there is no need to transliterate gobs of Leo's python code into elisp or vimscript.

Alas, the Aha isn't nearly so "momentous" as I first thought. Embedding Leo into another program likely will founder for design reasons, regardless of code tricks.

I have abandoned, for now, the idea of embedding Leo into pyzo.  Imo, pyzo isn't a good fit for Leo.

Instead, I have begun work on using pyzo's features in Leo.  The pyzo branch contains a copy of all of pyzo's sources in leo/external/pyzo.  The following .bat file runs pyzo properly:

    python <path to>\leo\external\pyzo\__main__.py %*

This shows that there are no gotchas involved in "relocating" the pyzo sources.  The interesting part will be to import only the needed parts of pyzo from leo/external/pyzo, without loading pyzo's main window.

Edward
Reply all
Reply to author
Forward
0 new messages