Novice: is it possible to currently install and use the "Launch Application" plugin on TiddlyWiki?

Good evening!

I’m using TiddlyWiki on Windows 10, Browser: Google Chrome.
I recently started looking at introductory videos and using TiddlyWiki.
I have a first question that I couldn’t answer, even though I consulted different discussion groups and saw some with the plugin in question. But I didn’t know if it is still possible to install and currently use the “Launch Application” plugin on TiddlyWiki. If possible, can someone help me?

I couldn’t find a site where I can install and use the “Launch Application” plugin.

If this is no longer possible, there is a solution, even using TidlyDesktop internally, where I can open a local file, in a local directory (eg “doubts.docx”) and it invokes the application associated with the file type, in this case : docx?

The best thing would be to be able to invoke a local program with an argument, identifying the local file to have autonomy in the way of calling the program responsible for editing the file in question.

Thanks.

I’m guessing that you found references to something in TW Classic. Or maybe Bob. Bob is a multi-user TiddlyWiki server that claims the ability to run scripts. Not sure how well it supports Windows, though.

@TW_Tones has an explanation of a method for launching scripts on Windows from TiddlyDesktop in the GG forum

Hello, Mark_S!

Thanks a lot for the feedback. I tried to use the idea indicated by TW Tones:
<a title={{!!tooltip}} href="file:///C:\Data\batches\runnetworkcheck.cmd" > Go</a>

Replaces its runnetworkcheck.cmd file with a local “Microsoft Word” file. Really worked.

However, I noticed that my problem is different. TiddlyWiki can’t recognize the path I give it.

<a href="file:///D:/Users/criep/Docs(offline)/%C2%A7%20%C3%81rea%20ECLESIAL%20(offline)/B1(a1)-Vida%20Celebrativa%20(CULTOS)/PREGA%C3%87%C3%95ES%20CAMPO%20MOUR%C3%83O%202022/CSS%202022-01-29%20Mt%2013.44%20(O%20Maior%20Tesouro%20de%20Todos).docx">CASTELO-FORTE (lista-pedidos).docx</a>
Or yet…
<a href="file:///D:\Users\criep\Docs(offline)\§ Área ECLESIAL (offline)\B1(a1)-Vida Celebrativa (CULTOS)\PREGAÇÕES CAMPO MOURÃO 2022\CASTELO-FORTE (lista-pedidos).docx">CASTELO-FORTE (lista-pedidos).docx</a>

I believe that it cannot work with the special characters of Portuguese (~, ç, etc) in the identified path. Does anyone know how I can get around this problem?

I think the best option would still be to be able to use the “Launch Application” that I even found references, but I couldn’t find the mentioned plugin for download. It would be the perfect solution.

Does anyone know of an alternative that works?

I may be wrong but perhaps “Launch Application” was only TWCLassic.

  • I would need to revisit TiddlyDesktop in relation to launching applications. I do not recall a simple way to pass arguments, however using export or print to plaintext I had a way to save batch/cmd files containing the arguments from tiddlywiki then executing them.

  • If TiddlyDesktop is updated with a new browser release new limitations may be present.

  • Timimi was on the path to reusing the file same mechanism to also trigger execution but this was not pursued in the latest version.

  • Without going to great lengths a solution such as TiddlyDesktop without rights constraints is needed.

What kind of application execution do you want, there are workarounds for a subset of cases I know of on Windows.

Small comment to @TW_Tones & @Claudio_Rieper.

@anon9140225’s Timimi in the previous version (Firefox only – no longer available) does give direct access to the O/S. That is amazingly useful. I use it to launch applications. It’s script form is simple. It passes an argument to a back-end that works to launch any application and pass parameters to it.

I’m still using it (in Firefox). But @anon9140225, when adding the Chrome support, found it did not work, so he could no longer support it. The launch ability had to go.

FYI, I will still stay with the old version of Timimi until it stops working. So far so good.

Best wishes
TT

Thank you @TiddlyTweeter for the kind words. Another reason I decided to remove such a possibility was security hardening. Browser being the window to internet, should be restricted to the maximum extend possible in its access to file-system.

We did place restrictions in place in earlier versions of timimi in the sense that only local Tiddlywiki files can trigger application launching, and only pre-registered applications can be launched. Nevertheless as a matter of principle, I needed to remove even the possibility of a vulnerability. Less attack surfaces is good for all.

I understand the possibilities opened by allowing TW to launch other applications. However I no longer believe in the approach I followed earlier. I have come to light regarding Mozilla’s forethought and caution.

It is my opinion that such a feature should be part of a dedicated application like TIddlyDesktop or something sand-boxed. Using a browser plugin to do that is reversing the hard earned progress in browser safety.

Sincerely,
Riz

2 Likes

Ciao @anon9140225, right!

I do think we kinda missing, now, a middle ground. Your Firefox “back-end” approach for ordinary TW was a simple one that worked on desktops without issue even if you exported to mobile.

Much as I love TiddlyDesktop it has limits on easy cross-platform use.

I dunno what the answer is. The restrictions for safety (good) also have, de facto, reduced easy use.

IMO, one-way-or-another, simple access to the O/S remains valuable.

I am very grateful for your work, past and present. It lets me do things I need to do in a simple way.

Best wishes
TT

2 Likes

Hi, using https://github.com/tiddly-gittly/TidGi-Desktop will allow you open file using js:

require('child_process').exec(`start D:/Users/criep/Docs(offline)/xxx.docx`)

or in macos

require('child_process').exec(`open ~/Docs(offline)/xxx.docx`)

Just use this button (zx-plugin):

I’m thinking that this may call for the need to create and register your own protocol. It may also require escaping your file name, then sending it to a batch file that can convert the escaped name back and launch word.

Are you thinking in terms of standalone only? It occurs to me that with node.js, you could create a command tiddler that holds the command you want. Then you could have a script like Polly watching for command tiddlers. When it sees the tiddler, it extracts the command, deletes the tiddler, and invokes the command.

1 Like

I find this issue about accessing the local machine like the

“Security Tail, wagging the functionality Dog”.

In fact it is clear the big players such as Microsoft/Google and its Browser based Apps have no problems interacting with local files. I am all for security but it should be the case that trusted apps/websites/tiddlywikis should be able to be granted the necessary access for full functionality.

Even if we have to jump through hoops to grant these permissions at setup, we should then be able to make use of local resources, this would stop random apps and websites gaining the same access unless the user took actions to permit such access.

For example Currently all file based sites share the same local storage, but the browser should provide a sandbox option as it does for URL’s.

  • A side note: this shared space can allow communication between file based wikis in the same browser and could be used to create some extra ordinary solutions.
1 Like

Right! As always you are very astute on this kind of issue. Apologies for the delay in replying. My brain is slow.

FYI, I am, currently, using the prior version of Timimi (no longer available or supported) for single-file TWs to activate (via batch flies) O/S actions. [I can’t expect it to live forever.]

I prefer single-file to node. [Explanation: I’m a fan of Bob & TiddlyDesktop both of which are (I believe) node simplifications that work well but when shove comes to push I’m creating singular web pages, not farms :upside_down_face: .]

I think your point about Polly detection is a great pointer.

I suddenly grokked that one might create a TW macro-button thing to create an instant Tiddler export labelled “Do this in the O/S” to “Downloads” that contains an instruction that a Powershell script could detect, parse and perform.

Early thoughts
TT

P.S. The remit of Polly is great. The illustration of utility for practical stuff is ace from it: POLLY

I was surprised Polly is not listed at links.tiddlywiki.com … at least I could not find it …

Here you go –

image

It is good you added Polly! Grazie!

TBH I think it is great. With masses of potential still not fully tapped.

In my idiot way I did do work, inspired by Polly, trying to develop Owlets (small powershell utils for TW). The whole aviary is still open.

I’m slowly working towards “THE BIRDS”.

TT, x