Org-mode syntax?

This is a purely theoretical idea (since it would involve rewriting almost everything), but I always wondered why we use markdown and not a more structured text format.

I feel emacs (the editor) and silverbullet have a lot in common in terms of moldability, but markdown has a lot of limitations. I personally put a lot of objects in yaml format like

name: "arrow equipment"
cost: 250
date: "2025-07-20"
notes: ""
regret: 0

which I aggregate over later.

I think one nice benefit (again, this is purerly theoretical) of org syntax is you can have all the metadata including timestamps in a drawer that is hidden, so the shown text is richer, but still stored as plaintext file.

The equivalent for the object above would be

The equivalent org would be

* Arrow Equipment Purchase
:PROPERTIES:
:COST: 250
:DATE: <2025-07-20>
:REGRET_LEVEL: 0
:NOTES: 
:END:

but it would be seamlessly inserted in the text instead of sticking out as a yaml text.
For what it’s worth I don’t use emacs at all but I do like more structured data formats which might include nesting and tag inheritance for free. Maybe “Emacs but online and works on phone” is what we need as a society? There are some apps that use org style syntax (Journelly: like tweeting but for your eyes only (in plain text)) but I need space lua and templates. Thoughts?

3 Likes

I think zef chose markdown, because it’s as prevalent as it gets for these kind of formats, which just isn’t true for emacs org mode.

Depending on how insane you are, it would be possible to make silverbullet work with org mode files. There are document editors, which would allow you to implement e.g. a codemirror editor, just like SB uses for markdown, for org mode files. You can also index all the data pretty easily, there is a document:index event which you could listen to, filter out the org mode docs and using the datastore set the relevant stuff in the database. Depending on how powerful you want it to be and how much you know about SB internals, this could be a one day project or a lifetime project.

(This library implements org for codemirror for example, don’t know how well tho)

2 Likes