-
Notifications
You must be signed in to change notification settings - Fork 475
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OPML Export #2639
Comments
Scrivener is Windows mainly and I am on Ubuntu. However here is a thought https://github.com/edavis/pandoc-opml
On reflection my preference would be to have CT export to Scribus. *.sla which is XML format. |
I export to TXT and use Panwriter to convert from Markdown to OPML, but native export would save a few clicks. |
Remembering that some years ago Scrivener was available as Linux AppImage I downloaded just to refresh my experience of some years earlier. That works.
Now I see that in addition to OPML, rtf can be imported. Searching .. this workaround comes up ...
What you might do is write a CodeBox Python script in CT to run this workflow if you want to "minimise your clicks". What ate a few extra clicks? You can automate clicks in UI macros. This thread does trigger thoughts on exporting CT to other apps, other than Scrivener. For example using CT as a prototyping platform then post content to other applications. For say web development. I see CodeBox as the extension of toolbar without need for new features. Interesting after thoughts are |
I'm not a coder, though. I'm a writer 😂 |
Fair enough. It seems that there have been previous requests. Although you are not a coder there are companion tools which can "drive" your CT operations as macros. Emulating key presses and the like. In Windows there is autohotkey but another cross platform tool is Actiona. |
Do you have any resources for that? |
I seem to have cracked it with the help of an AI companion (Phind.com). I had recollected some prior experience in using xml.etree.ElementTree - The ElementTree XML API (look it up). I posed the scenario of a CT document dedicated to document conversion, remembering that *.ctd is in fact XML. The first attempt required a Python script alongside the *.ctd document to be converted but a more general usage is to have a dialogue to choose in a dialogue the CherryTree *.ctd file to be converted. I created a dedicated CherryTree document for running such conversions ahead. I created one node for OPML conversion. Other nodes can be setup for different conversions ahead. In there I created a CodeBox and inserted the following script. Delete the opening/closing characters `` when pasting into CodeBox. The just Execute the CodeBox Python script. The OPML might need more tweaking to be understood by Scrivener but the principle is demonstrated. `import tkinter as tk def ctd_to_opml(ctd_file):
def convert_files():
if name == "main": |
I'll test this tomorrow (: But how do I make a codebox? |
On second thoughts it might be easier for you to just run the Python script in the same location (directory) as your CT document. Avoids the need for you to get to grips with CodeBoxes you can learn later .. optional. |
I don't have Python on my system, tho. I only have a 500gb drive so I'm stingy with space. |
Does python take up too much space? |
Looking again I suspect that OPML route/experiments might go down a rabbit hole. Having looked at internal structure of Scrivener (Linux) I think that it might be easier to build a script (such as in Actiona UI emulator) to copy and paste from CT node hierarchy into Scrivener project. Just grabbing rtf content. Read here .. https://scrivener.tenderapp.com/help/kb/cloud-syncing/using-scrivener-with-cloud-sync-services So CherryTree might push content into dropbox and your Scrivener could pull content. Now that I have Scrivener installed (it has superior formatting options for reports) I will experiment. I would also point to Zettlr Markdown editor. |
P.S. read warning here from above link: Note on External Folder Sync For more information, visit §14 Cloud Integration and Sharing in the Scrivener manual. |
I already knew this, I'm an advanced Scrivener user. |
I have given up on trying to second guess your planned workflow as an advanced Scrivener user. I have found other advanced users but not having Python experience is an obstacle. I do conclude that OPML might be a red herring as first stage (although that route is possible, just harder). I can write that in my own dual boot setup (Windows/Ubuntu) I have Scrivener+CherryTree installed both sides (Windows+Ubuntu) and I can CherryTree export nodes into a shared vault (not Dropbox but a shared NTFS partition) so that I can keep both in sync. That is CherryTree exported nodes appear on corkboards (Windows and Ubuntu) for further processing. I can also sync with a cloud based vault for secure sharing. |
You got me at Scribus. Please share (: |
Try shaping text flow around images. On a par with Scrivener. Both excellent tools but CherryTree can feed both. |
But I use text, not images. |
But I use text, not images. |
"But I use text, not images" Might I suggest that when you next post some new issue .. wherever .. you set out in advance your constraints, and the context of your issue?
Saves a lot of time both sides. |
Noted. |
Final tip then we can move on .. Stumbled onto this site when searching around Scrivener uses. |
Thank you (: Probably will continue to use my current workflow until some kind soul replicates OmniOutliner for Windows 11 and Linux. |
Re: OmniOutliner quest. |
I tried that. Too complicated. I use Keynote NF as a companion to CT + Pandoc. |
O.K. I read this article and thought I might try it. |
It works for some but not for me. |
That is fine for CT text only export (as you confirmed you use) but more tweaking is required when images plus text (HTML) pass through Pandoc to achieve same quality as Scrivener/Scribus. Perhaps a Lua script might achieve this formatting. |
I don't need CT to replicate Scrivener but you got me at Lua script. What could be done using Lua? |
Perhaps not a good idea if you are not into coding (I forgot that earlier constraint). But here are examples: Set: Markdown to RST .. example. |
I'm fine with pandoc (but I do use PanWriter as a "frontend") |
BTW, @gitvectors, I found this article explaining how .opml files are usually used by writers. Might be worth looking into... |
Nice link. Nice list of users. https://www.thewritercoach.com/blog/2023/9/8/opml-your-secret-to-story-structure I see that in the article there are cross links from hierarchical sub-nodes to others. But this is not the way the human mind works. There are synaptic flashes of inspiration and insight not necessarily linked to an earlier hierarchy. In fact the old hierarchy might be ditched, overtaken by new inspirations. The mind works in multiple dimensions, and visualises, and perhaps a compromise is to hold your mind map in a framework such as D3.js Unfortunately you will need to learn at least a new language Javascript and JSON But it is able to be learned. Here is your mind dashboard. https://observablehq.com/?utm_source=d3js-org&utm_medium=promo&utm_campaign=try-observable A bit overwhelming I admit if you have been used to writing novels in Scrivener, importing OPML. But stick with it. Forget for the moment the complex graphs. I would focus on chord analysis to start. Create a free account here. https://observablehq.com/pricing Search for “chord” examples. https://observablehq.com/@tommycoin80/tree-chord-diagram Here you can see a chord diagram in action. The challenge is to map CherryTree nodes to a chord diagram. Now going deeper you can define your thoughts in JSON then export to OPML (which is where you came in). Here are some references ... https://www.vertopal.com/en/convert/json-to-opml#google_vignette Blogring https://thejeshgn.com/2022/09/22/blogring-json-to-opml-export/ Wolfram https://reference.wolfram.com/language/ref/format/JSON.html Mindnode https://github.com/vchatterji/opml2json End of mind map. The visual picture I have is harvesting an orchard of cherrytrees to put in a hopper to be canned in JSON. Can't write that mindmap in OPML. P.S. After thought (that is how the mind works). |
The only thing that interests me is the Quarto system. What do you know about that? |
Only what I read here. The earlier discussed mindmaps (which apparently now do not interest you) are also covered. So it is an all round framework. But all roads lead to Rome so we are back to OPML .. and thence Scrivener (or other). Which is where we came in. |
I use Scapple for mind mapping, but Quarto intrigues me. |
Describe the solution you'd like
Would it be possible to add the option to export nodes to
.opml
? OPML is used by Scrivener to automatically populate a project when importing a .opml
file.If it helps I can produce a sample OPML file so you can see how they're formatted.
Thank you (:
The text was updated successfully, but these errors were encountered: