TiddlyWiki as filemanager meta repository

435 views
Skip to first unread message

Cd.K

unread,
Aug 10, 2019, 2:17:49 PM8/10/19
to TiddlyWiki
I have always opened many directories in Windows Explorer, XYplorer, xplorer and/or Nomad.NET. In general, I don't like the handling any more and I want to change to a similar way of working as I used to with TiddlyWiki and browsers. 

I often follow several topics at the same time and therefore group my search results which also results in documentation of my searches at the same time. 

For this, I use the add-on "Export Tabs URLs", which I have configured so that it creates a ready-made link for TiddlyWiki with title and reference in the clipboard. I create corresponding tiddlers for each topic and/or subject area and fill them with the links.

If necessary, I can then call up the Internet pages again from the corresponding tiddlers.

Conclusion:
I manage my bookmarks browser independently with TiddlyWiki.


Now I want to manage access to the Windows file system in a similar way.

 For this, I lack a function that a directory path is passed to any file manager from the Tiddler and this file manager then opens the requested directory.

I imagine that the Link Widget is extended by a format of the type "dir://" and therefore knows that a file manager has to be started.

Is there anything like this already or how could it be implemented?

I can if necessary program in C++, Node JavaScript, C# and I know about Node edge, but I don't know much about HTML, CSS and TiddlyWiki plugins.     

I use TiddlyWiki with the Firefox Add-on "File Backups" on windows 10. 

A Gloom

unread,
Aug 15, 2019, 10:15:24 PM8/15/19
to TiddlyWiki
this doesn't invoke an external file explorer but used FF built in file browser-- perhaps a starting point fror your research?

TonyM

unread,
Aug 15, 2019, 10:58:58 PM8/15/19
to TiddlyWiki
File://folder path links will open windows explorer or applications to handle documents when in tiddlydesktop because it is a local application and not restricted by browser protection.

In many ways this is how it should stay.

Regards
Tony

TonyM

unread,
Aug 15, 2019, 11:01:12 PM8/15/19
to TiddlyWiki
Also timimi has some executable opportunities and bob allows you to generate messages to execute on the server, but tiddlydesktop is the most strait forward.

Regards
Tony

Cd.K

unread,
Aug 17, 2019, 6:34:16 AM8/17/19
to tiddl...@googlegroups.com
Am Freitag, 16. August 2019 05:01:12 UTC+2 schrieb TonyM
Also timimi has some executable opportunities and bob allows you to generate messages to execute on the server, but tiddlydesktop is the most strait forward.

Regards
Tony




👍 `timimi` is exactly what I was looking for.
Thank you very much. 


Cd.K

unread,
Aug 17, 2019, 3:52:54 PM8/17/19
to TiddlyWiki
I am in a Tiddler and the cursor is on a string that I have marked.
Now I want to pass this string as parameter per timimi to a script. But how do I get access to this string? 

In the launch example of timimi, a button is simply placed in the tiddler as a static solution:

<$button> Launch notepad++ run.py
<$action-launchscript $script="n++.cmd" $param="D:/Development/OCaml/spec/test/core/run.py"/>
</$button>


2019-08-17_extract_marked_string.png





How do you solve this dynamically?
 


TonyM

unread,
Aug 17, 2019, 9:26:59 PM8/17/19
to TiddlyWiki
I would dynamically generate the wiki text to define the button.

You seem to be creatively jumping too far ahead. If ultimately you want to use cursor selection to highlight something, get a shortcut to copy this and supply it to timimis command extension then there would be a lot more to do than you present here.

Can I suggest baby steps where you test your understanding in each step.

Or at a minimum ask for a specific outcome.

For building your original solution is there a reason you have not taken my recommendation of tiddlydesktop?

Regards
Tony

Cd.K

unread,
Aug 18, 2019, 3:11:59 PM8/18/19
to tiddl...@googlegroups.com
@TonyM


For building your original solution is there a reason you have not taken my recommendation of tiddlydesktop?

I don't want to have to use another program.   
For my first attempts with TiddlyWiki I used TiddlyDesktop and it only started to work well after I commissioned it under Firefox together with pmario's AddOn File Backup.

 
With the help of the Firefox add-on RunWith I can now output the currently selected string with `console.log`. This AddOn also generates corresponding entries in the context menu of Firefox.

I marked a date string in a tiddler, right mouse button:

2019-08-18__runwith_timimi_extract_marked_string.png

After mouse clicking: 

info.selectionText 11.08.2019

# produced by:
console
.log('About to run: info.selectionText %s', info.selectionText);
# in background.js line 32

2019-08-18_runwith_timimi_extract_marked_string.png


How can I make the following call from Firefox-RunWith's JavaScript "background.js" instead of my console.log?

<$action-launchscript $script="n++.cmd" $param="D:/Development/OCaml/spec/test/core/run.py"/>

What do I need to require? How do I call timimi's action-launchscript command? 

Cd.K

unread,
Aug 21, 2019, 9:42:28 AM8/21/19
to TiddlyWiki
I have now been able to connect the two Firefox add-ons runwith and timimi with each other.

I use the native messaging host from timimi and the context menu entries from runwith.






TonyM

unread,
Aug 21, 2019, 8:29:23 PM8/21/19
to TiddlyWiki
Cd.K

Please do share the details - I am interested.

Over here I put my argument for using TiddlyDesktop and how It handles local resources

Installing another application (unless you are somehow restricted) is equivalent to your current dependence on Fire-Fox, two Add ons and the commands you develop but the TiddlyDesktop lets you do a lot more directly.

But it's all your choice, I just want to ensure you are well informed.

Regards
Tony

Cd.K

unread,
Sep 4, 2019, 2:44:31 PM9/4/19
to tiddl...@googlegroups.com
TonyM

I found another way, independent from firefox and I just need to click, i.e. without context menu.

I have set up new URIs under windows 10:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\npp]
@="URL: Notepad++"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\npp\DefaultIcon]
@="\"notepad++.exe, 1\""

[HKEY_CLASSES_ROOT\npp\shell]

[HKEY_CLASSES_ROOT\npp\shell\open]

[HKEY_CLASSES_ROOT\npp\shell\open\command]
@="E:\\Dev\\projects\\src\\go-cookbook\\npp_start.exe %1"


[HKEY_CLASSES_ROOT\xpp]
@="URL: Explorer"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\xpp\DefaultIcon]
@="\"explorer.exe, 1\""

[HKEY_CLASSES_ROOT\xpp\shell]

[HKEY_CLASSES_ROOT\xpp\shell\open]

[HKEY_CLASSES_ROOT\xpp\shell\open\command]
@="E:\\Dev\\projects\\src\\go-cookbook\\xpp_start.exe %1"


npp_start.exe and xpp_start.exe are go programs to process the parameters from the URI and start the desired programs.

I had to change the following javascripts in the core:

\core\modules\parsers\wikiparser\rules\extlink.js
\core\modules\utils\utils.js
\core\modules\parsers\wikiparser\rules\prettylink.js

And here's the result:


04-09-_2019_20-42-18.png


A click on the last link above

[[xpp: Test directory \git\TW |xpp:D:\TiddlyWiki\My_TiddlyWikis\git\TW]]

produces:


04-09-_2019_20-57-43.png


 This is a windows standard explorer with QtTabBar. 

Regards
Cd.K

Cd.K

unread,
Sep 4, 2019, 3:57:03 PM9/4/19
to tiddl...@googlegroups.com
TonyM

Here's the relevant detail to switch von RunWith native messaging host to Timimi.

In RunWith's background.js one have to change after the line "var msg = {":


 
var note = {
       
exec:    "yes",
        escript
: action[0],
        eparam
:  info.selectionText.trim()
 
}    
 
// console.log('Cd.K note: %s', JSON.stringify(note));
 
// console.log('About to run: %s', JSON.stringify(msg));

 
// var sending = browser.runtime.sendNativeMessage(nmhost, msg);
 
var sending = browser.runtime.sendNativeMessage(nmhost, note);
  sending
.then(onNmResponse, onNmError);


Regards
Cd.K



On Thursday, August 22, 2019 at 2:29:23 AM UTC+2, TonyM wrote:

TonyM

unread,
Sep 5, 2019, 9:13:45 PM9/5/19
to TiddlyWiki
CD.K

This looks very interesting, but I am not sure how to turn this into a reality myself.

I am not sure I understand the following as an example
  • What are Go programs
  • Where is the javascript in the second reply
  • to switch von RunWith native messaging host to Timimi. 

    Thanks for sharing this looks like an interesting approach to followup.

    Regards
    Tony

    Cd.K

    unread,
    Sep 6, 2019, 9:14:09 AM9/6/19
    to TiddlyWiki
    Hi Tony,

    Go programs are programs in the language GO. Go is similar to JavaScript but much faster and must be compiled. The native messaging host of timimi is in GO. You can get more details here: git timimi documentation: Why timimi? Go routines

    The JavaScript background.js is part of the firefox add-on RunWith.

    Both AddOns need to be installed but not the native messaging host (nmh) of RunWith. Start with timimi to see how it works. Then go further with the firefox part of RunWith and do the switching of nmh.



    Regards
    Cd.K

    TonyM

    unread,
    Sep 6, 2019, 8:10:43 PM9/6/19
    to TiddlyWiki
    Thanks C.dK

    Cd.K

    unread,
    Sep 7, 2019, 10:52:43 AM9/7/19
    to TiddlyWiki
    Tony

    You're welcome.
    Reply all
    Reply to author
    Forward
    0 new messages