Jump to content

Template talk:Text diff

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
(Redirected from Module talk:Diff/doc)

Lint errors

[edit]

This template is causing missing end tag, stripped tag, and misnested tag lint errors, and it seems that this is associated with line breaks or multiple blocks in either or both of the main parameters. Here are some pages that use this templates and have such errors:

If this can fixed, it should be fixed. If it can't be fixed, it should be documented what markup causes these problems. —Anomalocaris (talk) 00:34, 7 October 2023 (UTC)[reply]

Jonesey95: Thank you for fixing Template:TextDiff/doc to acknowledge that this template is good for inline use only. Unfortunately, it is already widely deployed with multi-paragraph arguments, so it would be good if somebody gets this thing to work in such contexts. —Anomalocaris (talk) 22:10, 3 December 2023 (UTC)[reply]

As you might have seen, I did some experimenting in the template sandbox and created a testcases page. It was not fruitful, for the most part. I don't know enough Lua or CSS, one of which might be able to help resolve the problem, to install a fix in the module. – Jonesey95 (talk) 23:29, 3 December 2023 (UTC)[reply]
I am returning to this issue after some time. It still exists. I have replaced the minimal block-content test case with a smaller example that still shows an error. The relevant bit of the rendered wikitext appears to be an untranslated line break after "1947)":
<div style="word-wrap: break-word; direction: ltr;">Jane Doe<ins class="diffchange diffchange-inline" style="background: var(--background-color-content-added,#a3d3ff); color: inherit; padding: 0.25em 0; font-weight: bold; text-decoration: initial;">&#32;</ins><ins class="diffchange diffchange-inline" style="background: var(--background-color-content-added,#a3d3ff); color: inherit; padding: 0.25em 0; font-weight: bold; text-decoration: initial;">(born</ins>&#32;<ins class="diffchange diffchange-inline" style="background: var(--background-color-content-added,#a3d3ff); color: inherit; padding: 0.25em 0; font-weight: bold; text-decoration: initial;">1947)</ins><ins class="diffchange diffchange-inline" style="background: var(--background-color-content-added,#a3d3ff); color: inherit; padding: 0.25em 0; font-weight: bold; text-decoration: initial;">&#32; 
&#10;&#10;</ins><ins class="diffchange diffchange-inline" style="background: var(--background-color-content-added,#a3d3ff); color: inherit; padding: 0.25em 0; font-weight: bold; text-decoration: initial;">&#61;&#61;Early</ins>
Note the &#32; (an encoded space followed by an unencoded space) followed by a line break in the rendered code, then &#10;&#10;</ins>, which represents two encoded line breaks and then a closing ins tag.
The unencoded line break inside the <ins>...</ins> tag, which is an inline-only tag, as far as I know, may be the problem. I have a hypothesis that if the module code could encode the line break, the <ins>...</ins> tags would no longer contain line breaks and would not complain. If there are any Lua coders who can take a look at the sandbox module code and figure out a way to test this hypothesis, that may be helpful.
The translation from plain text to encoded text may be performed by the Lua mw.text.nowiki function, if I am reading the code correctly. It may not be encoding enough of the line breaks. – Jonesey95 (talk) 01:54, 15 November 2024 (UTC)[reply]
I'll try to look at this over the weekend. Meanwhile, see User:Johnuniq/sandbox2 where I posted just the minimal test using {{Text diff/sandbox}}, then added something to show the wikitext from the template (it looks ok on a big screen). Page information shows stripped-tag and html5-misnesting errors for ins. Johnuniq (talk) 04:47, 15 November 2024 (UTC)[reply]
Thanks for looking at it. I wonder if that Module:dump output is accurate. It does not have a line break in the
>&#32;  &#10;&#10;</ins>
code after "1947)" but Special:ExpandTemplates does have a line break, which is where the stripped-tag and html5-misnesting errors for <ins>...</ins> are. – Jonesey95 (talk) 04:55, 15 November 2024 (UTC)[reply]
Hmmm, it might not be accurate about that because dumphtml tries to show formatted html and it could be skipping a newline. I'll think about that. Johnuniq (talk) 05:53, 15 November 2024 (UTC)[reply]

This has also been previously brough up at Wikipedia talk:Linter/Archive 3#del and ins tag errors. All I really remember is something about newlines being part of the difference was causing issues, though I don't remember (or have) any ideas for a fix. Aidan9382 (talk) 08:06, 15 November 2024 (UTC)[reply]

I've come up with a potential fix idea here. Not sure if it's the cleanest way of fixing it, but it seems to solve the linter issues and still seems to render fine, if a little bit different (stacks of newlines are a bit shorter). Aidan9382 (talk) 08:15, 15 November 2024 (UTC)[reply]

The highlighting doesn't always match MediaWiki's

[edit]

Example: [1]

In the example, the template currently highlights "correspondence)" and the comma. However, both were untouched and should thus probably not be highlighted. MediaWiki gets it right, the template currently doesn't. ~ ToBeFree (talk) 07:09, 8 July 2024 (UTC)[reply]