Page MenuHomePhabricator

"Transfer end" template in the Hebrew Wikipedia breaks DiscussionTools on some talk pages
Closed, ResolvedPublicBUG REPORT

Description

Sorry, this bug report includes a lot of page titles that are not written in the Latin alphabet. Please ask me for clarifications if needed.

The Hebrew Wikipedia often uses the "transfer" template on talk pages. It's Hebrew title is {{הועבר}}. It's used to mark section of talk pages that were moved from other talk pages, and it's used very frequently.

On this page (the Template talk page of Template:Language), this template is used twice in the second section (its title is "התאמת תבנית:שפה לתרגום מאנגלית"):

  1. The first time, after the title of the section, as "הועבר" ("transferred").
  2. The second time, in the middle of the section, as "סוף העברה" (Transfer end). This is another template, which calls the הועבר template with a parameter, and marks the end of the copied text.

I cannot use the "Reply" link in that section. When I try it, I see the discussiontools-error-comment-is-transcluded error message.

If I edit the section and remove the "סוף העברה" template, then I am able to use Reply button.

Maybe it's a bug in the DiscussionTools extension, and maybe it's a bug in one of these two templates, הועבר or סוף העברה. I tried debugging them, but I couldn't find what the problem is by myself.

Any help will be appreciated. We received a notification about Discussion Tools in the Hebrew Wikipedia Village pump a few days ago, and if I understand it correctly, it will go out of beta in the next few days. Since these templates are very common on talk pages in the Hebrew Wikipedia, it would be very nice to get it fixed. Otherwise, DiscussionTools will be dysfunctional on many of talk pages.

Thanks :)

Event Timeline

For me, all links before the second {{סוף העברה}} template (i.e. up to and including the August 31, 01:48 (IDT) comment) work, only the September 6, 19:28 (IDT) comment’s and its replies’ links don’t. I think the latter is because https://www.mediawiki.org/wiki/Help:DiscussionTools/Why_can%27t_I_reply_to_this_comment%3F#Accidental_complex_transclusion

For me, all links before the second {{סוף העברה}} template (i.e. up to and including the August 31, 01:48 (IDT) comment) work, only the September 6, 19:28 (IDT) comment’s and its replies’ links don’t. I think the latter is because https://www.mediawiki.org/wiki/Help:DiscussionTools/Why_can%27t_I_reply_to_this_comment%3F#Accidental_complex_transclusion

Thanks for this addition! What I still fail to understand, though, is why does this template make the HTML invalid.

The whole page’s HTML is not invalid, but the formatting started in the template ends outside of it:

<!-- this is from the template -->
  <dl><dd>
  - <small>סוף העברה</small>
<!-- /this is from the template -->
  <a href="/wiki/%D7%9E%D7%A9%D7%AA%D7%9E%D7%A9:%D7%91%D7%95%D7%A8%D7%94_%D7%91%D7%95%D7%A8%D7%94" title="משתמש:בורה בורה">בורה בורה</a> - <a href="/wiki/%D7%A9%D7%99%D7%97%D7%AA_%D7%9E%D7%A9%D7%AA%D7%9E%D7%A9:%D7%91%D7%95%D7%A8%D7%94_%D7%91%D7%95%D7%A8%D7%94" title="שיחת משתמש:בורה בורה">שיחה</a> 19:28, 6 בספטמבר 2021 (IDT)
  </dd>
  <!-- ... -->
  </dl>

(I made some whitespace changes and removed the reply tool’s markup for clarity.) The <dl><dd> is opened by the template (using the : wikitext syntax), but later closed by the end of line (<dd>) / end of page (<dl>) outside of it.

As the help page suggests, opening the page in VisualEditor and selecting the template makes the clearly visible.

Thanks @Tacsipacsi, that's exactly the problem.

As for resolving it… @Amire80 Would it be okay to make a change to https://he.wikipedia.org/wiki/תבנית:הועבר and replace :- with <span style="padding-right: 1.6em;"></span>-? This way will generate a visually similar indent, but without generating the <dl>…</dl> markup that leaks out of the template.

I can make that change myself, but I wanted to consult first since it's a high-use template.

I changed it. Seems to work. Thanks for the suggestion. If it breaks anything else, I'll let you know ;)