Comments re the ZettleKasten work

47 views
Skip to first unread message

Edward K. Ream

unread,
Feb 25, 2020, 10:10:18 AM2/25/20
to leo-editor
The following are only suggestions, based only on my examination of zettelkasten.leo.

Special node names

At present, the only "special" nodes (nodes starting with '@') in zettelkasten.leo are @rst and @path nodes. Imo, this is a dubious design. I would have expected to see @box and @note nodes (assuming that @box will actually be useful).

The principle is that special nodes should be descriptive, not "procedural". Note: within LeoDocs.leo @rst nodes are descriptive: they denote a tree that corresponds to an external (documentation) file. Within zettelkasten.leo, however, @rst and @path nodes could be called hacks. Yes, they do have a purpose, but only a behind-the-scenes purpose.

You might also want a higher-level grouping, say @zettelkasten, or @group, or @topic, or something else.

Commands

The @command nodes are a good start. However, they too are implementation oriented. Imo, @command new-note and @command new-box would be better.

The "no lock in" requirement can be fulfilled by import/export scripts, defined in other @command/@button nodes.

Summary

zettelkasten.leo is an excellent prototype. It shows your ideas well. Its simplicity will make making changes a snap.

Commands and headlines should be user-oriented, not implementation oriented. Just a tiny bit of work will be needed to support @box and @note.

Let me know if you disagree, or if I have misunderstood something.

Edward

Thomas Passin

unread,
Feb 25, 2020, 11:53:21 AM2/25/20
to leo-editor
I agree with just about everything.  I only used the @rst and @path because that was the easiest way I knew to export the thing into a tree of files.  They are not needed for anything else.  You mention @box and @note.  Are those directives that already exist in Leo, or were you contemplating new ones?  I thought about that too, but in the interests of getting something working quickly, I went with the @rst and @path.

Actually, I'd rather not use any directives at all, because they add visual clutter.  It seems to me that it would be very simple to write an exporter.  Any node that had children under it would automatically be an organizer node.  If it also had content, that content could be put into a new file under the subtree on disk.  If in the Leo outline you wanted to link to an organizer node, you could just insert its id and link to that the same as for any other node.

Attached is an example, basically the same zettelkasten I posted earlier but without directives in the headlines. I have also included an @setting command for jumping to a link and inserting a backlink.

Given that such an exporter would be very feasible, I now think there would be no need for any directives in the headlines.
zettel2.leo

Edward K. Ream

unread,
Feb 25, 2020, 2:35:57 PM2/25/20
to leo-editor
On Tue, Feb 25, 2020 at 10:53 AM Thomas Passin <tbp1...@gmail.com> wrote:

I agree with just about everything. 

Oh good :-)
You mention @box and @note.  Are those directives that already exist in Leo, or were you contemplating new ones? 

They would be new. And they need not be formal directives. They are just markers for the plugin and its users.  I chose @box and @note in preference to @kasten and @zettle :-)

Actually, I'd rather not use any directives at all, because they add visual clutter. 

Yes, that's perfectly reasonable, though I suppose you might want to mark off, somehow, the parts of the outline that contain notes and/or boxes.
It seems to me that it would be very simple to write an exporter.  Any node that had children under it would automatically be an organizer node.  If it also had content, that content could be put into a new file under the subtree on disk.  If in the Leo outline you wanted to link to an organizer node, you could just insert its id and link to that the same as for any other node.

Yes. Details don't matter much at this point.

Attached is an example, basically the same zettelkasten I posted earlier but without directives in the headlines. I have also included an @setting command for jumping to a link and inserting a backlink.

Looks good.

Given that such an exporter would be very feasible, I now think there would be no need for any directives in the headlines.

Alright then. Well done.

Edward
Reply all
Reply to author
Forward
0 new messages