CherryTree

Text Editors

Source i (link to git-repo or to original if based on someone elses unmodified work):

https://github.com/giuspen/cherrytree

16
Become a Fan
6.9

Available as/for:
Description:
A hierarchical note taking application, featuring rich text and syntax highlighting, storing data in a single xml or sqlite file.

FEATURES:
• rich text (foreground color, background color, bold, italic, underline, strikethrough, small, h1, h2, h3, subscript, superscript, monospace)
• syntax highlighting supporting several programming languages
• images handling: insertion in the text, edit (resize/rotate), save as png file
• embedded files handling: insertion in the text, save to disk
• multi-level lists handling (bulleted, numbered, to-do and switch between them, multiline with shift+enter)
• simple tables handling (cells with plain text), cut/copy/paste row, import/export as csv file
• codeboxes handling: boxes of plain text (optionally with syntax highlighting) into rich text, import/export as text file
• alignment of text, images, tables and codeboxes (left/center/right/fill)
• hyperlinks associated to text and images (links to webpages, links to nodes/nodes + anchors, links to files, links to folders)
• spell check (using pygtkspellcheck and pyenchant)
• intra application copy/paste: supported single images, single codeboxes, single tables and a compound selection of rich text, images, codeboxes and tables
• cross application copy/paste (tested with libreoffice and gmail): supported single images, single codeboxes, single tables and a compound selection of rich text, images, codeboxes and tables
• copying a list of files from the file manager and pasting in cherrytree will create a list of links to files, images are recognized and inserted in the text
• print & save as pdf file of a selection / node / node and subnodes / the whole tree
• export to html of a selection / node / node and subnodes / the whole tree
• export to plain text of a selection / node / node and subnodes / the whole tree
• toc generation for a node / node and subnodes / the whole tree, based on headers h1, h2 and h3
• find a node, find in selected node, find in selected node and subnodes, find in all nodes
• replace in nodes names, replace in selected node, replace in selected node and subnodes, replace in all nodes
• iteration of the latest find, iteration of the latest replace, iteration of the latest applied text formatting
• import from html file, import from folder of html files
• import from plain text file, import from folder of plain text files
• import from basket, cherrytree, epim html, gnote, keepnote, keynote, knowit, mempad, notecase, rednotebook, tomboy, treepad lite, tuxcards, zim
• export to cherrytree file of a selection / node / node and subnodes / the whole tree
• password protection (using http://www.7-zip.org/) - NOTE: while a cherrytree password protected document is opened, an unprotected copy is extracted to a temporary folder of the filesystem; this copy is removed when you close cherrytree
• tree nodes drag and drop

WRITTEN BY: Giuseppe Penone (aka giuspen)

SUPPORTED LANGUAGES:
• Armenian (Seda Stamboltsyan, up to date)
• Chinese Simplified (Channing Wong, up to date)
• Czech (Pavel Fric, up to date)
• Dutch (Patrick Vijgeboom, TO BE UPDATED)
• English (default)
• French (Klaus Becker, up to date)
• German (Frank Brungräber, up to date)
• Italian (Vincenzo Reale, up to date)
• Japanese (Piyo, up to date)
• Lithuanian (Zygis, up to date)
• Polish (Marcin Swierczynski, up to date)
• Portuguese Brazil (Vinicius Schmidt, up to date)
• Russian (Andriy Kovtun, up to date)
• Slovenian (Erik Lovrič, up to date)
• Spanish (Daniel MC, up to date)
• Turkish (Ferhat Aydin, TO BE UPDATED)
• Ukrainian (Andriy Kovtun, up to date)
Last changelog:

0.37.3

• bugfix: problem with sqlite storage (ctb, ctx), bold node name and plain text node
• for the document type XML (ctd, ctz) changed the generated XML to be pretty (indented)
• change to slightly larger 'small font' in formatted text


Ratings & Comments

45 Comments

LeeU6

I have been using CherryTree for quite a while now and it has proven to be much better than other note-taking applications I have tried using (although I see it here listed as a text editor, which it is not), the others do not even come close. I have several databases set up and finding notes, data, etc. has never been easier. I also have moved all my Firefox booksmarks to a separte CherryTree database and it has made life much easier, making FF use much less memory, as well as having a knowledge database for finding everything I need. Thanks for all your hard work!

giuspen

Many thanks for your kind feedback :)

conspiritech

Haven't really used it yet, but judging from the menus it's better than basket, and i've been looking for a basket replacement that doesn't requires 100 foreign libraries. I do get 'cherrytree stopped running unexpectedly' when I X it out, but that doesn't seem to affect anything, just an enlightenment exception without consequences.

p2kmgcl

I've just try the program and I've found it really usefull, but it would be wonderfull that you could choose some options web you export something to a html file, like including a stylesheet or choosing a personal font. Congratulations for your program

giuspen

I'm happy that you like cherrytree, thanks for congratulations. I agree that the export to html needs to be improved, but it requires a lot of free time that I don't have at the moment, in the short period I will be able only to ensure bugfixes and minor changes. Cheers.

tsujan

Hello, Do you have any plan to port this nice application to GK+-3.0?

giuspen

There's more than a plan, there's a branch named gtk3 in the mercurial repository. I was close to the solution but I got stuck on some functions that are available in pure gtk3 but not in the python bindings. I'm still wondering how to face the problem, it's also possible I'll try to port the app to pure C (this would take time but in the end I would be independent from the bindings and I would have a faster app).

CT-User

Can you add tag support

giuspen

between the node properties that you can edit there's already a place where you can write the tags you want. those tags will not appear in the node title but will be parsed when you search for a node name.

CT-User

I mean like in NoteCase Pro http://www.virtual-sky.com/images/screenshots/ncpro-2.8.3_tags.jpg

giuspen

Please describe exactly what you think is missing in cherrytree, I have no time to install and try notecase pro. Regards.

CT-User

I mean a tag cloud with the number of entries that use this tag

giuspen

ok got it, I'll do it. cheers.

tsujan

This isn't a bug report but just a minor feature request: When the user opens a CherryTree encrypted zipped file, the password dialog isn't focused by default, so that he/she first have to click on it and then enter the password. It would be nice if this dialog was focused whenever it appeared. If the code was in C, I could make a patch but I'm not good at python yet. Thanks.

giuspen

on my ubuntu machine the password dialog is always focused, and precisely the cursor inside of the text entry is. what distro and version are you running?

tsujan

That occurs in both Debian and Ubuntu, with or without Compiz. A way to produce a non-focused password dialog: 1. Set Cherrytree to always minimize into tray and run an instance of it in the tray; 2. Put an encrypted (zipped) CherryTree file on the desktop; 3. Open a window, for example Nautilus, so that it has focus on the same desktop; 4. Click on the zipped file. The result: the password dialog will have no focus. In C and for a widget "the_widget", I use: #ifdef GDK_WINDOWING_X11 static guint32 timestamp; #include <gdk/gdkx.h> #endif ................ ................ /* present the window to the user */ GdkWindow *window = gtk_widget_get_window (the_widget); #ifdef GDK_WINDOWING_X11 startup_timestamp = gdk_x11_get_server_time (window); gdk_x11_window_set_user_time (window, timestamp); #endif gtk_window_present (GTK_WINDOW (the_widget));

tsujan

Sorry, "startup_timestamp = gdk_x11_get_server_time (window);" sould be "timestamp = gdk_x11_get_server_time (window);"

tsujan

Ok, I made a patch which fixes that: http://dl.dropbox.com/u/7793460/patch.diff.gz

giuspen

your code is in the latest (mercurial) development version, thanks for the contribution.

tsujan

CherryTree can use more than 100MB of RAM after a while, although its file is only 200 KB. Is this normal? I don't know if the memory usage of its previous versions was the same.

giuspen

Thank you for the report I'll do some testing about this

giuspen

ok the problem seems related to the fact that the number of past saved states is actually infinite. every state for a node takes lot of space as the information is not differential. I will either add the preferences option to limit the number of saved states of a node to a certain number or embed a fixed limit myself in the code.

tsujan

That seems reasonable since the RAM usage grows with savings, as I found recently.

legion1978

Hi Nice app i was looking for something like this on Ubuntu. Is it possible to password protect CherryTree instances? I know these are only xml files.. but still. just a thought. thanx

giuspen

hello, password protection is in the TODO list, I will do something in future. regards.

Pling
0 Affiliates
Details
license
version 0.37.3
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 2

Other Text Editors:

klat
jori
last update date: 21 years ago

Score 5.0

ktexteditor-yankbuffer
metallman
last update date: 19 years ago

Score 5.0

CUTE
heiko
last update date: 21 years ago

Score 5.0

LogDay
Zarahk
last update date: 19 years ago

Score 5.0

katedataedit
pradu
last update date: 18 years ago

Score 5.0

ktexteditor-key-recorder
jo-link-noir
last update date: 10 years ago

Score 5.0



System Tags