CherryTree
Version: 0.35.3 Web: www.giuspen.com/cherrytree
If you're fond of storing notes as plain text files, you know that at some point the whole mess will force you either to migrate to a dedicated note-taking application, or to organise your files into some kind of structure, applying rules to file naming and where you put sub-folders. There is, however, an alternative: CherryTree.
A GTK text editor, CherryTree insists that you define nodes and sub-nodes in your data tree first; only after that do you populate those nodes with content. You can envision the CherryTree document as the root of a tree, and each of its nodes as a branch in that tree, with sub-nodes as sub-branches.
CherryTree supports rich text formatting, syntax highlighting, links, images and even simple tables. Of course, it isn’t as powerful as a fully featured word processor, but it doesn't have to be: it’s your internal tool for creating sophisticated data structures primarily for use on your desktop.
You can store your data either as a XML file or a SQLite database. The save dialog even lets you protect your file
“Your internal tool for creating sophisticated data structures.”
with a security password (the file will be encrypted) in any of the file formats.
There are many areas where CherryTree excels, but the two most notable are importing and searching. For example, you may already have text files that you want to put to order, or notes taken in other applications such as Tomboy or KeepNote. CherryTree will help you convert them into its more database-like format – just open the Import menu and count how many sources are supported!
After you’ve migrated the data, you can harness CherryTree’s advanced search capabilities. Once everything is stored as a single XML or SQLite file, you can easily find any word or sequence of characters, no matter where it occurs – even regular expressions are supported.
To install CherryTree, just look up the standard repository for your distribution; the application is quite well-known and is packaged for dozens of flavours of Linux.
If you decide to compile it from source, be ready to provide Python development packages, as CherryTree relies on some Python modules and its GTK2 bindings.