Support something like Djot (instead of Markdown) in the DB version

I’ve been using the non-DB version of Logseq with the Org-mode syntax (not markdown) for years now, and whilst there are parts of the Org syntax that are clearly outdated in a markdown-dominated world, there are (as I understand) many things it can do that markdown simply cannot.

One of these appears to be sub/superscript — something I make heavy use of.

Djot seems relatively close to a markdown superset and adds back all of the features that I think would be lost by moving to markdown-only in the DB version (in addition to several other goodies). There are some places where it’s not 100% compatible with markdown, but I think the added functionality would be more than worth it. Those incompatibilities are intentional choices that make parsing Djot trivial and linear-time; it could only improve Logseq’s performance.

I’m more than happy to write a Clojure Djot parser for Logseq (I love Clojure and writing parsers), but obviously it’s important to know if people are interested in this sort of thing first!

Check out https://djot.net/ and let me know what you think.

In my opinion, Markdown is often unacceptably inexpressive for note-taking, so I’d love to see Logseq’s new version support something better!

I’m always open to new ideas for markdown and similar. I’ve honestly never come across Djot.

It looks interesting but I can’t say for sure if it would be worth the switch for me until I have a play with it.

I love the way terminology of djot. I feel that it’s a great fit for logseq-db.

But doesn’t djot have the same problem with it as common markdown like flow of writing is hindered by the syntax

For example the inline references and inline footnote work so in some flavours of markdown it’s used like this

Here is an inline note. ^[Inlines notes are easier to write, since you don't have to pick an identifier and move down to type the note.]

in djot:

Here is an inline note.[^1]

[^1]: Inlines notes are easier to write, since you don't have to pick an identifier and move down to type the note.

While in org:

Here is an inline note.[fn::Inlines notes are easier to write, since you don't have to pick an identifier and move down to type the note.]

The org preserves the same continuity of flow of writing while djot doesn’t.

1 Like