Cleanup...(Part 2)Edit

I recentyl finished cleaning out the 'missing-end' tage linter of block level tags as far as I was able.

Any chance you could add to your list of ongoing projects, cleanup of ns0 works using raw HTML elements that are not recomended?

Like use of the HTML tags BLOCKQUOTE, FONT and CENTER directly.

Many older direct HTML usages in ns0 have templated equivalents now :)

See also:-

Can you think of other 'clunky' direct HTML coding that a regexp can find, and replace with a (semanticly meaningful) templated alterantive? ShakespeareFan00 (talk) 13:38, 23 January 2022 (UTC)

@ShakespeareFan00: One thing that comes to mind is <p> tags. I don't know how easy they'd be to replace automatically, but they're definitely not necessary, and can be found pretty easily. Do you have a list of non-recommended HTML coding? —CalendulaAsteraceae (talkcontribs) 19:16, 30 January 2022 (UTC)
There are places where <p> tags are preferred, such as in headers where a paragraph break is needed in text set as a parameter value. Without the tag, the text overlaps the bottom margin. --EncycloPetey (talk) 19:22, 30 January 2022 (UTC)
Good to know; thank you! —CalendulaAsteraceae (talkcontribs) 19:23, 30 January 2022 (UTC)

Thank you..Edit

For resolving some of those long-standing LintErrors.

You'll be working through the 2,000 or stripped tags in Page:Namespace? (They don't transfer over into main namespace suggesting they are mostly unpaired templates, or header, footer content related?.

The strategy I had at one point was to resolve all the mis-nesting, then the stripped tags, and then the missing ones. When all the tags were matched up, it would be a lot more straightforawrd to resolve all the obselete formatting, given that a large proportion of that task could be automated.

You might find some of my Template tweaks useful in resolving even more LintErorrs and formatting glitches:-

Such as:- use the text parameter with the wikitext you want to place inside the span. An example would be

{{span|dpb|ac|text=Centered Text}}

can be used as a replacement for {{center}} and {{c}} where the content is inside another span (such as a {{float right}} or {{float left}} or various sidenotes. If inside a ref tag, remember to use {{blockref}} tag at the start of the REF tag, so that when certain limitations in Mediawiki are removed the relevant markup can be changed back. headings can now have an anchor set directly by using the heading template. Use the title or @ parameter, to override the default that would otherwise be generated. I implemented this so that headings with complex formatting could have sane anchors. :)

{{*/s}} and related may be useful for lists you want to class, I wrote the templates as work-around for not being able to style Mediawiki style lists directly, so that I could apply Indexstyles/Templatestyles to lists, and have list items, with multiple blocks/paragrpahs as needed. (NB. You might want to update the documentation to be more comprehensive). (NB you will need to use explicit {{*/e}} at the end of a list or sublist though.

Hope this helps. (If you want I can I think generate a list using pywikibot of 'Stripped Tag' pages that are nominally validated (ql:4)?) ShakespeareFan00 (talk) 08:56, 25 May 2022 (UTC)


The following PAWS results set, has some entries in that I didn't feel comfortable updating. Perhaps you'd care to take a look? ShakespeareFan00 (talk) 18:29, 26 May 2022 (UTC)

@ShakespeareFan00: I got a 404 for that one, but I would be happy to take a look at those pages. Would also appreciate a list of validated 'Stripped Tag' pages. —CalendulaAsteraceae (talkcontribs) 20:46, 26 May 2022 (UTC)
Hmm - Try it again now - , I'll see what I can some up with for what you mention :) ShakespeareFan00 (talk) 21:34, 26 May 2022 (UTC)

@CalendulaAsteraceae: On your second point - - 500 or so pages, and I had to fix some 'funky' titles or the query didn't run correctly. ShakespeareFan00 (talk) 22:24, 26 May 2022 (UTC)

@CalendulaAsteraceae: I also generated some queries for the other quality levels:-

I've not generated a list for missing tags as they tend to be a bit larger. ShakespeareFan00 (talk) 10:09, 27 May 2022 (UTC)

Use of templateEdit

Hi @CalendulaAsteraceae:, you have removed Template:Index progress bar from Wikisource:WikiProject The New Church but you didn't give an explanation why. Is there a reason I shouldn't be using it? I'd like to use it as it's helpful for showing the progress of each individual work. Thanks Jpez (talk) 05:27, 30 May 2022 (UTC)

@Jpez: Using {{index progress bar}} inside a gallery makes the page show up in Special:LintErrors/multiline-html-table-in-list. I agree it would be nice to use that template in the galleries instead of {{galtext}}. I can look into it. —CalendulaAsteraceae (talkcontribs) 05:38, 30 May 2022 (UTC)
ok thanks Jpez (talk) 04:36, 31 May 2022 (UTC)

Conversion of articles to <pages> formatEdit

Hi, thanks for converting some EB1911 articles to <pages> style, but I found an issue (which I've since corrected) when you edited Echinoderma. By using the "onlysection" parameter, you're assuming every page in the range has a section tag. Page:EB1911 - Volume 08.djvu/906 was missing a tag (now added) and so it's content wasn't displaying. Is there an easy way to check that other EB1911 articles you've converted include pages that might also be missing a section tag? Thanks – DivermanAU (talk) 22:54, 9 June 2022 (UTC)

@DivermanAU: I don't know of a good way to search my contributions in particular, but this search query should get you most of the potentially problematic pages. —CalendulaAsteraceae (talkcontribs) 05:37, 10 June 2022 (UTC)
Thanks for the query - but there's a lot of pages in the report but no indication if any have problems. Would the Source Checker ( ) reveal the issue? DivermanAU (talk) 12:07, 10 June 2022 (UTC)
@DivermanAU: The Checker tool (or the new JS-based replacement being tested, see WS:S) will let you find pages that are unexpectedly not transcluded on a single index. I'm not aware of any tool that will give you that kind of info across a set of indexes. Xover (talk) 13:35, 10 June 2022 (UTC)
Incidentally, this is why I think it's best to use fromsection/tosection by default and only break out the onlysection approach in exceptional cases (e.g. where fromsection will be extra tedious, or in cases where you have full control and can plan your transclusions based on it). I've made this particular mistake a few too many times. :) Xover (talk) 08:13, 10 June 2022 (UTC)
I did an experiment by creating Militia (which spans three pages) and deliberately using "onlysection" and leaving one page without a section tag (so that page did not display, as expected). Unfortunately when I ran the Source Checker I mentioned above, it regarded the page Page:EB1911 - Volume 18.djvu/474 as being transcluded even though the text from the page did not appear in the article. I assume the Checker only looks to see if a page is included in a range, and not whether that page has a section tag which is specified in the page range.
I've since added a section tag to the page in question so it appears in the article now. DivermanAU (talk) 21:17, 10 June 2022 (UTC)
Oh, weird. I'm guessing this is caused by the proofreadpage extension (or possibly LST, which PRP uses under the hood for this) generating a dependency on that page as a whole, but then filtering out its contents on display due to the onlysection. As far as MediaWiki is concerned, the page has been transcluded even if none of its contents are displayed anywhere. Xover (talk) 23:10, 10 June 2022 (UTC)



Thanks for all your work on consolidating and Lua-fying all the license templates! It's been on my todo list for ages so I'm very happy to see progress being made here.

But some unsolicited advice / general musings without having looked closely at the code… As a rule of thumb type thing, I get a bit worried when so many different things are being consolidated into a single module. That tends, in general, to lead to unwieldy and complicate code, which in turn tends to be fragile or hard to maintain code. Despite the obvious similarities, there are many different logics at work in the different PD templates, which may be best handled in related-but-separate modules (or it may not). Similarly, it's usually sound practice to separate concerns: put completely generic logic in a lower-level "infrastructure" module used by the core business logic; and farm the layout and text strings out to a template so it can be edited independently of the core business logic.

You may already be well aware of such rules of thumb, and they may not be relevant in the current case, but I figured I'd mention it just in case it's useful. Feel free to ignore me or tell me to go suck eggs if it's not. :-) Xover (talk) 09:51, 4 October 2022 (UTC)

That is in fact new and relevant advice for me, so thank you :-) I'll think about what makes sense in this case. —CalendulaAsteraceae (talkcontribs) 23:53, 5 October 2022 (UTC)
@Xover: Speaking of Lua-fying things, could I ask you to take a look at Module:Do not move to Commons and {{Do not move to Commons/sandbox}}? Something is clearly not working here but I'm not sure what. —CalendulaAsteraceae (talkcontribs) 04:53, 8 October 2022 (UTC)
This is what we usually refer to as a "braino". :) Xover (talk) 10:53, 8 October 2022 (UTC)
@Xover Well, I'm glad I asked! Do you know why when I reload Wikisource:Sandbox the images briefly show up and then disappear? —CalendulaAsteraceae (talkcontribs) 16:18, 8 October 2022 (UTC)
@CalendulaAsteraceae: Hmm. That looks like a new and exciting bug in dynamic layouts. Though I don't immediately see what's going on there. If you need to debug without interference you can just turn off the dynamic layouts in your Gadgets preferences for now. Xover (talk) 16:27, 8 October 2022 (UTC)
@Xover: Cool, thanks :) I'd be hesitant to migrate {{Do not move to Commons}} to the module while this bug is in play; is there somewhere I should report it? —CalendulaAsteraceae (talkcontribs) 02:47, 9 October 2022 (UTC)
Well, Inductiveload is the one responsible for its current state of "pretty darn decent, actually"; but as they're rather busy IRL these days I was planning to have a look myself as soon as I can find the spare cycles. No promises on when that'll be, or how long it'll take. As mentioned, I observe that the problem goes away when I disable the dynamic layouts, but I have no idea why the dynamic layouts would lead to this problem. Figuring out what's going on may take quite a bit of digging (or it may not). Xover (talk) 08:05, 9 October 2022 (UTC)
Makes sense, and thank you! —CalendulaAsteraceae (talkcontribs) 00:25, 10 October 2022 (UTC)
Just to update the status: I think I've found the cause for this, but I'm not sure I fully understand all the mechanisms playing into it, and I still don't know how we're going to fix it. The short-short version is that the specific style rules used for the message box, when combined with a too narrow container width, ends up leaving no horizontal space for the images to display in. They're there, but 0px wide. It probably only happens with dynamic layouts (not all narrow windows) because it changes the container width after the web browser has calculated the table's dimensions and is for some reason not triggering the browser to relayout. On investigation it looks to be related to a similar problem with a different template (which I'd been banging my head against, so this might finally help solve that too).
But, in the short term, {{Do not move to Commons}} is only for use on file description pages, and dynamic layouts are not active there (they're just active on sandboxes to enable testing), so you should be good to go with that template. Other message box based templates for use in mainspace or elsewhere dynamic layouts are active are more iffy. Xover (talk) 09:47, 16 October 2022 (UTC)
@Xover: Thanks for the update! —CalendulaAsteraceae (talkcontribs) 20:48, 16 October 2022 (UTC)
Ok, I've found and, hopefully, fixed the issue.
The dynamic layouts were setting a hard max-width: 100%; on all img elements in order to prevent actual images in texts from overflowing their available space. But the message box code sizes its image components relative to available space, so the images ended up 100% of 0px wide. To override it we need to set max-width: none; on the images inside the template, but since dynamic layouts used ID selectors (which always beat out class selectors) this had no effect. To remedy this I've altered the dynamic layouts gadget to use class instead of ID selectors.
Testing has been limited so there may still turn up something that invalidates this fix, but modulo that this issue should be fixed now. Xover (talk) 16:21, 24 October 2022 (UTC)
@Xover: Thank you for the explanation! {{Do not move to Commons}} seems to be working everywhere now. {{Missing image}}, however, still seems to be having problems. See e.g. Cassini Shows Grandeur of Two Saturn Moons. —CalendulaAsteraceae (talkcontribs) 02:15, 26 October 2022 (UTC)
Fixed. Thanks. Xover (talk) 05:01, 26 October 2022 (UTC)
@Xover: did a more thorough check, looks like {{tmbox}}, {{mbox}}, {{fmbox}}, {{ombox}} and {{cmbox}} need a similar fix. ({{Imbox}}, {{pmbox}} and {{ambox}} are OK AFAICT.) Thank you for working on this! —CalendulaAsteraceae (talkcontribs) 05:28, 26 October 2022 (UTC)
tmbox is for talk pages; fmbox is for edit notices; cmbox for categories. ombox is for "other" pages, typically Wikisource:, Help:, etc. Neither of these will coexist with dynamic layouts. mbox is for multi-namespace boxes, and calls one of the others dynamically, inheriting their properties. imbox doesn't strictly need the fix either, since it's for File: pages where dynamic layouts aren't active. It's ambox (mainspace notices) and pmbox (Page: namespace, but get transcluded to mainspace) that actually need it, and those should be good now. Xover (talk) 05:57, 26 October 2022 (UTC)
@Xover, thanks for the explanation and the fix! —CalendulaAsteraceae (talkcontribs) 01:03, 27 October 2022 (UTC)

plainlist and hanging indentEdit

Hi. I removed (migrated) all the current uses of {{indented plainlist}} because {{plainlist}} has a |hi= that does effectively the same. Would you mind if I G7 speedy {{indented plainlist}}? It's blocking some other maintenance, and having to keep the two variant implementations in sync is going to be a real pain long term. Xover (talk) 12:10, 27 November 2022 (UTC)

@Xover go ahead. I appreciate that you're working on this kind of issue :) —CalendulaAsteraceae (talkcontribs) 16:06, 27 November 2022 (UTC)