Template talk:Code
Improve Template:Code with revision 301901 (and also decide what it wants to be)
As of revision 302080, Template:Code has regressed from its Wikipedia counterpart significantly:
- Text is wrapped in
<kbd>
instead of<syntaxhighlight>
- using
<kbd>
to denote computer code is semantically incorrect and will throw surprises at user-agents that expect otherwise;
- using
{{{style}}}
has been co-opted for pre-determined CSS styles instead of allowing editors to specify arbitrary CSS styles
- this is inconsistent with Template:Pre by the same maintainer and with the other in-house Wikipedia imports
- this is another surprise to editors
- editors can no longer specify arbitrary CSS styles without either a) using
#tag:
, b) using<code>
, or c) using some nasty syntax hacks
- spurious parameters attempt to solve the inability to provide arbitrary CSS styles with another layer of unnecessary and obscure abstraction
- e.g.,
{{{select=1}}}
results in identical behaviour to{{{style="user-select: all"}}}
- this appears to be a recurring element in other templates by the same maintainer
- editors must now remember a new set of arbitrary integer-key mappings
- existing values are fragile; changes to valid values will propagate across all invocations until someone fixes them
- e.g.,
{{{color}}}
and{{{bg}}}
abstract away CSScolor
andbackground-color
- e.g.,
- preset CSS styles have inconsistent styling and can reflow the page if changed
- see: padding, border
Given that this Wiki has pitiful tooling for mass-updates, a template rewrite must:
- maintain backwards-compatibility with previous invocations; and
- produce correct backwards-compatible output
while providing new functionality. The code paths for this backwards-compatibility will probably persist until all old invocations are sanitized.
I already have a rewrite (revision 301901) that satisfied these complaints but was reverted almost immediately;
changing the internal tag from <syntaxhighlight>
to <code>
will allow the template from this revision to produce correct output.
I would recommend replacing the current incarnation of Template:Code with a patched revision 301901, pending review.
On the other hand, the site administrators have made dubious changes to the site-wide CSS that revert the Vector skin styles.
<code>
is effectively indistinguishable from <kbd>
; the number of template changes with <kbd>
committed where <code>
should be is non-zero.
Perhaps Template:Code would better serve as a wrapper for <code>
with sane CSS defaults (I suppose, as it is now), but maintain compatibility with syntax given by other Wikipedia ports.
idk :3