- Dec 2022
-
blog.dornea.nu blog.dornea.nu
-
Basically I wanted to merge every tiddler into one ORG file.
All this detailed manipulation re/decomposing tiddlers in other formats or adding tiddlers content in a programmatic way is done via TiddlyWikiPharo and inside a single language. For external functionality not implemented or too slow in Pharo (for example YAML to JSON conversion) we try to program it in Nim and create a Pharo wrapper around the Nim binary output.
-
David Alfonso has done a great job and put together a repository that helps you with the export of tiddlers. All you need is to export all your tiddlers bundled as one single HTML and then follow the instructions in the README.
TiddlyWikiPharo is capable of similar exportation and we start from the single HTML TW file that we can de/recompose almost at will, because we can manipulate the tiddlers inside a data narrative. As shown in the malleable systems wiki example, we're mostly focused in conversions from Markdown to WikiText (TW's format) as it is our most felt necessity, but migrations from WikiText to Markdown are in the radar, combining/extending TiddlyWikiPharo with Pandoc (future needs/funding will tell if/when is implemented).
-
While I initially started using just one single HTML file for my tiddlers, I soon switched over to the nodeJS installation. This still has better benefits like: you can run the instance in Docker install tiddlywiki and its dependencies without messing around with your system you’ll get multiple “flat” files (.tid files are in plain text) you can apply sed, awk, bash foo to extract/modify data even if Tiddlywiki will be discontinued some day, you’ll still be able to import your notes in whatever note-taking syntax
For this advantajes regarding flat files and their programmability, we are using our custom build package TiddlyWikiPharo which allows us to have the single file approach while not using NodeJS (so, keeping at bay its incidental complexity). Our flat files are STON files, serialized from the live representation of the tiddlers objects from the Smalltalk image to the filesystem.
And while is still possible to use Unix tools to extract/modify data over those plain files, we prefer to manipulate the tiddlers lively/directly inside the image, with all the advantages of a emergent DSL that give us to have the tidllers represented as a collection of live objects, as shown in the Malleable Systems Wiki data narrative. Also, instead of just plain text Unix scripts, we can build, share and publish complete interactive data narratives involving the import/export and manipulation of tiddlers (as the afore mentioned one).
-