index about blog microblog guestbook sitemap

Imatal CLI tool (Blaugust2026/5)

- puxped


In the Imatal post, I mentioned that I have a CLI tool to manage the entire system, so here is the explanation for that.

The tool was actually created for emacsnotes just before I made Imatal, it's written entirely in the Kotlin programming language and handles tasks such as HTML exporting, creating new notes from templates, getting statistics ... and that's about it.

For the export function it uses Pandoc for everything except Typst, for which it uses the first-party Typst CLI tool, and ItROFF, for which it uses my 'in-house' implementation (since that was created by me in the first place). Those handle the conversion of the actual document's content, but metadata (including the title) is parsed separately.

Now you might wonder: what do I need the HTML export for? And the answer to that is that I just like to have it. There is no real reason to have it since I won't be publishing my diary any time soon, it's just fun to see all of the notes fully rendered as proper HTML pages.

Anyway, I put metadata in my files such as- (I already wrote that didn't I... AND I'LL DO IT AGAIN) location, host machine, weather, mood, note tags, text editor, operating system, desktop environment and more. Though I only really put these in the "Notebook" category because these files are created and then never edited again, so all the others only get creation date, ID and maybe tags, continued_from or subject_created.

I also have CSS themes that I can put into the HTML exports with the css metadata field.

I thought about making it open-source, but since it was created for Imatal specifically, I don't think anyone could even use it without making modifications.

  • Compatibility lies at Java 8 because of the use of java.time as well as directory walking, and it is thus compatible with Windows XP, which I'm quite fond of
  • It's compatible with Windows 2000 if made to work on Java 6
  • before anyone asks: no LLMs were used for the development of the Imatal CLI tool
  • Last year I started working on a C++03 port that I could compile and run on old Windows natively, but I stopped working on that pretty quickly

Incoming posts:

  • "Why Org is better than Markdown"

Hmm it has already happened, I skipped 2 days... but it's fine. Also I got distracted, I wanted to make the post longer than this... but for the sake of getting it out there this shall suffice.


If you have any thoughts about this post, please send me an email or a webmention! Any feedback would be appreciated. (No one has written me an email regarding my site before so YOU CAN BE THE FIRST!!)