cherrytree
| A hierarchical note taking application, featuring rich text and syntax highlighting, storing data in a single xml or sqlite file. Written by Giuseppe Penone (aka giuspen). The following languages are supported:
|
features download dev. versions plugins |






- rich text (foreground color, background color, bold, italic, underline, strikethrough, small, h1 and h2)
- syntax highlighting (only when the rich text is disabled in the current node)
- images handling: insertion in the text, edit (resize/rotate), save as png file
- 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 automatically highlighted text into normal rich text
- alignment of text, images, tables and codeboxes (left/center/right)
- hyperlinks (links to webpages, links to nodes/nodes + anchors, links to files, links to folders)
- 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 openoffice 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 node / node and subnodes / the whole tree
- export to html of a node / node and subnodes / the whole tree
- export to plain text of a node / node and subnodes / the whole tree
- toc generation for a node based on headers h1 and h2
- find a node, find in current node, find in all nodes
- replace in node names, replace in current node, replace in all nodes
- iteration of the latest find, iteration of the latest replace, iteration of the latest applied text formatting
- import from notecase, keepnote, tuxcards, basket, treepad lite, tomboy, knowit, cherrytree
- export to cherrytree file of a node / node and subnodes / the whole tree
- password protection
- tree nodes drag and drop
TODO :
- improve the undo/redo machine (lacking of states)
- assign custom icons to nodes/sub nodes and add option to sub-folder/notes (child) to take on parent icon
- open several cherrytree files (notebooks) at the same time with tabs (all in the same window-single instance)
- customize own keyboard shortcuts
- cut copy and paste nodes
- spelling check
- option to edit pictures with external editor
- option to send the selected text to an email client
- integration with zotero
- user defined text style (font, bold, color,…)
- zoom in/out
- option to set the max line length/max page width
- handle the .ctd file updated outside the local running cherrytree instance (e.g. dropbox)
- spreadsheet node
- opportunity for a node to have columns
- allow drag n drop of images
- calendar object/node: automatically formatted into 28-31 boxes corresponding to the current month
- add the word counter for a node/the whole tree
- allow to open a formatting tag for future text
- better table export to html (respect column width, text align, single line border)
- create TOC for node and subnodes and for the whole tree
- export to html: the gap between the heading (h1 or h2) and the following lines of text is too great in html
- let the user customize the toolbar
- do not truncate codebox width in export to html
- the text size for tree nodes in html is too big
- export to html: option to have different color background for the tree
- export to html: option to have the nodes to collapse/expand
- numbered lists: double space after one digit numbers to be aligned with 2 digits numbers
- copy images from web page selection: consider also images inside html table cell (the destination will not be the table cell anyway)
- export node and subnodes as an only html structured document (initial menu with hyperlinks to diferents subnodes)
- option to make text double-spaced
- save datetime creation and last datetime modification for every node. Also ability for search in nodes filtered by datetime creation/modification and view a list of nodes created/modificated in an interval
- export a node with its subnodes to .odt
- utility (dialog) where it’s possible to see all the tags (tree of the only tags) plus statistics about the tags
- mixed fonts (or at least the monospace property)
- embed files same as images, open files with correct app at click
- support relative links (relative to the cherrytree document)
- in code nodes allow compile/execute/code completion
- possibility to set up general custom colors of such node’s elements as h1, h2 and links
- more options for the tables (automatic expand the table to the width of the screen)
- improvement of the linking to node
- ppa for giuspen.com apps
- sub item pressing the TAB key in bullet or numerical list
- h1/h2 property formatting should always be applied to the whole paragraph and not only to the selected word. h1/h2 formattings should therefore behave the same way as bulleted, numbered and todo lists
- import from pdf
- export to LaTeX
TODO LOWER PRIORITY:
- allow to insert images into table cells
- add a small search box in the toolbar to quickly search for text
- re-size multiple images at once in a given node
- integrated screenshots taking
- text wrapping around objects
download :
source code : cherrytree-0.25.3.tar.gz
debian/ubuntu package : cherrytree_0.25.3-1_all.deb (requires gtk+ >= 2.16)
fedora package :
yum install cherrytree
archlinux package :
sudo pacman -S cherrytree
microsoft windows binary : cherrytree_0.25.3_win32.7z
microsoft windows portable binary : cherrytree_0.25.3_win32_portable.7z (created by Mike Moyer)
NOTE: the non portable version requires MSVCR90.dll version 9.0.21022.8, the gtk, gtksourceview and libxml2 libraries installed:
1) if you don’t have python >= 2.6 installed, install vcredist_x86.exe sp0 (not to be upgraded)
2) download the 3 binary archives: (or check for newer versions here)
• gtk+/2.22/gtk+-bundle_2.22.1_win32.zip
• gtksourceview/2.10/gtksourceview-2.10.0.zip
• dependencies/libxml2_2.7.7-1_win32.zip
3) create the folders C:\gtk, C:\gtksourceview and C:\libxml2
4) extract the 3 archives contents in the corresponding directories
5) add “C:\gtk\bin;C:\gtksourceview\bin;C:\libxml2\bin” to the bottom of the system variable named “Path” (right click on “my computer” icon on the desktop, choose “properties”, then from the tab “advanced” click on the button “environment variables”; between the “system variables” you will see “Path” that you have to edit)
6) in case you still have problems, move the paths of point 4) from the bottom to the top of the paths list
resides in applications–accessories–cherrytree
development versions :
the source code is version controlled with mercurial and hosted by google code.
you can get a clone of the cherrytree mercurial repository issuing the command:
hg clone https://giuspen-cherrytree.googlecode.com/hg/ hg_cherrytree
cd hg_cherrytree
./cherrytree
that will create a folder named hg_cherrytree in the terminal working directory, enter into it and run cherrytree development version.
in order to update the local repository with the server repository updates you don’t need to “hg clone” all the time but simply run the following commands from a terminal whose working directory is hg_cherrytree:
hg pull -u
plugins :
a plugin manager is handled by Marcin Swierczynski here.
