Template:Para is permanently protected from editing because it is a heavily used or highly visible template. Substantial changes should first be proposed and discussed here on this page. If the proposal is uncontroversial or has been discussed and is supported by consensus, editors may use ((edit template-protected)) to notify an administrator or template editor to make the requested edit. Usually, any contributor may edit the template's documentation to add usage notes or categories.
Any contributor may edit the template's sandbox. Functionality of the template can be checked using test cases. |
Text has been copied to or from this page; see the list below. The source pages now serve to provide attribution for the content in the destination pages and must not be deleted as long as the copies exist. For attribution and to access older versions of the copied text, please see the history links below.
|
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
Please change the template to use <code> rather than <tt>. The <code> element is more appropriate, since the text represents computer code (namely, Wiki markup). Thanks. Eubulides (talk) 15:26, 12 September 2009 (UTC)
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
<code><span style="white-space:nowrap;">|(({1|))}((#if:(({1|))}|=))(({2|))}</span></code>
Tested and working on another wiki I maintain. Thanks —capmo (talk) 22:51, 17 February 2013 (UTC)
<code><span style="white-space:nowrap;"><nowiki>|</nowiki>(({1|))}((#if:(({1|))}|<nowiki>=</nowiki>))(({2|))}</span></code>
(({1))}
is not given, the #if has to check its "else" clause and return it (in fact, an empty string); without this | it would return nothing, which is possibly more efficient. But if you check the changes above, the #if syntax was simplified even more by removing the first parameter from inside it. —capmo (talk) 01:48, 18 February 2013 (UTC)
<span>...</span>
element has the same scope as another HTML element, the attributes may be moved from the SPAN to the other); and I've set up Template:Para/testcases. These do not demonstrate problems inside either tables or templates, therefore there is no problem with not implementing proposal 1. --Redrose64 (talk) 10:57, 18 February 2013 (UTC)
The 22 July 2014 <code>...</code>
css change adds unnecessary boxes. I propose to replace <code>...</code>
with <kbd>...</kbd>
which is more semantically correct and displays the text in the same monospaced font.
—Trappist the monk (talk) 15:56, 10 August 2014 (UTC)
<code style="color:inherit; border:inherit; padding:inherit;">
as recommended at VPT, to preserve the semantic meaning. – Jonesey95 (talk) 22:35, 11 August 2014 (UTC)
<kbd>...</kbd>
is not correct, except for the value of the parameter, not its name or the = character (i.e., in a case of |foo=bar
, the bar part should be in <kbd>...</kbd>
, but the foo
and =
part in <code>...</code>
. So, fix that, then do as Jonesey95 suggests with regard to use of <code>...</code>
here. In general, no change to what MediaWiki is doing, or the en.wiki site-wide style sheets for that matters, should ever lead to us proposing to replace the underlying tag to work around a style problem; just fix the style. And perhaps keep closer watch on and inject more input into discussions that are resulting in questionable site-wide or MW-wide style changes (and there sure have been a lot of them this year). — SMcCandlish ☺ ☏ ¢ ≽ʌⱷ҅ᴥⱷʌ≼ 08:41, 13 August 2014 (UTC)
The kbd element represents user input (typically keyboard input, although it may also be used to represent other input, such as voice commands).To use this template, editors must 'input' the entire template from the opening bracket to the closing bracket into the edit window.
<code>
element redundant, yet it's been kept, and so has <kbd>
(and <samp>
and <var>
, but not <tt>
, which really was redundant with <samp>
). The <code>
element is expressly for code as distinguished from user input (i.e. values supplied). In actual practice <kbd>
, because it's too tedious (and some think it never belongs in there, interpreting <kbd>
as solely representing interactivity). When found in the wild and used with the related tags, and not being abused for non-semantic purposes or the wrong one, it's almost exclusively used for user, not coder, input to an application/device/process, e.g. typed responses to prompts, data entry into fields, or spoken commands like Siri: redial last number. The <samp>
element represents output. Proper usage of all four of the (current) relevant markup elements would be "The command <code>fink install <var>port-name</var></code> may prompt you to select a specific variant. At the <samp>Please select which package to install</samp> prompt, enter your choice as a numeral, e.g. <kbd>3</kbd> for the third option in the list.
(Renders as: The command fink install port-name
may prompt you to select a specific variant. At the Please select which package to install prompt, enter your choice as a numeral, e.g. 3 for the third option in the list.) An utter purist would also wrap that particular <var>
in a <kbd>
since it represents a momentary user choice, not pre-determined code, but in practice you'd be hard pressed to find anyone anywhere being that anal about the semantics. Another nitpicker might change part of that example to </code><var>port-name</var>
, but that's the finest hairsplitting, and debatable semantics.Since the <tt>
element is no longer supported as of HTML5, we need figure out what the MW devs' migration plan is, if they have one. We're either going to have to stop using it, or they're going to have to translate it on-the-fly into something else. If the former, we could: A) Use <samp>
to encompass former use of <tt>
(which was meant to reflect "teletype", or machine-mediated human communication; that a subclass of machine output, represented by <samp>
). Or, B) Use a template to wrap content in <span style="font-family: monospace;">...</span>
, with no particular semantic value. The latter is probably better, since editors have been broadly abusing the <tt>
element as a quick-and-dirty way to get monospace, just as they misuse ''...'',
for emphasis not purely typographic italicization, when they should be using <em>
(or ((em))
) for emphasis. But editors are loath to give up what they're familiar with, so the least "brittle" way to do this would be for MW to translate <tt>
on the fly, while we deprecate its use so that people move away from it and no new editors pick up the habit. — SMcCandlish ☺ ☏ ¢ ≽ʌⱷ҅ᴥⱷʌ≼ 19:26, 20 July 2015 (UTC)
<kbd>...</kbd>
is that the style for that element may be changed at some point as has just been done with <code>...</code>
, and then we're back here again. If we stick with <code>...</code>
and just style it ourselves, we avoid that potential problem. – Jonesey95 (talk) 13:18, 13 August 2014 (UTC)
<code>...</code>
to <span style="font-family: monospace,Courier;">...</span>
.While the display problem noted at Help talk:Citation Style 1/Archive 5#Restore error message style is an unintended consequence of the CSS changes to the <code>...</code>
element (they don't seem to have considered that some inline uses don't work well with boxes), the effect the changes have on ((para)) and ((tag)) are not, but are precisely the intended effect of that change. I personally still disagree with the addition of the boxes to this element, but that's a discussion to raise with the MediaWiki developers in the long term, to fix common/shared.css, and in the short term to bring up at MediaWiki:Common.css to fix at en.wikipedia site-wide, if a consensus develops on this site to buck this change. We should not be monkeying with it, in ways that break semantic HTML, on a template-by-template basis. Doing so would also produce inconsistent results. Quite a few templates are used in marking up source code, and they all use (or should use) the <code>...</code>
element appropriately (I'm unaware of any that don't). Failing to account for even one of them when making tweaks like any of those suggested above will result in boogered template documentation pages that use such templates to lay out source. Might also affect actual articles that illustrate source code. — SMcCandlish ☺ ☏ ¢ ≽ʌⱷ҅ᴥⱷʌ≼ 19:22, 13 August 2014 (UTC)
<code style="background:transparent;border:none;">
to render <code> without a border or changing the background – should this be <code style="background:inherit;border:inherit;">
(or something like it) instead..? Sardanaphalus (talk) 11:05, 11 October 2014 (UTC)
inherit
(but three of them, not two) was first suggested by me at Wikipedia:Village pump (technical)/Archive 129#Displaying 'code' font text where I proposed <code style="color:inherit; border:inherit; padding:inherit;">Example</code>
→Example
← and this has been mentioned elsewhere, such as Help talk:Citation Style 1/Archive 5#Restore error message style and Template talk:Tag#Style - which is where this thread originated. --Redrose64 (talk) 19:27, 11 October 2014 (UTC)
inherit
as a problem? --Redrose64 (talk) 12:36, 12 October 2014 (UTC)
inherit
rather than the specific styling (transparent/none) should be preferred – but I imagine it won't matter if the styling ends with e.g. a "(({style|))}
" to accommodate a situation where neither is desired. Sardanaphalus (talk) 11:54, 14 October 2014 (UTC)transparent
might be the better choice. Currently, CS1 citations use inherit
. See the CS1 error message this user page conversation, the error message doesn't display as I think it should. A quick experiment showed that using transparent
might be preferable.[1] This (as of this message, the current) version in the sandbox includes a |plain
option that adds the styling "background:transparent;border:none;(({style|))}"
to the <code>...</code>
used by the template, i.e. renders it more plainly (see testcases). Should I request that the live version is updated accordingly? Sardanaphalus (talk) 09:28, 12 October 2014 (UTC)
((parap))
or ((ppara))
or ((plp))
or some such other quick and easy name, that would take the same parameters as ((para))
and add the plain parameter:
((para|plain|(({1))}|(({2))))}
– this particular snippet is not tested((paraplain))
are a bad thing and will seek to have them deleted. I don't care either way, but it is why I suggested a typing-aid template instead of a fork.((para|plain|...))
plus shortcut preferable, so will now request the sandbox version. Regards, Sardanaphalus (talk) 10:22, 18 October 2014 (UTC)This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
Per the discussion above, please replace the current template with this sandbox version (the current version as of this message). Sardanaphalus (talk) 10:28, 18 October 2014 (UTC)
-- [[User:Edokter]] ((talk))
13:42, 18 October 2014 (UTC)
((paraplain))
in order for this update to make sense. – Jonesey95 (talk) 00:58, 19 October 2014 (UTC)
<includeonly>...</includeonly>
, I'm restoring the request here:This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
Sardanaphalus (talk) 16:56, 1 November 2014 (UTC)
-- [[User:Edokter]] ((talk))
21:36, 1 November 2014 (UTC)
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
((para|name|val|plain=yes))
, rather than ((para|plain|name|val))
. Using the first positional parameter for both formatting and for content is going to be confusing. Also, what happens when you want to display a parameter that is named "plain", "pln", "pl" or "p"? I bet that there are already some transclusions out there that do exactly this that would be broken by the proposed update. — Mr. Stradivarius ♪ talk ♪ 13:00, 6 November 2014 (UTC)
((#if:|...))
to allow plain=1
. Also, is the open style parameter an intended feature? -- [[User:Edokter]] ((talk))
14:14, 6 November 2014 (UTC)
(({style))}
, I just included it because Sardanaphalus did. Personally, I don't think it's really necessary. — Mr. Stradivarius ♪ talk ♪ 16:15, 6 November 2014 (UTC)
-- [[User:Edokter]] ((talk))
20:38, 6 November 2014 (UTC)
((para))
has only one parameter? |ps=
|ps=none
-- [[User:Edokter]] ((talk))
21:11, 6 November 2014 (UTC)|plain=
option as a named parameter. -- [[User:Edokter]] ((talk))
08:27, 7 November 2014 (UTC)
-- [[User:Edokter]] ((talk))
22:13, 7 November 2014 (UTC)Should the values handed to this template be stripped of any whitespace etc..?
<code class="nowrap"><includeonly<nowiki>|</nowiki></includeonly>((#if:(({1|))}|((#if:true|(({1))))}<nowiki>=</nowiki>))((#if:true|(({2|))))}</code>
Sardanaphalus (talk) 10:19, 26 October 2014 (UTC)
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
To improve readability, please change:
<nowiki>=</nowiki>
to:
<nowiki>= </nowiki>
(i.e. add a space after the equals sign). Better still, perhaps the protection level could be lowered, so that template editors can make such changes? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 12:30, 27 October 2014 (UTC)
((edit protected))
template. This proposal is contrary to that in the previous section. Personally I disagree with the addition of a space, because the absence of the space assists in the association of all four tokens (pipe, name, equals, value) so that when you're explaining something to a newbie by way of a code sample on a talk page, they see that the whole string is to be copied. --Redrose64 (talk) 12:38, 27 October 2014 (UTC)
((para|something|else))
→ |something=else
((para|something |else))
→ |something =else
((para|something| else))
→ |something= else
((para|something | else))
→ |something = else
Please replace the hardcoded code tag from <code> to <(({tag|code))}> so the fixed width font can represent a semantic. For me I like to use <code> to mean "toward the computer" and <kbd> to mean "toward the person". Someone else will have a semantic for when they like to use <tt>. I did ((param)) already. — CpiralCpiral 08:09, 14 July 2015 (UTC)
It seems a like a nice addition to a more general solution, and it looks to be perhaps cleaner coding internally than the setup using |plain=
. — CpiralCpiral 08:26, 14 July 2015 (UTC)
(({2))}
(<kbd>
is semantically wrong for the parameter name, pipe, and equals sign) and use #switch
to whitelist specific values code
(default), kbd
, and var
. The <tt>
element has been killed in HTML5 so we need to wean away from it; <samp>
doesn't apply; and other values would be semantically wrong or useless, depending on what someone put in there. If we want to satisfy purists, also have a switch option for kbdvar
to use both at once. This doesn't affect or relate to |plain=
, which strips the style=...
code (the box and grey background).What it would look like:
|para=code
|para=kbd
|para=var
|para=kbdvar
|plain=
:
|para=code
|para=kbd
|para=var
|para=kbdvar
The most common use case for this would be ((para|tag=var|content))
, which is the same character length asn ((para|((var|content))))
but visually easier to parse and less error-prone, while obviously shorter than ((para|<var>content</var>))
which is also a mixture of wikimarkup and HTML, which not everyone cares for.
Additional transclusion code conciseness could be achieved (at the cost of source code detail) by using (({3))}
as an alias of (({tag))}
: ((para|content|var))
or ((para|content|3=var))
when necessary. — SMcCandlish ☺ ☏ ¢ ≽ʌⱷ҅ᴥⱷʌ≼ 20:11, 20 July 2015 (UTC)
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
I would like to be able use this template to show key=value pairs for other types of blobs. For example given this URL
Given a hypothetical new |sep=
argument:
&pg=PA165
This would work with any separators like "?" or "," .. or if blank then no separator such as showing a basic key=value pair
The display "sep" would default to "|"
-- GreenC 16:43, 3 January 2019 (UTC)
This template is for giving examples of template parameter source code.
The current output allows line-breaks, which in most cases makes it hard to read. This is clearly seen on mobile devices when viewing the table in the doc for this template.
In ((val)) people have attempted to avoid this by setting the size of columns in the table, which I think is a work-around, not a solution. The real solution is to make this template output html/css to prevent line breaks. Either by default, or make that an option you can enable with a parameter. — SkyLined (talk) 14:12, 3 April 2023 (UTC)
This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
I used ((para))
and got a line break after the pipe character. This looked ridiculous and makes little sense. I assume other line breaks would be possible, such as after a hyphen in the parameter name. Adding ((nowrap))
or equivalent would make far more sense than requiring editors to code, e.g., ((nowrap|((para|archive-url))))
. While Note 2 below the table at "General-purpose formatting" speaks of nowrap options, I'm at a loss to see how they help my situation. In any event, I don't see how automatic, unconditional nowrap for all uses of ((para))
could be the slightest bit controversial. At the very least, an option could be added to suppress the default of nowrap for cases where horizontal space is limited, such as in tables.
See also #no line-breaks in output, where a request for this was ignored (or never seen) 13 months ago. As to If the proposed edit might be controversial, discuss it on the protected page's talk page before using this template.
, well, we've seen how effective that was. ―Mandruss ☎ 19:24, 5 May 2024 (UTC)
((Edit template-protected))
template. --Redrose64 🌹 (talk) 21:26, 5 May 2024 (UTC)
class="nowrap"
changed to class="tpl-para"
; don't know where that class is defined