Difference between revisions of "Tables -- PGML"

From WeBWorK_wiki
Jump to navigation Jump to search
m (Pstaabp moved page PGML tables to Tables -- PGML without leaving a redirect: this name is better in the topic listing)
(One intermediate revision by the same user not shown)
Line 5: Line 5:
 
Then cells use the tags <tt>[. .]</tt> and the last cell in a row ends in a <tt>*</tt>.
 
Then cells use the tags <tt>[. .]</tt> and the last cell in a row ends in a <tt>*</tt>.
   
BEGIN_PGML
 
  +
A simple table can be made with
   
A simple table
 
  +
BEGIN_PGML
 
  +
[# [. col 1 .] [. col 2 .] [. col 3 .]*
[* [. col 1 .] [. col 2 .] [. col 3 .]*
 
 
[. 1 .] [. 2 .] [. 3 .]*
 
[. 1 .] [. 2 .] [. 3 .]*
[. 4 .] [. 5 .] [. 6 .]*
+
[. [`x`] .] [. [`x^2`] .] [. [`x^3`] .]*
]*
+
#]
  +
END_PGML
   
 
Would make a table similar to
 
Would make a table similar to
Line 21: Line 20:
 
|1||2||3
 
|1||2||3
 
|-
 
|-
|4||5||6
 
  +
|x||x<sup>2</sup>||x<sup>3</sup>
 
|}
 
|}
  +
  +
Notice that other PGML structures can exist inside of table cells. A PGML table uses [https://openwebwork.github.io/pg-docs/pod/pg/macros/ui/niceTables.html the niceTables macro] to create the table and options can also be included.
  +
  +
The example:
  +
  +
[#
  +
[. [`x`] .]{bgcolor => 'yellow'}
  +
[. [`x^2`].]*{bgcolor => 'lightblue'}
  +
  +
[. [`2`] .]
  +
[. [_]{4} .]*
  +
#]{align => '|c|c|', horizontalrules => 1}
  +
  +
will generate a table that looks like:
  +
  +
<center>
  +
<table style="border: 1px solid black; border-collapse: collapse">
  +
<tr><td style="background-color: yellow; border: 1px solid black"><em>x</em></td><td style="background-color: lightblue; border: 1px solid black"><em>x</em><sup>2</sup></td><tr>
  +
<tr><td style="border: 1px solid black; background-color: #ddd;">2</td><td style="background-color: #ddd; border: 1px solid black"><div style="background-color: white; border: solid 1px black; height: 2ex; width: 2ex; border-radius: 3px;"></td></tr>
  +
</table>
  +
</center>
  +
  +
Notice that the table-level options should added to the table tags <tt> [# #]</tt>, which include <tt>align</tt> and <tt>horizontalrules</tt>.
  +
Cell-level options are included on the individual cells.
   
 
[[Category:PGML]]
 
[[Category:PGML]]

Revision as of 07:39, 18 May 2024

PGML Tables

One can make a table inside a PGML within the tags [* *]

Then cells use the tags [. .] and the last cell in a row ends in a *.

A simple table can be made with

 BEGIN_PGML
 [# [. col 1 .] [. col 2 .] [. col 3 .]*
   [. 1 .] [. 2 .] [. 3 .]*
   [. [`x`] .] [. [`x^2`] .] [. [`x^3`] .]*
 #]
 END_PGML

Would make a table similar to

col 1 col 2 col 3
1 2 3
x x2 x3

Notice that other PGML structures can exist inside of table cells. A PGML table uses the niceTables macro to create the table and options can also be included.

The example:

[#
 [. [`x`] .]{bgcolor => 'yellow'}
 [. [`x^2`].]*{bgcolor => 'lightblue'}
 
 [. [`2`] .]
 [. [_]{4} .]*
#]{align => '|c|c|', horizontalrules => 1}

will generate a table that looks like:

xx2
2

Notice that the table-level options should added to the table tags [# #], which include align and horizontalrules. Cell-level options are included on the individual cells.