I'll have a look at an innerwiki solution now. You can mess with it from a module, so I'll have to create a fake browser to save, *I think *anyway. This is brutal without documentation, but the API is not that bad once you get an idea of where everything is, as long as you have an IDE like netbeans to jump to declarations easily.
I thought maybe the setfield command <https://tiddlywiki.com/#SetFieldCommand> was doing something special to save, so I learnt how to use it. As predicted, no, it doesn't save. So I have no idea what use it is, it seems to be pointless. UNLESS that's what the --build command is for! You run a few command WHILE THE SAME WIKI IS LOADED, so you make changes to the loaded wiki THEN build! Or maybe you can string arguments together? YOU CAN. WE DID IT! Check this out. - So I have a file called local/index--private.html, which is a standalone TiddlyWiki. - I then convert that to a node.js wiki using --savewikifolder. - Then I run --setfield to fix the names of some tiddlers, but that duplicates them for some reason, so - I then delete the duplicates using --deletetiddlers. - Then I set the output location using --output. - Then I render the whole thing back to a standalone TiddlyWiki using --rendertiddler. - Later I will add the rest of the script, that does all the robocopying and delete the temporary node.js wiki. tiddlywiki --verbose --load "./local/index--private.html" --savewikifolder ./temp "[all[]]-[tag[private]]" tiddlywiki temp --verbose --setfield "[[index--public]] [[quick--public]] [[license--public]]" "title" "publify--name--template" "text/plain" --deletetiddlers "[[index--public]] [[quick--public]] [[license--public]]" --output ./local --rendertiddler "$:/core/save/all" "index.html" I did try to use the following command, to avoid the node.js part, but --setfield didn't work. tiddlywiki --verbose --load "./index--private.html" --deletetiddlers "[tag[private]]" --setfield "[[index--public]] [[quick--public]] [[license--public]]" "title" "publify--name--template" "text/plain" --deletetiddlers "[[index--public]] [[quick--public]] [[license--public]]" --output ./ --rendertiddler "$:/core/save/all" "index.html" "text/plain" Well I learnt how to make a command macro for nothing. Oh well! I'll make a proper tutorial for all of this later. We need documentation. That should have taken me half an hour, but it took *days*! Kalcifer On Wednesday, May 27, 2020 at 1:20:39 AM UTC+1, TonyM wrote: > > Kalcifer Kandari > > In the innerwiki plugin I mentioned there are some command line tips to > capture an image of the resulting iFrame to generate documentation. But > this is only an interesting fact that may lead you somewhere > > By passing the appropriate tiddlers to the innerwiki you may be able to > trigger an automatic save of that wiki to a set filename. You also get to > preview it. > > Others can help you with node or JS solutions, I do things in TW5 single > files mostly, to keep them interactive, and independant of the server if > possible. > > Regards > Tony > > > On Tuesday, May 26, 2020 at 10:28:08 PM UTC+10, Kalcifer Kandari wrote: >> >> I'm confused on many levels. >> >> - Is there even a saver for the command line? SaverHandler >> >> <https://github.com/Jermolene/TiddlyWiki5/blob/master/core/modules/saver-handler.js>needs >> >> to initialise a 'saver' from $:core/modules/savers >> >> <https://github.com/Jermolene/TiddlyWiki5/tree/master/core/modules/savers>, >> but none of them seems to work. >> - If there is no way to save from the command line, what does the >> setfield >> <https://tiddlywiki.com/#SetFieldCommand>command even do? I'm looking >> at the source code >> >> <https://github.com/Jermolene/TiddlyWiki5/blob/master/core/modules/commands/setfield.js> >> >> and it doesn't look like it saves. >> - If there is no saver, does that mean innerwiki needs to be used to >> create a 'fake' browser and then save? >> >> I'm going to look at this tomorrow. >> >> Kalcifer >> >> On Tuesday, May 26, 2020 at 10:10:11 AM UTC+1, Kalcifer Kandari wrote: >>> >>> I've found SaveHandler.saveWiki("save"), but not sure how to get to it >>> from a command module. >>> >>> Kalcifer >>> >>> On Tuesday, May 26, 2020 at 9:42:56 AM UTC+1, Kalcifer Kandari wrote: >>>> >>>> Does anyone know how to save a node.js wiki using a JavaScript module? >>>> There's a thousand matches for 'save' in the source code, aaaa. >>>> >>>> Kalcifer >>>> >>>> On Monday, May 25, 2020 at 11:58:49 PM UTC+1, Kalcifer Kandari wrote: >>>>> >>>>> It's interesting, but not perfectly suited to this problem. Part of >>>>> the exercise here isn't just making a new wiki from another one, it's >>>>> also >>>>> pushing it to a server, all with just one command. I am planning on >>>>> updating and publishing this wiki everyday. Laziness is serious business. >>>>> >>>>> Kalcifer >>>>> >>>>> On Monday, May 25, 2020 at 11:47:40 PM UTC+1, TonyM wrote: >>>>>> >>>>>> Kalcifer, >>>>>> >>>>>> Consider using the Innerwiki plugin, you can generate a new wiki >>>>>> inside an iframe with the core and tiddlers you specify. You can then >>>>>> save >>>>>> the generated wiki all in single file. >>>>>> >>>>>> Regards >>>>>> Tony >>>>>> >>>>>> On Monday, May 25, 2020 at 3:35:32 PM UTC+10, Kalcifer Kandari wrote: >>>>>>> >>>>>>> Please have a look here: >>>>>>>> >>>>>>>> https://tiddlywiki.com/prerelease/#Generating%20Static%20Sites%20with%20TiddlyWiki >>>>>>>> >>>>>>> >>>>>>> I'm not trying to generate a static site, rather export part of a >>>>>>> standalone site to another standalone site, then do some renaming. >>>>>>> >>>>>>> I get the impression that, with the command line, you can convert a >>>>>>> standalone wiki to a node.js wiki, but not the other way around, or >>>>>>> from >>>>>>> standalon to standalone. >>>>>>> >>>>>>> Kalcifer >>>>>>> >>>>>>> On Monday, May 25, 2020 at 6:28:14 AM UTC+1, Mohammad wrote: >>>>>>>> >>>>>>>> Please have a look here: >>>>>>>> >>>>>>>> https://tiddlywiki.com/prerelease/#Generating%20Static%20Sites%20with%20TiddlyWiki >>>>>>>> >>>>>>>> >>>>>>>> Best wishes >>>>>>>> Mohammad >>>>>>>> >>>>>>>> >>>>>>>> On Mon, May 25, 2020 at 9:11 AM Kalcifer Kandari < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Thanks, but that still give a similar error: >>>>>>>>> >>>>>>>>> Error: ENOENT: no such file or directory, open >>>>>>>>> 'E:\path\local\output\$:\boot\boot.css.html' >>>>>>>>> >>>>>>>>> Kalcifer >>>>>>>>> >>>>>>>>> On Monday, May 25, 2020 at 4:21:27 AM UTC+1, Mohammad wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Use >>>>>>>>>> tiddlywiki mywiki --render "[all[]]-[tag[private]]" >>>>>>>>>> >>>>>>>>>> change mywiki with your wiki folder name. This is when you run >>>>>>>>>> the command from a parent folder >>>>>>>>>> if not give the correct wiki folder path, if you run from inside >>>>>>>>>> the wiki folder just issue >>>>>>>>>> tiddlywiki --render "[all[]]-[tag[private]]" >>>>>>>>>> >>>>>>>>>> Best wishes >>>>>>>>>> Mohammad >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Mon, May 25, 2020 at 7:30 AM Kalcifer Kandari < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> So, I'm working on a fancy script to publish my site by just >>>>>>>>>>> running a single command. I want to do this because the working >>>>>>>>>>> wiki is a >>>>>>>>>>> mix of public and private tiddlers, which is much easier to work >>>>>>>>>>> with that >>>>>>>>>>> 2 separate wikis, given they share a lot of tiddlers. I'm using the >>>>>>>>>>> standalone wiki, because far as I know, exposing the node.js >>>>>>>>>>> version to the >>>>>>>>>>> internet is not viable as visitors could edit the site. >>>>>>>>>>> >>>>>>>>>>> The command will do something like this: >>>>>>>>>>> >>>>>>>>>>> 1. robocopy /mir the local folder to a staging folder. >>>>>>>>>>> 2. In the staging folder, from the original HTML file export >>>>>>>>>>> some tiddlers based on this filter[all[]]-[tag[private]] to >>>>>>>>>>> a new HTML file, then delete the original HTML file. >>>>>>>>>>> 3. Then rename a few tiddlers, such as index--public to index >>>>>>>>>>> . >>>>>>>>>>> 4. robocopy /mir the staging folder to the server, and >>>>>>>>>>> delete the staging folder. >>>>>>>>>>> >>>>>>>>>>> So 2 and 3 are where I'm at. >>>>>>>>>>> >>>>>>>>>>> *For 2: *I'm trying to use tiddlywiki wiki.html --render >>>>>>>>>>> "[all[]]-[tag[private]]", but it's just throwing an error: >>>>>>>>>>> >>>>>>>>>>> Error: ENOENT: no such file or directory, open >>>>>>>>>>> 'E:\path\wiki.html\output\$:\boot\boot.css.html' >>>>>>>>>>> >>>>>>>>>>> My suspicion is that the tiddlywiki command only works for >>>>>>>>>>> node.js wikis? >>>>>>>>>>> >>>>>>>>>>> *For 3:* I've looked at the tiddlywiki wiki.html --setField >>>>>>>>>>> documentation >>>>>>>>>>> <https://tiddlywiki.com/static/SetFieldCommand.html>, and it >>>>>>>>>>> says "*templatetitle* - the tiddler to wikify into the >>>>>>>>>>> specified field. If blank or missing then the specified field is >>>>>>>>>>> deleted", >>>>>>>>>>> I'm not clear on what that means. I would expect to be able to run >>>>>>>>>>> tiddlywiki >>>>>>>>>>> wiki.html --setField "[title[index--public]]" "title" "index", >>>>>>>>>>> although I haven't got so far to be able to try that out yet. >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> >>>>>>>>>>> Kalcifer >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>> Google Groups "TiddlyWikiDev" group. >>>>>>>>>>> To unsubscribe from this group and stop receiving emails from >>>>>>>>>>> it, send an email to [email protected]. >>>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>> https://groups.google.com/d/msgid/tiddlywikidev/5cf4d25b-5d4e-42ed-b9c9-1429c0030ed9%40googlegroups.com >>>>>>>>>>> >>>>>>>>>>> <https://groups.google.com/d/msgid/tiddlywikidev/5cf4d25b-5d4e-42ed-b9c9-1429c0030ed9%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>>>> . >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "TiddlyWikiDev" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to [email protected]. >>>>>>>>> To view this discussion on the web visit >>>>>>>>> https://groups.google.com/d/msgid/tiddlywikidev/2b94bea4-5d7b-4734-a75f-f118ccb3b5c4%40googlegroups.com >>>>>>>>> >>>>>>>>> <https://groups.google.com/d/msgid/tiddlywikidev/2b94bea4-5d7b-4734-a75f-f118ccb3b5c4%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> >>>>>>>> -- You received this message because you are subscribed to the Google Groups "TiddlyWikiDev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywikidev/f4e0fe02-2156-45ff-afbc-b4f6dbccc38b%40googlegroups.com.
