Welcome to my personal blog!

I am doing software development in many areas, with my main fields of experience being cross-platform software (C++/Qt), Android apps (native), Linux & DevOps (Bash/Python/Ruby, Docker, ...).

Open Source is one of my passions -- I am a developer and maintainer of many open projects and regularly start contributing to additional ones. Support me on my mission! My other favourite activities include photography and being outdoor as much as possible. I am too volunteering at the local fire department. I went to school at HTL Braunau (Electronics / Software Engineering & Mobile Computing), studied at FH Hagenberg (Mobile Computing) and work currently at Felgo.

Markor v2.6 update is out! Get the update from F-Droid, Google Play or GitHub!
Continue reading to find out what’s new, improved and fixed in this update.


Zim Wiki improved

Zim Wiki was introduced in the previous update Markor v2.5.
This update includes many quality improvements and additions for Zim Wiki:

  • Editor: Support Table of contents (top menu)
  • Simplify Zim format detection
  • Add more text actions (links, images, checkbox, ..)
  • Support file generation on Android<7/Java=6

If you don’t know how the Zim format & syntax works, Markor also includes a reference template
that gives you an overview. It is available from the + (New file) dialog in the app or from GitHub.


Newline = new paragraph

By Markdown (more precise - CommonMark) specification, new lines only start a new paragraph when you end the line with two spaces (in the View Mode & exports). You might prefer to always start new lines. For this case there is a new settings option - with it enabled new lines also start a new paragraph.

You can enable this opt-in settings option in the Markdown section.

Per-file settings: Remember selected Format

Per-file settings were introduced in the previous update Markor v2.5.

With this update, Format selection has been reworked. The selected Format is now remembered and restored for each file and was moved to the File settings submenu at the top menu. The current selected Format is now highlighted.

More information


Notice: Development changelog is always available from GitHub. See the history for code changes.

  • Markdown: Add settings option for newlines to start new paragraphs, #1260 by @gsantner
  • Editor/Viewer: Remember last used file format, show current selected format, #1226 by @harshad1
  • Editor/Viewer: Back arrow (top menu) finish activity, #1165 by @gsantner
  • Editor: Per-file option to enable/disable syntax highlighting, #1168 by @harshad1
  • Share-Into: Add launcher, #1184 by @gsantner
  • Markdown: Apply Markor Table of Content config for custom [TOC]: # too, #1189 by @gsantner
  • Editor: Improve writing to sdcard, #1192 by @gsantner
  • Zim: Support file generation on Android<7/Java=6, #1194 by @gsantner
  • Zim: Editor: Support Table of contents (top menu), #1186 by @fredericjacob
  • Markdown: Math/KaTex: Improve \ line breaks usage, #1196 by @radanovicnik
  • ShareInto: Add space after formatted link - messengers then show correct link preview, by @gsantner
  • Markdown: Add break page example to Markdown reference, by @gsantner
  • Editor: Prevent Android accessibility & autofill to produce errors, #1204 by @harshad1
  • Main page: Reduce friction when app was running in background for a while, #1210 by @harshad1
  • Search: Add input field to filter search results, #1222 by @harshad1
  • Markdown: Don’t start new list item when reaching file end and toggling, #1213 by @harshad1
  • Zim: Simplify Zim format detection, #1227 by @gsantner
  • Zim: Add more text actions (links, images, checkbox, ..), #1195 by @fredericjacob
  • All formats: Date/Time dialog don’t add entry twice to history, #1229 by @harshad1
  • Editor/Viewer: Increase scrollbar width, #1241 by @harshad1
  • File browser: File move start from current folder, #1234 by @harshad1
  • Editor/Viwer: Add file info option (document top menu), #1233 by @harshad1
  • Viewer: Privacy: Opt-out of Android WebView’s internal metrics, #1181 by @gsantner
  • Markdown: Support Notable’s special home brewed syntax for attachments, #1252 by @gsantner
  • Dependencies: Add source code of colorpicker and build subproject, by @gsantner
  • Optimize image assets, by @gsantner
  • DevOps: Improvements to GitHub Actions CI/CD configuration, by @gsantner
  • Improve encryption wording & usage, #1171 #1179 by @opensource21

Read more

Markor v2.5 update is out! Get the update from F-Droid, Google Play or GitHub!
Continue reading to find out what’s new, improved and fixed in this update.


New format: Zim Wiki

The Markor community has been asking for Zim & Wiki Text support a long time, now it is available at Markor. It is implemented at full glance including syntax highlighting (edit mode), text actions & converter (view mode).

If you don’t know how the Zim format & syntax works, Markor also includes a reference template
that gives you an overview. It is available from the + (New file) dialog in the app or from GitHub.

How does it look like?



What is available?

Most features that the Zim syntax offers are available from the beginning for everything at Markor.
So beside Markdown you can now also use Zim for taking notes, keeping journals, organize your tasks and more.

CategoryActions, Highlighting, View
ListOrdered (1./a.), Unordered (* ), Tasks/Checkboxes (☑️)
Text StyleBold, Italic, Underline, Striketrough, Superscript, Subscript
ColorMarked (Highlighted), Foreground, Background
SpecialHeadings 1-5, Code (inline & block)
ReferencesWeb links, Files & Wiki entries, Images

Notice: This is the first version of Markor with Zim support. Improvements, potentials fixes & more features to come!

What is Zim?

Zim is a graphical text editor used to maintain a collection of wiki pages. Each page can contain links to other pages, simple formatting and images. Pages are stored in a folder structure, like in an outliner, and can have attachments. Creating a new page is as easy as linking to a nonexistent page. All data is stored in plain text files with wiki formatting.


Zim can be used to:

  • Keep an archive of notes
  • Keep a daily or weekly journal
  • Take notes during meetings or lectures
  • Organize task lists
  • Draft blog entries and emails
  • Do brainstorming

Zim handles several types of markup, like headings, bullet lists and of course bold, italic and highlighted. This markup is saved as wiki text so you can easily edit it with other editors.

Source: zim-wiki.org, December 2020

Search & Replace - Simple or Regex

Text replace functionality was added to Markor - for both simple and advanced use cases.

  • You can do simple text replacements ( text a -> text b )
  • You can do Regex replacements ( .*http.* -> Link removed)
  • You can do Replace (1) (next occurrence from current cursor position)
  • You can Replace all (all occurrences in the current file)
  • You can view the amount of matches - count specific words, characters & more (optionally with regex)

How to replace?

  1. Open a file & use the Search button in the toolbar (🔍)
  2. Open the Replace popup via Search / Replace
  3. Enter search text & the replacement, check regex/multiline as needed
  4. Use Replace (1) or all to execute the replacement

How does it look like?



Tooling changes

Android SDK & supported devices

Markor is now built with Android SDK 29, minimum required by Google Play.
Markors minimum supported Android version remains unchanged - „Android Jelly Bean 4.1 (API16)“.

Continuous Integration & Delivery

The project switched to GitHub Actions for CI/CD as it integrates best with GitHub
& there are no relevant restrictions for Open Source projects currently.

Benefits for users

The switch not only comes with benefits for developers, but also users.
Download & install development builds of Markor from the GitHub Actions artifacts now.
You can install the test app (👁️Mordor) beside Markor.

This means you can see in-development features & try them before any update is released.
Not only builds of merged changes are available for download, but also from upcoming changes of not-yet-merged pull requests.
Open a build to download apk, build & test logs, apk info & more..

Per file settings

Some file specific options were added to the editor toolbar menu.
The global settings are still used as long you don’t toggle/change any setting in a file.

You can find the File-Settings in the top toolbar, given you have a file open.

It currently includes:

  • File format (Plaintext / Key-Value / Markdown / todo.txt / Zim Wiki)
  • Enable/Disable line wrapping
  • Enable/Disable syntax highlighting

New color schemes & templates

  • Nord editor color scheme was added
  • Zim Wiki related templates/samples were added
  • Zettelkasten template/sample was added

Project community

Markor gets a lot of new features, improvements and fixes with every update.
This time especially due the hard work of Harshad Srinivasan, Frederic Jacob, Peter Schwede, Gregor Santner & more.
Thank you very much!

More information


Notice: Development changelog is always available from GitHub. See the history for code changes.

  • Add Zim Wiki format and template #1098
  • Add search & replace (simple|regex, replace once|all) #1112
  • Add settings for current file to toolbar #1129
  • Fix file sometimes not opens from launcher shortcut #1139
  • Use GitHub Actions for CI/CD #1151
  • Add template for Zettelkasten #1156
  • Add Nord editor color scheme #1134
  • Allow to select folder when create new file via share into Markor #1138
  • Improve license dialog readability #1119
  • General improvements, fixes and translations

Read more

Notice: Martin Pitt is the author of this article. It was first published on his blog in September 2020. ‘I’ refers to the original author.

Note keeping & tools

Being a paper hater, I have kept all my work and private notes in digital form pretty much forever. The tools have changed over the times of course, but I’m really happy with my current system now.

I am a strong proponent of plain-text formats for just about everything, due to being simple, efficient, universal, implemementation/tool agnostic, and effectively trackable in revision control. I spend my entire work life as a software developer in vim and mutt, so it’s just straightforward to do the same for notes and TODO lists.

Two years ago I started to use org mode for my notes/TODOs, with vim-orgmode on the PC, Orgzly on the phone, and Syncthing for syncing the files between my laptop, server, and phone. It works well enough, but I find the org syntax a bit unwieldy and especially hard to type on a phone. I use Markdown for everything else, like software development, scientific and computer papers, and general documents (with pandoc).

So a few months ago I looked for an org replacment, and quickly found the FOSS Android App Markor, which is just amazing. It beautifully renders and efficiently edits Markdown, todo.txt, simple plaintext, and a other formats. For vim there’s of course plenty of Markdown plugins, I use vim-markdown.

Thus I can easily edit some ~/Documents/notes/demo.md file with vim on the laptop, a few seconds later Syncthing did its magic, and Markor renders it on the phone, including an autogenerated table of contents:

Vim Markdown | Markor Markdown

Markor also has a lot of shortcuts and templates for comfortably editing Markdown on the phone – as I often do when I’m not at home.

So then I converted my org notes to Markdown and never felt like going back.

Task Management

For task management, I moved to todo.txt, a well-structured and reasonably powerful, yet simple line based text format. todo.txt-vim makes editing these a joy on the laptop, and Markor has excellent support for it as well:

Vim todo.txt | Markor todo.txt

Getting Things Done Method

I started using the Getting Things Done method at the same time, and it has been wildly successful for me. I use:

  • Markor’s QuickEdit.md as scratch pad/inbox,
  • the “next” lists go into todo.txt using priorities: A (today), B (next days), C (this week),
  • the “waiting” list is also part of my todo.txt, I use priority ‘W’ for that,
  • likewise the “someday” list goes into todo.txt with priority ‘Z’,
  • notes, extra material, and future (blocked) todo items go into projects.md, using the +ProjectName tags as headings.

I do my weekly review every Friday afternoon, at work EOD.

Finally I have some helper shell aliases for conveniently accessing my notes and TODOs:

alias notes='(cd ~/Documents/notes; vim .)'
alias todo='(cd ~/Documents/notes; vim todo.txt)'

The cd is because I often need to open more than one file, e.g. projects.md when I edit todo.txt.

Read more