Skip to content

Working independently of the note-taking software named CherryTree, this application extracts data from the nodes on the SQLite-formatted CherryTree file and exports it as CSV files, under the conditions detailed in the descriptions.

License

Notifications You must be signed in to change notification settings

turkerozturk/cherrycsv-for-cherrytree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

cherrycsv-for-cherrytree

CherryCSV is a tool to create CSV files by extracting data from the CTB SQLite database file, which belongs to the hierarchial note-taking software named CherryTree.

Downloads: https://github.com/turkerozturk/cherrycsv-for-cherrytree/releases

Why I created it?

In short, I wanted to see and control my similar data nodes easily.

How to use this tool?

I assume that you already are a CherryTree note taking software user. If not, you can download and use it from its website until to get familiar with it; https://www.giuspen.net/cherrytree/

You need to have JAVA_HOME environment variable.

A VERY BASIC TUTORIAL TO CREATE AN EXAMPLE CSV FILE:

Create a new CTB file using CherryTree application, or use your existing copy of one with caution. Rename it to cherrytree.ctb and put into the same folder with this tool. Otherwise you need to give the full path of the CTB file as an argument to this commandline tool.

A CTB file consists of nodes. Instead of an external configuration file, I decided to use some nodes with special purpose.

Therefore, I gave them virtual names in my mind and you will understand them after completing this tutorial:

Tasks node: Only one tasks node must exist. Inside its content, each line is equal to one template.

Template node: One or more template nodes can exist. Inside its content, each line is equal to data node names.

Chosen node: A chosen node is, if you wrote the template name inside "Tags for Searching" field of any node, using right click node properties option, it will become chosen node. It means that this tool will collect data from its children.

Data node: These nodes are the children of chosen nodes. If data nodes are not exist, they will created with empty content. If they exist, this tool only collects data from them.

In your CTB file create these three nodes below;

TASKS NODE Create a new node with setting its node name to cherrytemplatetasks and with setting its node type to plain text. Put the word test into its content area.

TEMPLATE NODE Create a new node with setting its node name to cherrytemplate-test and with setting its node type to plain text. Put the word datanode1 into first line of its content area.

CHOSEN NODE Create a new node with setting its node name to anything and with setting its node type anything. Set the value of its Tags for Searching property to cherrytemplate-test.

Run this tool like below (choose one of them);

cherrycsv-for-cherrytree.exe

OR

java -jar cherrycsv-for-cherrytree.jar

OR

cherrycsv-for-cherrytree.exe fullPathOfYourCtbFile

OR

java -jar cherrycsv-for-cherrytree.jar fullPathOfYourCtbFile

Answer typing y key to the question and type ENTER twice.

If everything is ok,

It will create a new node under the CHOSEN NODE you created before, as a child node, named datanode1, with empty content.

We call it DATA NODE.

It will create these files below in the same folder of this tool;

cherrytree.ctb-cherrycsv-test.csv

cherrycsvlog.html

Now you can open that CSV file with Libreoffice Calc, Microsoft Excel, or even import to the same CTB file into a node content as a table using CherryTree program.

What will happen if you run this tool again,

Because the data node was created before, it will leave that node as is.

It will overwrite the log file and all of CSV files with newly created files.

Please open the generated cherrycsvlog.html file with your web browser to see the logs, it contains detailed explanation for each step. It can help you to understand the mechanism better.

About

Working independently of the note-taking software named CherryTree, this application extracts data from the nodes on the SQLite-formatted CherryTree file and exports it as CSV files, under the conditions detailed in the descriptions.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages