Total confusion

138 views
Skip to first unread message

joearms

unread,
Mar 4, 2018, 10:53:05 AM3/4/18
to TiddlyWikiDev
Hello,

I'm *very* confused - using TW5 node server

In my Recent tab I have a tiddler called

"Draft of 'My test tiddler'"

If I click on them I get a tiddler in an open editor
And the top Left hand corner says

Draft of 'My test tiddler'

(so I'm editing the draft)

If I click on the Dustbin it says in a popup

   Do you wish to delete the tiddler "My test tiddler"?

But I'm editing "Draft of 'My test tiddler'" (Not "my test tiddler")
the word 'Draft of ' is missing

<I think this is a bug>

If I click on OK "My Test tiddler" and the Draft vanish AND
"My test tiddler" - I've lost tiddlers this way :-(

If I click on Cancel the draft is still in recents.

The only reliable way seem to manually delete all the Draft
files in the tiddler directory and restart the node server.

A I doing something wrong - or is this a bug?

/Joe





PMario

unread,
Mar 5, 2018, 5:26:53 AM3/5/18
to TiddlyWikiDev
Hi Joe,

That's intentional. The "Draft of" tiddler is a "clone" of the tiddler you want to edit.
Using the draf to edit a tiddler is the only way to implement a "canceling system", which reverts back to the original.

If you use the toolbar: "cancel-button", the draft will be deleted, without modifying the original tiddler.

Jeremy wanted to save "Draft of" tiddlers, so you can save and leave your TW, keeping the "Draft of".
So if you start the system the next time, they will be still there. ...

So just say: "OK" or "Cancel" and the drafts will be gone.

-mario

joearms

unread,
Mar 5, 2018, 3:05:37 PM3/5/18
to TiddlyWikiDev
Yes - I've realised what's confusing me -

As you say there are actually two tidders 
XXX and Draft of 'XXX' (and two files on disk)

So the Dustbin icon in edit mode
which says 'Delete this tiddler'
means delete TWO tiddlers (Draft of 'XXX' and 'XXX')

And the X which says "Discard changes to this tiddler"
means "delete the Draft tiddler" and Deletes ONE tiddler

so "this" means two files (dustbin) or one file (cross) :-)

This error occured after I'd been editing a while and notice
I have 'Draft of XXX' and 'XXX'in my recents and want to
clean up.

Funny thing is I no longer make this mistake -

I guess after a few days use my brain internalises
the correct commands so I don't make the mistakes 
I made a few days ago.

So now I'm scratching my head and wondering why I was confused yesterday.

There is a very small gap between not understanding and understanding
(can be a few hours or days) - once you understand something it
becomes very difficult to get back into the mindset of the gap, and you
need to be in this gap (mentally) when writing a tutorial - ie understand
both how it works and why a beginner does not understand.

That's why I'm bothering your patience with my questions -
Google will index the replies which might help in the future.

So an old dog can learn new tricks

/Joe


 
-mario

PMario

unread,
Mar 5, 2018, 5:46:28 PM3/5/18
to TiddlyWikiDev
On Monday, March 5, 2018 at 9:05:37 PM UTC+1, joearms wrote:
As you say there are actually two tidders 
XXX and Draft of 'XXX' (and two files on disk)

Yes. ... Jeremy wanted to save the "Draft" state. So even nodejs server version saves those changes immediately. .. This is ok for a local system, but for an online
system it is sub-optimal. ... But the server was intended to be a dev-server.
 
So the Dustbin icon in edit mode
which says 'Delete this tiddler'
means delete TWO tiddlers (Draft of 'XXX' and 'XXX')

right
 
And the X which says "Discard changes to this tiddler"
means "delete the Draft tiddler" and Deletes ONE tiddler

right
 
so "this" means two files (dustbin) or one file (cross) :-)

right. In the "file based" TiddlyWiki version it's not so obvious, that there are actually 2 tiddlers, because there is only 1 HTML file. But if every tiddler is one file, we can see it.

This error occured after I'd been editing a while and notice
I have 'Draft of XXX' and 'XXX'in my recents and want to
clean up.

Yes. That can happen at the beginning. .. The browser standard text editor keeps track of some changes, so we can do CTRL-Z for undo and CTRL-SHIFT-Z for redo. But we also want to "completely" undo changes, if we don't like them. ...
 
Funny thing is I no longer make this mistake -

:)

I guess after a few days use my brain internalises
the correct commands so I don't make the mistakes 
I made a few days ago.

Yea, TW has a learning curve.
 
So now I'm scratching my head and wondering why I was confused yesterday.

:)
 
There is a very small gap between not understanding and understanding
(can be a few hours or days) - once you understand something it
becomes very difficult to get back into the mindset of the gap, and you
need to be in this gap (mentally) when writing a tutorial - ie understand
both how it works and why a beginner does not understand.

That's why feedback from newbie users is so important for us... developers. We don't see the problems anymore.
 
That's why I'm bothering your patience with my questions -
Google will index the replies which might help in the future.

NP. You are welcome :)
 
So an old dog can learn new tricks

:)  ... For the nodejs server, there is one more file, which may come up in the future. the .meta file.
eg:

 - If you create a new tiddler named: test
 - set the type to text/plain
 - It will save a file name: test.txt  and
 - a text.meta file

 - text.txt contains the text content only.
 - The meta file contains the tiddler meta info. Such as tags, title, modified ... and so on.

Similar things happen for .jpg, .png, .md files.

Just to let you know ;)

-m

TonyM

unread,
Mar 10, 2018, 10:52:38 PM3/10/18
to TiddlyWikiDev
Joe,

Here is something I posted previously, that may help Old Dogs grasp TiddlyWiki. I came from a procedural language background and I was beating my head against the wall a few times grasping how tiddlywiki works. 

A conceptual outline. What follows is part of draft work in progress

If you stop to think about it, in tiddlywiki, everthing references almost everything and any change is reflected almost everywhere and instantaniously. These updates occur with any change at all, at least anything you can see, any new item you look at will update when you open it. keep in mind a simple click can be enough to make a change stored behind the sceens.

since tiddlywiki is always upto date, you could say it does everthing just in time (for you to look at it). its just in time for every relavant context as well. until everything is rendered for you to see it, you can not do anything. this is why sometimes you just have to wait. its the price we pay for everything to be up todate. this just in time method in someways prohibits batch processes, you could say its not procedural but contextual and just in time.

With few exceptions if any. all changes come from the user, and when they do everything that must be changed is and rendered in the new context. this seems to be the essence of event driven processes that keep all objects and their attributes upto date just in time.

Of course there are differences when you actualy change something vs just changing your view or context.

The above account in someways explains why i did not initialy understand why you need buttons and similar to trigger any action because tiddlywiki waits until you change something including pressing a button before it acts, reevaluates the context, updates everything it must and renders it just in time.

this model will not nessasarily be a supprise to anyone who is a webdevloper, object and event driven coder, and strangly anyone who coded online transaction based mainframes. it can however take someone with advanced proceedural languages and batch programming time to grasp,

this structure also sheds light on tiddlywiki not responding naturaly to multi user updates, though fine with multiuser read only.

End of example conceptual outline.

PMario

unread,
Mar 11, 2018, 7:16:45 AM3/11/18
to TiddlyWikiDev
On Sunday, March 11, 2018 at 4:52:38 AM UTC+1, TonyM wrote:
...

this structure also sheds light on tiddlywiki not responding naturaly to multi user updates, though fine with multiuser read only.

That's not 100% true. ... It only doesn't react on multi user changes, because there is no code at the moment, that triggers the "change" event. ... The "change" event is triggered every time, the tiddlywiki store is changed. As you described it. ...

The problem is, we would need an adapter - syncer combination, that deals with the new info, without breaking or confusing the existing mechanisms. ... To find the right places, where to inject the new code, is a bit tricky. ...

-m


Jeremy Ruston

unread,
Mar 11, 2018, 10:05:29 AM3/11/18
to tiddly...@googlegroups.com
Are you talking about propagating changes between users? There is already a mechanism whereby the browser polls the server for changes to tiddlers made by other users. It currently only triggers every 60 seconds by default, but it works.

Best wishes

Jeremy.


-m


--
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 tiddlywikide...@googlegroups.com.
To post to this group, send email to tiddly...@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywikidev.
To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywikidev/df698718-0063-49ca-aa58-f520d0b38fbd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages