Thanks Mohammad

Its great the user can set the Diff settings without having to hack 
commander code!

FYI, a lot of the time the user won't see much difference between the 
"cleanup" settings. 
But sometimes they will really help.

I'm now working on a "Tutor" module for snr that is non-destructive, that 
only changes a temporary tiddler that can be restored. 
Will take a bit of time yet.

This may include a css "hider" for the three states of diff: equal, 
inserted, deleted that can help you see what is happening.
Maybe from this ...

[image: Annotation 2019-03-24 131357.jpg]


... to this kind of thing ...

[image: Annotation 2019-03-24 132828.jpg]

 

Best wishes
Josiah

Mohammad wrote:
>
>  Commander now accepts the cleanup option in Setting tab!
>
> Have a look at the latest update.
>
> --Mohammad
>
> On Saturday, March 23, 2019 at 2:14:14 AM UTC+4:30, @TiddlyTweeter wrote:
>>
>> Thanks Mohammad
>>
>> I enjoy it as I really like regular expressions.
>>
>> Today I experimented with the DiffTextWidget attributes and think for SNR 
>> that attribute *cleanup="none"* is likely best default.
>>
>> In a few days I'll make a demo so we can look at it closer.
>>
>> Best wishes
>> Josiah
>>
>> On Friday, 22 March 2019 06:18:30 UTC+1, Mohammad wrote:
>>>
>>> Hi Josiah,
>>>  Many thanks for your efforts. It is possible to set cleanup parameter 
>>> of diff-text to other value or add settings to lets user choose among them.
>>>
>>> --Mohammad
>>>
>>> On Friday, March 22, 2019 at 3:31:32 AM UTC+4:30, @TiddlyTweeter wrote:
>>>>
>>>> Ciao Jeremy, Mohammad and all interested
>>>>
>>>> I spent a day trying to get my head round this to get clearer. 
>>>>
>>>> It was productive. 
>>>>
>>>> I realised after a few hours of noodling about that the default in TW 
>>>> for the diff engine--as well documented in DiffTextWidget 
>>>> <https://tiddlywiki.com/#DiffTextWidget> I only then understood--is 
>>>> the library's default "semantic" styling was part of the issue. And some 
>>>> of 
>>>> the issues I commented and displayed on do come from that.
>>>>
>>>> I think that for *regular expressions* one of the other two attributes 
>>>> might be better--"efficient" or "none". 
>>>>
>>>> I am talking with Mohammad to figure that out and test alternatives.
>>>>
>>>> Many thanks Jeremy. 
>>>> Not least because after a day of testing elsewhere I see your TW 
>>>> implementation is exactly the same as the "diff-match-patch"  JS version 
>>>> everywhere else.
>>>>
>>>> Best wishes
>>>> Josiah
>>>>
>>>>
>>>>
>>>> On Tuesday, 19 March 2019 22:24:17 UTC+1, Jeremy Ruston wrote:
>>>>>
>>>>> Hi Josiah
>>>>>
>>>>> To explain it another way, the example diff you quoted earlier was 
>>>>> "correct", in that it is an accurate depiction of a set of modifications 
>>>>> which will turn the first string into the second. The problem is that 
>>>>> what 
>>>>> an algorithm sees as a reasonable way to display the differences may not 
>>>>> match a human narrative of the changes. It's a general problem with diff 
>>>>> engines, and they all devote a lot of attention to trying to improve 
>>>>> human 
>>>>> readability. The diff engine we're using is pretty much the state of the 
>>>>> art. There's no magic solution: we can tweak the parameters that drive 
>>>>> the 
>>>>> heuristics used for diffing, but we will find that any given set of 
>>>>> parameters will be good in some scenarios but not others. There's no 
>>>>> magic 
>>>>> solution which will work in all situations; that's what I meant by saying 
>>>>> that it's one of those tricky problems of computer science :)
>>>>>
>>>>> Best wishes
>>>>>
>>>>> Jeremy
>>>>>
>>>>>
>>>>> --
>>>>> Jeremy Ruston
>>>>> jer...@jermolene.com
>>>>> https://jermolene.com
>>>>>
>>>>> On 19 Mar 2019, at 20:36, @TiddlyTweeter <tiddly...@assays.tv> wrote:
>>>>>
>>>>> Jeremy
>>>>>
>>>>> I definitely think access to change parameters could be helpful.
>>>>>
>>>>> In the case of SNR one needs a logical consistent representation. It 
>>>>> doesn't matter if its very long--so long as its consistent.
>>>>>
>>>>> The biggest problem at the moment is the Diff. Engine creates a mix of 
>>>>> representations that can quickly get visually inconsistent. 
>>>>>
>>>>> That is seriously confusing for the end user who is already grappling 
>>>>> with learning regular expression syntax.
>>>>>
>>>>> Best wishes
>>>>> Josiah
>>>>>
>>>>> On Tuesday, 19 March 2019 20:45:00 UTC+1, Jeremy Ruston wrote:
>>>>>>
>>>>>> Hi Josiah, Mohammad,
>>>>>>
>>>>>> The core uses Google's Diff-Match-Patch library by Neil Fraser:
>>>>>>
>>>>>> https://github.com/google/diff-match-patch
>>>>>>
>>>>>> It turns out that reliably creating human-readable diffs is one of 
>>>>>> those tricky problems in computer science that doesn't have a clean 
>>>>>> solution. The docs for the library discuss some parameters that can be 
>>>>>> tweaked to control things:
>>>>>>
>>>>>> https://github.com/google/diff-match-patch/wiki/API
>>>>>>
>>>>>> Maybe we should expose all of the parameters as attributes on the 
>>>>>> DiffTextWidget, making it easier for people to experiment with different 
>>>>>> settings.
>>>>>>
>>>>>> Best wishes
>>>>>>
>>>>>> Jeremy
>>>>>>
>>>>>> --
>>>>>> Jeremy Ruston
>>>>>> jer...@jermolene.com
>>>>>> https://jermolene.com
>>>>>>
>>>>>> On 19 Mar 2019, at 15:13, Mohammad <mohammad...@gmail.com> wrote:
>>>>>>
>>>>>> What Josiah said can be tested on SNR at
>>>>>>
>>>>>> https://kookma.github.io/TW-Commander/
>>>>>>
>>>>>> It seems the Tiddlywiki diff-text works fine for simple cases like 
>>>>>> alphanumeric but working with more complex cases like regexp, it 
>>>>>> encounter 
>>>>>> difficulties.
>>>>>>
>>>>>> --Mohammad
>>>>>>
>>>>>> On Tuesday, March 19, 2019 at 5:08:54 PM UTC+3:30, @TiddlyTweeter 
>>>>>> wrote:
>>>>>>>
>>>>>>> The Difference Engine is an incredibly useful feature of TW. For 
>>>>>>> writers, for coders, for versioning systems that are now commonly used. 
>>>>>>> And, more recently, in tools like Mohammad's regular expressions based 
>>>>>>> Search-n-Replace.
>>>>>>>
>>>>>>> The problem is its visual presentation (it does not harm the 
>>>>>>> writing, it just) under some circumstances is extremely misleading.
>>>>>>>
>>>>>>> For instance ... Actually the edit here was only to remove *<* & > but 
>>>>>>> the differences shown are very confusing with many items in green and 
>>>>>>> pink 
>>>>>>> that should not be, and with inconsistent presentation that is even 
>>>>>>> more 
>>>>>>> confusing.
>>>>>>>
>>>>>>> I wonder if it can be made more accurate?
>>>>>>>
>>>>>>> [image: diff-view-5.jpg]
>>>>>>>
>>>>>>>
>>>>>>> Best wishes
>>>>>>> Josiah 
>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "TiddlyWiki" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to tiddlywiki+...@googlegroups.com.
>>>>>> To post to this group, send email to tiddl...@googlegroups.com.
>>>>>> Visit this group at https://groups.google.com/group/tiddlywiki.
>>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/tiddlywiki/f66e485c-50c8-4ca0-9c92-47c1363c9ca3%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/tiddlywiki/f66e485c-50c8-4ca0-9c92-47c1363c9ca3%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "TiddlyWiki" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to tiddlywiki+...@googlegroups.com.
>>>>> To post to this group, send email to tiddl...@googlegroups.com.
>>>>> Visit this group at https://groups.google.com/group/tiddlywiki.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/tiddlywiki/b20a5e11-8a1e-4b69-931d-2f58bce7da60%40googlegroups.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/tiddlywiki/b20a5e11-8a1e-4b69-931d-2f58bce7da60%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/72f8761f-cc52-4a2f-bdda-cd78e070f95c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to