Markdown and plaintext files is really perfect. I start writing without formating and then organize later.
Plaintext file is great to copy / paste snippet code (wich is more complicated with handwriting notes ).
Finally for mindmap, Dot graph [1] does job
[1]: https://en.wikipedia.org/wiki/DOT_(graph_description_languag...
I just started using vim wiki and it's been great - totally revolutionized my workflow! When I make my daily diary markdown file, I write down my TODO list from yesterday, and add one for today... then I jot down some notes as I write code or attend meetings (it's especially nice because I can pop into hyperlinked references easily). Everything I do now feels way more organized, efficient, etc.. 10/10 would recommend. Get started here: https://github.com/vimwiki/vimwiki