La_Corporation-Documentaire.dragdrop.json (698 Bytes)
For playing IPFS video in tiddler, I made “type”: “text/vnd.tiddlywiki”, json files using <video>
html5 inclusion.
What would be the tiddlywiki
command to import this file?
La_Corporation-Documentaire.dragdrop.json (698 Bytes)
For playing IPFS video in tiddler, I made “type”: “text/vnd.tiddlywiki”, json files using <video>
html5 inclusion.
What would be the tiddlywiki
command to import this file?
I tried –import command, and it works! Thanks
Get the latest “ipfs online version”
ipfs cat /ipns/k51qzi5uqu5dkavscgxvllbwh00eo74hqplaltrl4fk347602oq0y5hdc1y2fw > index.html
Add tiddler
tiddlywiki --verbose --load index.html --import ~/Bureau/Journal/youtube/Original_Atari_PONG-1972-arcade_machine_gameplay_video.dragdrop.json json
Boot log:
Startup task: load-modules
Startup task: info after: load-modules before: startup
Startup task: plugins after: load-modules
Startup task: startup after: load-modules
Startup task: story after: startup
Startup task: commands platforms: node after: story
Executing command: load index.html
Executing command: import /home/fred/Bureau/Journal/youtube/Original_Atari_PONG-1972-arcade_machine_gameplay_video.dragdrop.json json
1 tiddler(s) imported
But it doesn’t change index.html … re-publishing it
NEWIPFS=$(ipfs add -q index.html) && ipfs name publish -k ipfswikikey /ipfs/$NEWIPFS
Now I would like to “export” tiddlers containing external links (“canonical_uri”) to add into IPFS, replace URI republish modified tiddler.
If it is possible to save to IPFS via HTTP requests, you could use the FileUploads plugin. It uploads any binary tiddlers to the specified backend and creates canonical URI tiddlers for them.
The choice of backends is extensible via uploader modules, which are relatively easy to write for HTTP APIs. There is one for Fission’s Webnative File System (which also uses IPFS under the covers) but I believe that needs updating for the current WNFS version.
See:
OK, thanks @saqimtiaz, the way you explain seems great to add binary files, but my goal is to process already recorded tiddlers.
Some tiddlers could contain binary data already, or canonical_uri field, I want to copy to IPFS and update treated tiddlers.
I still don’t understand how to create new index.html after import step 2
Try adding these options:
--output . --render "$:/core/save/all" "newindex.html" "text/plain"
The FileUploads plugin uses a filter to determine what to tiddlers to upload, so is completely flexible in that regard.
Great !! Your help unlock my first wish
“Adding tiddler to an online IPFS Tiddlywiki”
My second wish then is “Copy internal/external media binaries from a tiddlywiki to IPFS to reduce index.html size and optimize my hosting”
Do you have an example of a command extracting some tiddlers.json from a specific field or tag values ?
After that, If I want to replace tiddler:
@saqimtiaz, maybe after I can understand how to use your method, before, I must learn how to manipulate tiddlers from command line
Continuing exploring commands
https://tiddlywiki.com/#FetchCommand
https://tiddlywiki.com/#SaveCommand
And found
http://tobibeer.github.io/tw/filters/#Filter%20Examples
Extending the command
tiddlywiki --verbose --load index.html --import ~/Bureau/Journal/youtube/Original_Atari_PONG-1972-arcade_machine_gameplay_video.dragdrop.json json
with
Result in the fact newindex.html and index.html are the same !?
I don’t know. Try this.
tiddlywiki --verbose --load index.html --load "~/Bureau/Journal/youtube/Original_Atari_PONG-1972-arcade_machine_gameplay_video.dragdrop.json" --output . --render "$:/core/save/all" "newindex.html" "text/plain"
How did you verify this? Are the files the same size? If the added tiddler does not contain a created
field, it will not show up in the Recent
tab, but it will show up in the All
tab.
You’re right. My mistake was to put a trailing / in --output /tmp/
as file path
tiddlywiki --verbose --load index.html \
--import new_tiddler.json "application/json" \
--output /tmp --render "$:/core/save/all" "newindex.html" "text/plain"
This is the working “import tiddler” command line.
I was missing "application/json"
for import
PS: I get json template from “export tiddler as json” from GUI
About SaveCommand I am a bit lost with filters
I can save tiddler with certain tittle.
But some filtering expression examples are missing to me
Like
Some examples would enhance my learning curve
I’m thinking you may actually want the render command. There is an example for saving to JSON, though I feel the example must be wrong (maybe a leftover from a prior command), because the elements are in the wrong order.
@Mark_S thanks.
Great, render is the command I was needing.
I could make a script
I am using TW associated with a crypto key related with IPFS/IPNS key. So anyone can store its tiddlywiki in the “interplanetary file system” only through a “salt/pepper” NaCl key generator converted to ED25519 format
Btw, I still wonder how I could know TW last modification date ?
Unfortunately, there aren’t many built-in functions for handling dates. You could filter, say, all tiddlers modified in the last 3 days:
[days[-3]]
Or, if you make up your date like yyyymmdd you can compare it:
[tag[HelloThere]]:filter[get[modified]compare:date:gt[20200101]]
Thanks again for your precious help !
I have a question about “encrypted tiddlers”, do you know if there is a way to manipulate them form command line?
Consider a created date it is stored in the form YYYYMMDDhhmmssxxx
or the date format YYYY0MM0DD0hh0mm0ss0xxx
simple date comparisons is easy because any date before is a smaller number and any date after a larger number.
[<now YYYY0MM0DD0hh0mm0ss0xxx>...
20220902120000000
midday on 20220902@TW_Tones thanks for your good advice about date comparison
I found https://github.com/masonicGIT/sjcl-cli that is the same way tiddlers are encrypted… “Stanford JavaScript Crypto Library”
But import command is missing “crypto” encoding type…
Is the “encrypt widget” a way? Do you know what is PasswordVault ?