Template talk:Spaces
Template:Spaces 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 protected}} to notify an administrator 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. |
(Redirection)
editDavid Kernow, please forgive my saying so but it is not very polite to go counter to GFDL and not merely "move" Template:Nbsp here. Where is my work? (→Netscott) 12:17, 16 February 2007 (UTC)
- Just spotted your post. Apologies in advance if I'm missing something, but I'm not sure what I've done "to go counter to GDFL" or lose some work...? From here, the template seems to be functioning correctly...? Puzzled, David Kernow (talk) 13:37, 16 February 2007 (UTC)
- Well realizing that I don't own the Template:Nbsp, it still is my creation which now that you've redirected it has been essentially usurped. (→Netscott) 13:44, 16 February 2007 (UTC)
- Why not just move it to this name rather than this redirection? (→Netscott) 13:46, 16 February 2007 (UTC)
- Well realizing that I don't own the Template:Nbsp, it still is my creation which now that you've redirected it has been essentially usurped. (→Netscott) 13:44, 16 February 2007 (UTC)
- Reading the above again, I've suddenly realized what I think you mean; I've been busy cutting and pasting material to create template /doc pages and mistakenly did the same for {{nbsp}} and {{spaces}}, compromising the history. (At least not totally, given the edit summary.) Unless this is not what you mean, I'll happily revert and move the template as you suggest, with apologies for my error. Yours, David (talk) 14:02, 16 February 2007 (UTC)
- Yes you've got it... I think that'd be the most sensible thing to do... looking at your work it seems a bit C&Pish. :-) (→Netscott) 14:04, 16 February 2007 (UTC)
Ok, I appreciate your cooperation. Sorry if I wasn't particularly clear intially. Cheers. (→Netscott) 14:11, 16 February 2007 (UTC)
- Thanks for your understanding and for prodding me. I think all this means it's time for me to take a short break!...
- One other thing, the {{loop}} mod is very cool, well done. :-) (→Netscott) 14:11, 16 February 2007 (UTC)
- User:Polonium is the person deserving the praise; I only happened to find the template and immediately knew one place where it should be very useful. Thanks again, David (talk) 14:18, 16 February 2007 (UTC)
- Yes I saw that, he's created an awesome template but I was referring to your mod of adding it here... that was very cool. :-) (→Netscott) 14:20, 16 February 2007 (UTC)
- User:Polonium is the person deserving the praise; I only happened to find the template and immediately knew one place where it should be very useful. Thanks again, David (talk) 14:18, 16 February 2007 (UTC)
Efficiency
editI don't think we need to be using Template:Loop here. Most of the uses of this template appear to use very small values for the first parameter. I'd like to add a cat here to catch any usages greater than X (maybe 5? 10?) to see what the current situation looks like. --- RockMFR 03:55, 26 June 2009 (UTC)
- So far, nearly all of the uses > 25 are from a single user's messages on user talk pages. --- RockMFR 03:08, 14 July 2009 (UTC)
I've changed it to use Template:Loop15, which goes to 15 instead of 150. As of this moment, 144 pages will be affected by this change, nearly all of them in the user talk namespace. --- RockMFR 12:16, 15 August 2009 (UTC)
There's much more efficient code on Korean Wikipedia:
<span style="white-space: nowrap;">{{padleft:|{{{1|1}}}| }}</span><noinclude> <!-- The last parameter of padleft is not space(0x20), but nbsp(0xA0)!! --> {{Documentation}} </noinclude>
It also can process more NBSPs (up to 500) than current template even at lower cost. Here are preprocessor reports:
- Call as 1(
{{Spaces|1}}
)
- New code:
NewPP limit report Preprocessor node count: 9/1000000 Post-expand include size: 46/2048000 bytes Template argument size: 1/2048000 bytes Expensive parser function count: 0/500
- Current one:
NewPP limit report Preprocessor node count: 42/1000000 Post-expand include size: 59/2048000 bytes Template argument size: 22/2048000 bytes Expensive parser function count: 0/500
- 15, which is maximum number of current code.
- New: 9 / 102 / 2 / 0
- Curr.: 70 / 311 / 122 / 0
- 500, max. of new one.
- New: 9 / 2042 / 3 / 0
Similar template
editTemplate {{space}} has a similar (or the same) purpose as this template, but uses an ugly method. Could {{space}} better serve as a redirect to this template? --Götz (talk) 19:02, 25 May 2013 (UTC)
Idiotic naming
editWhat idiot would name a template, which inserts a non-breaking space or spaces, just plain {{space}}? Really... the mind boggles at the stupidity. EEng (talk) 21:54, 22 January 2014 (UTC)
- Thank-you for your comment. Could you suggest an alternative and explain why it is better? --50.53.60.172 (talk) 16:47, 24 October 2014 (UTC)
- Sure. It should be called simply and only {{nbsp}}, which is currently a redirect to this one. That way when someone sees an invocation they know for sure what it does. EEng (talk) 17:24, 24 October 2014 (UTC)
- Thanks for your clarification. I don't work on templates, but ISTM that the problem you are identifying could be addressed in the documentation, which does not clearly state that {{nbsp}} produces exactly one non-breaking space. I started a separate section complaining about the documentation, so join the party. --50.53.60.172 (talk) 18:14, 24 October 2014 (UTC)
- My specific complaint is that the very name of the template is misleading. Template documentation I gave up on long ago. Good luck, though. EEng (talk) 18:22, 24 October 2014 (UTC)
- I don't understand. Are you complaining about the name of the redirect {{nbsp}}, the name of the template {{spaces}}, or both? It might help if you could recount what exactly you were doing before you posted your original comment in January 2014. What were you attempting to do at the time? BTW, the template is protected, but the documentation is not. --50.53.60.172 (talk) 18:39, 24 October 2014 (UTC)
- From your January 2014 contribs, you appear to have posted a comment to Wikipedia talk:Manual of Style/Dates and numbers and then, about five hours later, your next edit was your comment here. Does that help you recall what you were attempting to do with {{nbsp}}? --50.53.60.172 (talk) 19:37, 24 October 2014 (UTC)
- I don't understand. Are you complaining about the name of the redirect {{nbsp}}, the name of the template {{spaces}}, or both? It might help if you could recount what exactly you were doing before you posted your original comment in January 2014. What were you attempting to do at the time? BTW, the template is protected, but the documentation is not. --50.53.60.172 (talk) 18:39, 24 October 2014 (UTC)
- My specific complaint is that the very name of the template is misleading. Template documentation I gave up on long ago. Good luck, though. EEng (talk) 18:22, 24 October 2014 (UTC)
- Thanks for your clarification. I don't work on templates, but ISTM that the problem you are identifying could be addressed in the documentation, which does not clearly state that {{nbsp}} produces exactly one non-breaking space. I started a separate section complaining about the documentation, so join the party. --50.53.60.172 (talk) 18:14, 24 October 2014 (UTC)
- Sure. It should be called simply and only {{nbsp}}, which is currently a redirect to this one. That way when someone sees an invocation they know for sure what it does. EEng (talk) 17:24, 24 October 2014 (UTC)
I already said it. The template should have been named nbsp and ONLY nbsp -- not space. But it's way to late for that. It's just a good example of the extremely shortshighted way so much stuff in template space just got hacked together. EEng (talk) 22:50, 24 October 2014 (UTC)
- This edit answers your original question. The edit summary says:
'Suggest "spaces" as a more non-technical user-friendly name'
- --50.53.35.240 (talk) 16:50, 25 October 2014 (UTC)
- Yeah, but that editor was wrong. It's not user-friendly if it misleads the user into thinking he's getting a "space" (which will naturally be interpreted as everyday, usual, normal space) and he's actually getting an nbsp. I don't see the point of this conversation. There are way too many invocations of this template for the name to be changed. My OP was just a plea for technogeeks to think more carefully in the future before making the template cesspool even stinkier. I doubt I'll be responding to further posts here. Please drop it. EEng (talk) 18:00, 25 October 2014 (UTC)
- OK, you finally managed to explain yourself. You believe that users will interpret the name "spaces" as meaning spaces that can break. The documentation clearly states that it does not mean that, and a space character is the natural choice for a breakable space. If you don't want to converse on this topic, you are free to remove this page from your watchlist. --50.53.34.31 (talk) 05:44, 26 October 2014 (UTC)
- Yeah, but that editor was wrong. It's not user-friendly if it misleads the user into thinking he's getting a "space" (which will naturally be interpreted as everyday, usual, normal space) and he's actually getting an nbsp. I don't see the point of this conversation. There are way too many invocations of this template for the name to be changed. My OP was just a plea for technogeeks to think more carefully in the future before making the template cesspool even stinkier. I doubt I'll be responding to further posts here. Please drop it. EEng (talk) 18:00, 25 October 2014 (UTC)
- A growing frustration is evident with each of EEng's replies. I can fully empathize with that. The IP editors were being extremely obtuse and uncooperative. Rather than trying to understand EEng's objection and discussing that, you were instead trying to make the editor jump through hoops or just blindly not seeing their point.
- It's not clear to me if one or all of the IP editors are the same person. It seems like some of them might be. You are each clearly experienced editors whom I imagine have (or had) accounts. Why not use them? Could one of you confirm or deny that you are the same person?
- As for the name, I too think it's a bad, myopic name and the 16 February 2007 move of Template:nbsp to Template:Spaces should not have occurred. A move to Template:Hard spaces would have been acceptable since that name is self-descriptive. We gain a self-descriptive name while eliminating the potential confusion that is at the heart of EEng's objection. Maybe this move should still be done. "Fixing" the problem by changing the documentation is not a fix. It'd be adding to the confusion in Template namespace. This template's documentation does have a lot of room for improvement outside of this issue, however.
- EEng's is also right about that, by the way. The Template namespace has lots of problems related to bad decisions of the past. It'd be charitable to say that the bad naming decisions could only be seen as poor in hindsight. It's more likely that a lot of it was just due to editors being a little too flippant with the moving of templates and not thinking moves out fully, or poor group think during rename discussions. I am very much in favor of fixing things that are wrong in hindsight instead of carrying the lodestones of the past. This template may be a chance to clean things up.
- Now is a good time for people to say whether "Hard spaces" is a worthwhile move or if it's a bad idea and why. Jason Quinn (talk) 14:52, 15 February 2015 (UTC)
- (1) I think Wikipedia should engage in a Manhattan Project-like crash program to identify the forces which combined to bring someone with level-headed common sense like yourself into its technical discussions, with an eye toward seeing if those conditions can be artificially replicated. (From [1] it's clear the IPs are all the same person determined to act like an uncomprehending lunkhead.)
- (2) The problem is that a move to a more logical name isn't enough -- to really solve this problem the old misleading names space and spaces need to be not just deprecated but eliminated, which in turn would require tracking down and changing all those invocations. I don't see that happening somehow. Or am I being too pessimistic?
- (3) If this does proceed, I'd recommend against the verbosity of hard spaces -- just stick with nbsp (and, maybe, hspace as well).
- EEng (talk) 16:34, 15 February 2015 (UTC)
Naming, redux.
editI agree with User:EEng (above) that the naming here is not ideal. I suggest that {{Space}}
and {{Nbsp}}
(and {{Nbsp;}}
via redirection to {{Nbsp}}
) be wrappers of this template which do what they say, I.E. create normal and non-breaking space(s) by default. The default here should be normal spaces, per the name, but ideally a survey of actual in-article uses should be done before that behaviour is changed.
All the best: Rich Farmbrough, 18:29, 22 April 2019 (UTC).
- {space}/{spaces} apparently has thousands of invocations -- direct invocations under that name. I think it's hopeless. EEng 18:46, 22 April 2019 (UTC)
Different types of spaces
editI wonder whether it would be a good idea to add a parameter to control the type of space produced. It would be good to have some way of producing figure spaces for alignment of numbers in tables. Adding this functionality to this template would be easy and probably a better option than creating a whole new template which does an almost identical thing. A proliferation of little templates doing little jobs isn't that useful. Whilst we're at it, the almost never used {{nwsp}} could be merged here (possibly along with {{thinsp}} and {{hsp}} but they work a bit differently). Another thing, at least the name wouldn't seem so idiotic if the template produced various types of space. Jimp 18:26, 16 April 2015 (UTC)
Usage of white-space:nowrap style for nbsp
editI was wondering why style="white-space:nowrap;"
has been used around
. Can someone give an example of a situation that it makes difference? Dalba 17 Ordibehesht 1394/ 10:26, 7 May 2015 (UTC)
Fully protected edit request on 18 November 2018
editThis edit request to Template:Nbsp has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
A protected redirect, Template:Nbsp, needs redirect category (rcat) templates added. Please modify it as follows:
- from this:
#REDIRECT [[Template:Spaces]]
- to this:
#REDIRECT [[Template:Spaces]] {{Redirect category shell| {{R from move}} {{R from alternative name}} {{R from template shortcut}} }}
- WHEN YOU COPY & PASTE, PLEASE LEAVE THE SKIPPED LINE BLANK FOR READABILITY.
The {{Redirect category shell}} template is used to sort redirects into one or more categories. When {{pp-protected}} and/or {{pp-move}} suffice, the Redirect category shell template will detect the protection level(s) and categorize the redirect automatically. (Also, the categories will be automatically removed or changed when and if protection is lifted, raised or lowered.) Thank you in advance! Paine Ellsworth, ed. put'r there 20:12, 18 November 2018 (UTC)
- Partly done @Paine Ellsworth: You're the expert here, but is {{R from template shortcut}} really appropriate? I added the others for now, but "nbsp" doesn't seem shortcut-like to me. Maybe I'm wrong? Maybe {{R from code}}? ~ Amory (u • t • c) 12:42, 19 November 2018 (UTC)
- Hi Amory, I've been using this redirect, Template:Nbsp, as a shortcut to the Spaces template for many years. I've found that shortcuts can be any length, and their targets are usually longer names, but sometimes shorter, as well. I've always gone by how a redirect may be used by editors to determine if it's a shortcut or not. The Nbsp; redirect is an example when {{R from code}} applies. Since this redirect is in template namespace, then I don't think the "code" rcat would apply. I could be wrong. Thank you for asking and for the "expert" nod! Paine Ellsworth, ed. put'r there 17:43, 19 November 2018 (UTC)
- Good enough for me! And good point on
nbsp;
versusnbsp
. ~ Amory (u • t • c) 18:04, 19 November 2018 (UTC)- Thank you very much! Paine
- Good enough for me! And good point on
- Hi Amory, I've been using this redirect, Template:Nbsp, as a shortcut to the Spaces template for many years. I've found that shortcuts can be any length, and their targets are usually longer names, but sometimes shorter, as well. I've always gone by how a redirect may be used by editors to determine if it's a shortcut or not. The Nbsp; redirect is an example when {{R from code}} applies. Since this redirect is in template namespace, then I don't think the "code" rcat would apply. I could be wrong. Thank you for asking and for the "expert" nod! Paine Ellsworth, ed. put'r there 17:43, 19 November 2018 (UTC)
Consider adding narrow no-break space
editThis edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
Consider adding parameter 'nnbsp' or 'narrow' to get a narrow non-breaking space as seen here, Non-breaking space#Width variation. One usage is around punctuation which should not be separated from a word. As is mentioned here Quotation mark#French for one instance. Shenme (talk) 01:38, 19 November 2018 (UTC)
- No need for parameters and stuff. Just create a new template. EEng 03:17, 19 November 2018 (UTC)
- The template already has a parameter for just that (fig|en|em|thin|hair), it's just about adding options for more whitespace characters. Adding cases to switch statements is very cheap and improves user experience, because authors do not have to remember a single code exactly. (I still may have gone overboard below, though.) — Christoph Päper 22:58, 22 November 2019 (UTC)
- (Code moved to Template:Spaces/sandbox) — Martin (MSGJ · talk) 19:11, 23 November 2019 (UTC)
- PS: To allow redirect templates to opt-out of non-breaking behavior (
class="nowrap"
), I have also added a class parameter, which authors should never use in article space. — Christoph Päper 23:07, 22 November 2019 (UTC)- I'm not quite sure what you are trying to do here, but I don't think it is a good idea to put in code unless it is actually likely to be used. You admit you may have gone overboard ;) Which of these do you think will be useful? — Martin (MSGJ · talk) 19:13, 23 November 2019 (UTC)
- The template already has a parameter for just that (fig|en|em|thin|hair), it's just about adding options for more whitespace characters. Adding cases to switch statements is very cheap and improves user experience, because authors do not have to remember a single code exactly. (I still may have gone overboard below, though.) — Christoph Päper 22:58, 22 November 2019 (UTC)
Visual editor thumbnail too big
editHello. Is there a way to make the visual editor thumbnail for this template different/smaller? Right now it is big, and in my opinion makes text hard to read. Screenshot. Maybe we could use Template Data to do this. I'd be willing to make an image file (png, svg) if needed. Thank you. –Novem Linguae (talk) 11:48, 14 January 2021 (UTC)
- This seems to have been resolved; the template appears as its actual size in VE now. User:GKFXtalk 18:44, 9 January 2022 (UTC)
More space characters
editOnce upon a time, I apparently considered to propose extended functionality for this template and added the /char subpage with additional characters and mnemonics (LaTeX, MathML, HTML, Unicode) for them. This page will probably be deleted soon, but maybe it would indeed be a good idea to add some features to this template. — Christoph Päper 17:12, 9 January 2022 (UTC)
{{#switch:{{lc:{{{1}}}}}
|n|-|–|en|ensp|enquad|nut|small|\enspace
|2|0.5|1/2
|u2000|u+2000|2000|8192
|u2002|u+2002|2002|8194
| = 
|m|--|—|em|emsp|emquad|mutton|big|\empspace|\quad
|1
|u2001|u+2001|2001|8193
|u2003|u+2003|2003|8195
| = 
|3|;|thick|three|emsp13|\;
|1/3|6/18|0.3|0.33
|u2004|u+2004|2004|8196
| = 
|4|>|mid|quarter|four|emsp14|\>
|1/4|0.25
|u2005|u+2005|2005|8197
| = 
|6|:|narrow|six|emsp16|\:
|1/6|3/18|0.16|0.17
|u2006|u+2006|2006|8198
|&emsp16;= 
|f|#|fig|figure|num|numsp
|u2007|u+2007|2007|8199
| = 
|p|?|7|punc|punct|punctuation
|u2008|u+2008|2008|8200
| = 
|t|,|5|thin|thinsp|\thinspace|\,
|1/5|0.2
|u2009|u+2009|2009|8201
| = 
|h|!|hair|hairsp
|8|1/8|0.125|0.15
|9|1/9|2/18|0.1|0.11|0.111
|u200a|u+200a|200a|8202
| = 
|d|;|med|medium|math
|4/18|2/9|0.22|0.222
|u205f|u+205f|205f|8287
|&mediumspace;= 
|$|'|nnbsp
|u202f|u+202f|202f|8287
|&nnbsp;= 
|0|!|\!|zwsp
|u200b|u+200b|200b|8203
|&negativemediumspace;|&zwsp;=​
|z|/|\/|zwnj
|u200c|u+200c|200c|8204
|‌=‌
|j|+|zwj
|u200d|u+200d|200d|8205
|‍=‍
|w|"|wj|nb|nobreak|zwnbsp
|ufeff|u+feff|feff|65279
|u2060|u+2060|2060|8288
|&nobreak;=⁠
|i|`|ideo|asian|fw|fullwidth|hanzi|kanji|cjk|emoji
|u3000|u+3000|3000|12288
|&sp;= 
|*|.|dot|cdot|middot|inter|interpunct
|u00b7|u+00b7|00b7|183
|·=·
|_|sp|sym|symbol
|u2420|u+2420|2420|9248
|&space;=␠
|b|%|blank
|u2422|u+2422|2422|9250
|␣=␢
|x|[|]|box|spsym
|u2423|u+2423|2423|9251
|&openbox;=␣
|s|{|}|sbox|nbsym
|u237d|u+237d|237d|9085
|&shoulderedbox;=⍽
|~|nbsp
|u00ad|u+00ad|00ad|uad|u+ad|ad
| =
||#default={{{1| }}}
}}
- Wouldn't this just be replacing the doubled up switch structure with two calls to the subtemplate, be a simple implementation? At RfD I've suggest a merge or just calling the subtemplate. -- 65.92.246.142 (talk) 18:05, 9 January 2022 (UTC)
- Yes, I think getting rid of the duplicate switch was part of my original intention. Since we don't have variable assignment in templates, using a subpage is the best maintainable approach. — Christoph Päper 07:09, 11 January 2022 (UTC)
Why not ...
editThis edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
Description of suggested change:
Replace every {nbsp} with {nbs} site-wide! Eh? --2601:840:8400:7970:11DD:8BF0:96F7:696F (talk) 17:59, 17 November 2022 (UTC)
- Why? — Martin (MSGJ · talk) 21:31, 18 November 2022 (UTC)
- Not done this would need a much bigger explanation. — xaosflux Talk 23:07, 18 November 2022 (UTC)
Fully protected edit request on 14 February 2023
editThis edit request to Template:Space has been answered. Set the |answered= or |ans= parameter to no to reactivate your request. |
A protected redirect, Template:Space, needs redirect category (rcat) templates added. Please modify it as follows:
- from this:
#REDIRECT [[Template:Spaces]] {{Rcat shell|{{R from modification}}}}
- to this:
#REDIRECT [[Template:Spaces]] {{Rcat shell| {{R from modification}} {{R with history}} {{R from template shortcut}} }}
- WHEN YOU COPY & PASTE, PLEASE LEAVE THE SKIPPED LINE BLANK FOR READABILITY.
The {{Redirect category shell}} template is used to sort redirects into one or more categories. When {{pp-protected}} and/or {{pp-move}} suffice, the Redirect category shell template will detect the protection level(s) and categorize the redirect automatically. (Also, the categories will be automatically removed or changed when and if protection is lifted, raised or lowered.) Thank you in advance! P.I. Ellsworth , ed. put'er there 01:14, 14 February 2023 (UTC)
- Done — xaosflux Talk 01:26, 14 February 2023 (UTC)
- Thank you very much, xaosflux! P.I. Ellsworth , ed. put'er there 01:37, 14 February 2023 (UTC)