Jump to content

Template talk:Aligned table

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

colwidth, colNwidth? (rowstyle?)

[edit]

Great template. Since there's already colNalign and colNnowrap, maybe colwidth and colNwidth are worthwhile? Sardanaphalus (talk) 10:11, 1 June 2014 (UTC)[reply]
PS Also rowstyle? Sardanaphalus (talk) 10:30, 1 June 2014 (UTC)[reply]

added. Frietjes (talk) 16:20, 1 June 2014 (UTC)[reply]

Non-Lua version... Just curious

[edit]

I've seen Script error on non-Lua versions of the template. Could someone make a non-lua version of this? The "#invoke:aligned table|table" has created script errors. Aeverine Frathleen Nieves (talk) 15:12, 15 September 2014 (UTC)[reply]

@Nsgaeverine: where are you seeing a script error? Frietjes (talk) 16:10, 15 September 2014 (UTC)[reply]
@Frietjes:I saw it on other wikis (not on Wikipedia at all), but I did export this template from this wiki to another wiki I operate. I believe on the wiki I have wiki.voteforthegirls.us/view/Category:Pages_with_script_errors that Lua is working, and it's the same wiki platform on Wikipedia. I am able to view the Pre-Lua conversions of other templates--only just this template has been troublesome.Aeverine Frathleen Nieves (talk) 20:50, 15 September 2014 (UTC)[reply]
@Nsgaeverine: it's possible to make a non-Lua version, but it will have limitations in terms of the total number of entries. if you check the pre-Lua code for template:image array, you will get an idea of the complexity. Frietjes (talk) 21:53, 15 September 2014 (UTC)[reply]
@Frietjes: I am testing a non-Lua version of the Aligned table image based on the pre-Lua code for template:image array on another wiki I have wiki.voteforthegirls.us/view/Template:Aligned%20table that Lua is working, and it's the same wiki platform on Wikipedia. Beta testing that wiki. --Aeverine Frathleen Nieves (talk) 23:37, 3 February 2015 (UTC)[reply]

colstyle, colspan, etc

[edit]

Is it possible to implement a colstyle for this template that applies to all columns but is overriden (but not replaced) by individual columns' colNstyles – i.e. for each column, the equivalent, I think, of style="{{{colstyle|}}}{{{colNstyle|}}}"..?

Also – or, if the above is awkward or not possible, perhaps as an alternative – the ability to declare e.g. colNstyle=colQstyle=colSstyle=(styling), rowMstyle=rowPstyle=(etc) and/or even styleA.B=styleC.D etc and the same for classX.Y might prove very useful and/or reduce redundancy – in other words, the ability to set more than one parameter to a particular value and/or to set one or more parameters' values to another already set.

A colspan option, like that used in tables, would also be welcome, if possible/practicable.

Sardanaphalus (talk) 17:52, 15 September 2014 (UTC)[reply]

Empty-parameter handling

[edit]

This code...

{{Aligned table
 |style=margin-left:1.4em;border:1px solid #aaa;
 |colstyle=padding:0.1em 0.4em;
 | A       | B
 |{{{1|}}} |{{{2|}}} |{{{3|}}} |{{{4|}}} |{{{5|}}} |{{{6|}}} |{{{7|}}} |{{{8|}}} |{{{9|}}} |{{{10|}}}
 | M       | N
 |{{{11|}}} |{{{12|}}} |{{{13|}}} |{{{14|}}} |{{{15|}}} |{{{16|}}} |{{{17|}}} |{{{18|}}} |{{{19|}}} |{{{20|}}}
 | Y       | Z
}}
...produces:
A B
M N
Y Z
...rather than:
A B
M N
Y Z

i.e. the "empty" cells add whitespace to the table. Is there a way (that doesn't require e.g. many conditionals and/or "display:none;"s, etc) to prevent this, please..? Sardanaphalus (talk) 18:15, 21 November 2014 (UTC)[reply]

so, you want a parameter to strip empty rows? where is this needed? Frietjes (talk) 16:18, 22 November 2014 (UTC)[reply]
  • I don't know whether row-stripping and/or a parameter would be a suitable (or the only) way to achieve the above, but I've since realised my belief that it doesn't occur with e.g. wiki-markup tables seems incorrect:
{| style="border:1px solid #aaa;"
| A         || B         </tr>
| {{{1|}}}  || {{{2|}}}  </tr>
| {{{3|}}}  || {{{4|}}}  </tr>
| {{{5|}}}  || {{{6|}}}  </tr>
| {{{7|}}}  || {{{8|}}}  </tr>
| {{{9|}}}  || {{{10|}}} </tr>
| M         || N         </tr>
| {{{11|}}} || {{{12|}}} </tr>
| {{{13|}}} || {{{14|}}} </tr>
| {{{15|}}} || {{{16|}}} </tr>
| {{{17|}}} || {{{18|}}} </tr>
| {{{19|}}} || {{{20|}}} </tr>
| Y         || Z         </tr>
|}
produces:
A B
M N
Y Z
not:
A B
M N
Y Z
Perhaps, then, what I'm asking won't/can't be uncomplicated. (I suppose the wiki-markup table could use cellspacing="0" and cellpadding="0" (and/or perhaps border-collapse/border-spacing?), but that would then be too great a constraint on non-empty cells...)
As yet, this isn't needed anywhere, but arose while I was experimenting with the idea of a template to streamline/standardise the presentation of parameters' descriptions etc in documentation.
Regards, Sardanaphalus (talk) 09:40, 23 November 2014 (UTC)[reply]
I see, so you don't have any specific example where it is needed. in that case, there is no reason to add code that is never used. Frietjes (talk) 19:01, 23 November 2014 (UTC)[reply]
and thanks for the reminder that WP:CHECKWIKI needs to start tracking where you have used </tr> instead of wikimarkup. Frietjes (talk) 19:02, 23 November 2014 (UTC)[reply]
  • A template featuring an {{Aligned table}} that adds whitespace as above can be deployed quite quickly, if that's what's required..?
and please let me know how many other uses of </tr> with wikimarkup WP:CHECKWIKI finds I've made for the past few months. ("I wonder why, then, it was used here...") I suspect the resources might be better used implementing a wikimarkup equivalent to </tr>.
Sardanaphalus (talk) 22:20, 23 November 2014 (UTC)[reply]
try |- it works very well you just have to make sure it starts on a new line, which also helps make the table more readable. Frietjes (talk) 15:33, 24 November 2014 (UTC)[reply]

I apologise if my enquiry read as if a demand. Empty parameters filling otherwise empty cells seem a distinct possibility with this template, so I thought it would be of interest regardless of specific examples.
I do now have a specific example, practically ready to deploy, for consideration (although it's not the one that prompted this thread; that's currently on-hold): User:Sardanaphalus/Template:Pagelinks templates/Aligned table, as transcluded by its parent ".../Template:Pagelinks templates". The whitespace created by empty-parameter cells can be seen at the bottom of the template's "L(x) templates" and "Related" sections.
Sincerely, Sardanaphalus (talk) 11:39, 3 December 2014 (UTC)[reply]

I've now deployed the template that prompted this thread [[Template:Parameter descriptions|here]]. I'd like to stick with {{Aligned table}} as its container, but, if there's no relatively straightforward or elegant way to prevent the whitespace, I suppose the alternative is an HTML table with conditionals..? Sardanaphalus (talk) 12:28, 9 December 2014 (UTC)[reply]

that template looks like a solution in search of a problem. I suggest we delete it. Frietjes (talk) 17:02, 9 December 2014 (UTC)[reply]

A way to reduce redundancy..?

[edit]

Hello again. Is there a way to avoid redundancy when defining the same (or very similar) kind of Aligned table more than once on a page, or even across pages – in other words, to be able to use something like...

{{Aligned table
[something brief (a template, class?)]
 | ... | (etc)
}}

......

{{Aligned table
[the something-brief]
 | ... | (etc)
}}

......

...rather than (for example)...

{{Aligned table
 |class=nowrap |style=line-height:1.4em;overflow:auto; |col1width=[NNN]em
 |style1.1=padding-left:0.6em;padding-bottom:0.4em;border-bottom:1px solid #aaa;| '''[Header1]'''
 |style1.2=padding-left:1.6em;padding-bottom:0.4em;border-bottom:1px solid #aaa;| '''[Header2]'''
 |row2style=padding-top:0.6em;
 | ... | (etc)
}}

......

{{Aligned table
 |class=nowrap |style=line-height:1.4em;overflow:auto; |col1width=[NNN]em
 |style1.1=padding-left:0.6em;padding-bottom:0.4em;border-bottom:1px solid #aaa;| '''[Header1]'''
 |style1.2=padding-left:1.6em;padding-bottom:0.4em;border-bottom:1px solid #aaa;| '''[Header2]'''
 |row2style=padding-top:0.6em;
 | ... | (etc)
}}

(Is it to define the configuration as a class somehow/somewhere..?)

Sardanaphalus (talk) 06:17, 10 January 2015 (UTC)[reply]

Needs colCheader

[edit]

The |rowRheader= functionality badly needs a comparable |colCheader= equivalent. There's presently no means of telling this template that the first (or whatever, but usually the first and sometimes also the last) column of row cells are <th> elements. This is a pretty serious usability and accessibility problem. For further accessibility reasons, it needs to also correctly output both scope="row" or scope="col" for each table header, which ever one is applicable. While the visual look of a table header can be faked with column- or cell-specific style, this doesn't get around the semantic HTML issue; the header cells really do need to render as <th>...</th> in the user agent. PS: If for some reason |colCheader= would be a bear to implement, then a boolean |headerR.C=yes would work. Having that work in addition to |colCheader=, actually, would also allow us to override the column-wide or row-wide default applied by |rowRheader= and |colCheader=.  — SMcCandlish ¢ ≽ʌⱷ҅ʌ≼  18:23, 18 July 2015 (UTC)[reply]

added colXXheader and scope attributes. Frietjes (talk) 16:10, 26 July 2015 (UTC)[reply]

What's up with colclass?

[edit]

Why is colclass and its description given in parentheses and italiczed, at Template:Aligned table/doc#Parameters? That markup doesn't seem to imply anything concrete.  — SMcCandlish ¢ ≽ʌⱷ҅ʌ≼  19:31, 18 July 2015 (UTC)[reply]

removed. I believe this one was wishful thinking on the part of the editor who added it to the documentation. Frietjes (talk) 16:12, 26 July 2015 (UTC)[reply]

No "rowstyle" parameter

[edit]

The naked "rowstyle" parameter does not appear to be implemented in module:aligned table despite a row style being applied, and template:aligned table documenting such a parameter. Ideally, the unconditional row style "vertical-align:top;" could be made a proper default, or removed entirely. 87.254.79.130 (talk) 00:56, 10 June 2016 (UTC)[reply]

Good catch, and thanks for updating the documentation page about the default. |rowstyle= now works with Special:Diff/724577491. I deem the spec (doc) correct and the code was just missing rowstyle customization. Testcase for |rowstyle= is at testcases. — Andy W. (talk ·ctb) 04:34, 10 June 2016 (UTC)[reply]

Whitespace stripping

[edit]

@Frietjes: As Help:Template#Parameters says, whitespace is not stripped from the beginnings and ends of unnamed parameters. This apparently has a strange effect reported at Wikipedia:Help desk#Indenting issues in IPv4. Below is a simplified example.

; Bold text
:This line and the following table are indented.{{aligned table| cols=2
| Cell1 | Cell2 }}

This line is not indented. All is well.

; Bold text
:This line and the following table are indented.{{aligned table| cols=2
| Cell1 | Cell2
}}

This line is indented, at least for me in Firefox, because the last Cell2 is followed by a newline. Naming the parameter with 2=Cell2 will remove the indentation. PrimeHunter (talk) 02:22, 22 August 2016 (UTC)[reply]

PrimeHunter, this template is just building the html table with very limited processing, and basically not processing of the actual cell contents. you can see the same thing if you were to use an HTML table directly:
; Bold text
:This line and the following table are indented.<table><tr>
<td>Cell1</td><td>Cell2
</td></tr></table>

This line is probably indented for you as well. so, it's not so much an issue with this template as it is an issue with how html tables and dl/dt lists are processed by the server and the browser. Frietjes (talk) 13:45, 22 August 2016 (UTC)[reply]

PrimeHunter, I added functionality to strip trailing whitespace, so this version of IPv4 now renders as expected, and your example above is fixed. as far as I can tell, stripping trailing whitespace is safe for this module/template. we just can't strip leading whitespace since that could mangle lists. Frietjes (talk) 12:51, 24 August 2016 (UTC)[reply]
Frietjes, PrimeHunter, or anyone else reading here, the above wikitext featuring indenting with a colon and a <table> tag on the same line, coding for a table appearing just above "This line is probably indented for you as well", generates a Multiline table in list lint error, so please don't do that. —Anomalocaris (talk) 05:55, 8 May 2019 (UTC)[reply]

rightleft

[edit]

Would it be possible to add the following code to counterbalance leftright and to easily get the opposite effect when so desired?

i.e. |col1align=right and |col2align=left
	if isnotempty(args['rightleft']) then
		colstyle[1] = 'text-align:right;'
		colstyle[2] = 'text-align:left;'
	end

Jay D. Easy (talk) 01:38, 19 March 2019 (UTC)[reply]

 Done -- /Alex/21 07:13, 22 March 2019 (UTC)[reply]