[media] docs-rst: add tabularcolumns to all tables
authorMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 17 Aug 2016 11:14:19 +0000 (08:14 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Mon, 22 Aug 2016 13:07:12 +0000 (10:07 -0300)
commit5bd4bb7817093e9e3fe2671832de3486cb58b28b
tree47bfcad054bfeea42b866047032119c7c76d6a69
parent1d80b03e52fe54c46ccfe59c107c92f0e52129ff
[media] docs-rst: add tabularcolumns to all tables

LaTeX doesn't handle too well auto-width on tables, and ReST
markup requires an special tag to give it the needed hints.

As we're using A4 paper, we have 17cm of useful spaces. As
most media tables have widths, let's use it to generate the
needed via the following perl script:

my ($line_size, $table_header, $has_cols) = (17.5, 0, 0);
my $out;
my $header = "";
my @widths = ();
sub round { $_[0] > 0 ? int($_[0] + .5) : -int(-$_[0] + .5) }
while (<>) {
if (!$table_header) {
$has_cols = 1 if (m/..\s+tabularcolumns::/);
if (m/..\s+flat-table::/) {
$table_header = 1;
$header = $_;
next;
}
$out .= $_;
next;
}
$header .= $_;
@widths = split(/ /, $1) if (m/:widths:\s+(.*)/);
if (m/^\n$/) {
if (!$has_cols && @widths) {
my ($tot, $t, $i) = (0, 0, 0);
foreach my $v(@widths) { $tot += $v; };
$out .= ".. tabularcolumns:: |";
for ($i = 0; $i < scalar @widths - 1; $i++) {
my $v = $widths[$i];
my $w = round(10 * ($v * $line_size) / $tot) / 10;
$out .= sprintf "p{%.1fcm}|", $w;
$t += $w;
}
my $w = $line_size - $t;
$out .= sprintf "p{%.1fcm}|\n\n", $w;
}
$out .= $header;
$table_header = 0;
$has_cols = 0;
$header = "";
@widths = ();
}
}
print $out;

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
114 files changed:
Documentation/media/uapi/cec/cec-ioc-adap-g-caps.rst
Documentation/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst
Documentation/media/uapi/cec/cec-ioc-dqevent.rst
Documentation/media/uapi/cec/cec-ioc-g-mode.rst
Documentation/media/uapi/cec/cec-ioc-receive.rst
Documentation/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst
Documentation/media/uapi/dvb/fe-diseqc-send-master-cmd.rst
Documentation/media/uapi/dvb/fe-get-info.rst
Documentation/media/uapi/dvb/fe-type-t.rst
Documentation/media/uapi/gen-errors.rst
Documentation/media/uapi/mediactl/media-ioc-device-info.rst
Documentation/media/uapi/mediactl/media-ioc-enum-entities.rst
Documentation/media/uapi/mediactl/media-ioc-enum-links.rst
Documentation/media/uapi/mediactl/media-ioc-g-topology.rst
Documentation/media/uapi/rc/rc-tables.rst
Documentation/media/uapi/v4l/buffer.rst
Documentation/media/uapi/v4l/dev-raw-vbi.rst
Documentation/media/uapi/v4l/dev-rds.rst
Documentation/media/uapi/v4l/dev-sdr.rst
Documentation/media/uapi/v4l/dev-sliced-vbi.rst
Documentation/media/uapi/v4l/field-order.rst
Documentation/media/uapi/v4l/pixfmt-002.rst
Documentation/media/uapi/v4l/pixfmt-003.rst
Documentation/media/uapi/v4l/pixfmt-007.rst
Documentation/media/uapi/v4l/pixfmt-013.rst
Documentation/media/uapi/v4l/pixfmt-grey.rst
Documentation/media/uapi/v4l/pixfmt-m420.rst
Documentation/media/uapi/v4l/pixfmt-nv12.rst
Documentation/media/uapi/v4l/pixfmt-nv12m.rst
Documentation/media/uapi/v4l/pixfmt-nv16.rst
Documentation/media/uapi/v4l/pixfmt-nv16m.rst
Documentation/media/uapi/v4l/pixfmt-nv24.rst
Documentation/media/uapi/v4l/pixfmt-packed-rgb.rst
Documentation/media/uapi/v4l/pixfmt-reserved.rst
Documentation/media/uapi/v4l/pixfmt-sbggr16.rst
Documentation/media/uapi/v4l/pixfmt-sbggr8.rst
Documentation/media/uapi/v4l/pixfmt-sdr-cs08.rst
Documentation/media/uapi/v4l/pixfmt-sdr-cs14le.rst
Documentation/media/uapi/v4l/pixfmt-sdr-cu08.rst
Documentation/media/uapi/v4l/pixfmt-sdr-cu16le.rst
Documentation/media/uapi/v4l/pixfmt-sdr-ru12le.rst
Documentation/media/uapi/v4l/pixfmt-sgbrg8.rst
Documentation/media/uapi/v4l/pixfmt-sgrbg8.rst
Documentation/media/uapi/v4l/pixfmt-srggb10.rst
Documentation/media/uapi/v4l/pixfmt-srggb10p.rst
Documentation/media/uapi/v4l/pixfmt-srggb12.rst
Documentation/media/uapi/v4l/pixfmt-srggb8.rst
Documentation/media/uapi/v4l/pixfmt-uv8.rst
Documentation/media/uapi/v4l/pixfmt-uyvy.rst
Documentation/media/uapi/v4l/pixfmt-vyuy.rst
Documentation/media/uapi/v4l/pixfmt-y10.rst
Documentation/media/uapi/v4l/pixfmt-y10b.rst
Documentation/media/uapi/v4l/pixfmt-y12.rst
Documentation/media/uapi/v4l/pixfmt-y12i.rst
Documentation/media/uapi/v4l/pixfmt-y16-be.rst
Documentation/media/uapi/v4l/pixfmt-y16.rst
Documentation/media/uapi/v4l/pixfmt-y41p.rst
Documentation/media/uapi/v4l/pixfmt-y8i.rst
Documentation/media/uapi/v4l/pixfmt-yuv410.rst
Documentation/media/uapi/v4l/pixfmt-yuv411p.rst
Documentation/media/uapi/v4l/pixfmt-yuv420.rst
Documentation/media/uapi/v4l/pixfmt-yuv420m.rst
Documentation/media/uapi/v4l/pixfmt-yuv422m.rst
Documentation/media/uapi/v4l/pixfmt-yuv422p.rst
Documentation/media/uapi/v4l/pixfmt-yuv444m.rst
Documentation/media/uapi/v4l/pixfmt-yuyv.rst
Documentation/media/uapi/v4l/pixfmt-yvyu.rst
Documentation/media/uapi/v4l/pixfmt-z16.rst
Documentation/media/uapi/v4l/subdev-formats.rst
Documentation/media/uapi/v4l/vidioc-create-bufs.rst
Documentation/media/uapi/v4l/vidioc-cropcap.rst
Documentation/media/uapi/v4l/vidioc-dbg-g-chip-info.rst
Documentation/media/uapi/v4l/vidioc-dbg-g-register.rst
Documentation/media/uapi/v4l/vidioc-decoder-cmd.rst
Documentation/media/uapi/v4l/vidioc-dqevent.rst
Documentation/media/uapi/v4l/vidioc-dv-timings-cap.rst
Documentation/media/uapi/v4l/vidioc-encoder-cmd.rst
Documentation/media/uapi/v4l/vidioc-enum-dv-timings.rst
Documentation/media/uapi/v4l/vidioc-enum-fmt.rst
Documentation/media/uapi/v4l/vidioc-enum-frameintervals.rst
Documentation/media/uapi/v4l/vidioc-enum-framesizes.rst
Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst
Documentation/media/uapi/v4l/vidioc-enuminput.rst
Documentation/media/uapi/v4l/vidioc-enumoutput.rst
Documentation/media/uapi/v4l/vidioc-enumstd.rst
Documentation/media/uapi/v4l/vidioc-expbuf.rst
Documentation/media/uapi/v4l/vidioc-g-audio.rst
Documentation/media/uapi/v4l/vidioc-g-audioout.rst
Documentation/media/uapi/v4l/vidioc-g-crop.rst
Documentation/media/uapi/v4l/vidioc-g-ctrl.rst
Documentation/media/uapi/v4l/vidioc-g-dv-timings.rst
Documentation/media/uapi/v4l/vidioc-g-edid.rst
Documentation/media/uapi/v4l/vidioc-g-enc-index.rst
Documentation/media/uapi/v4l/vidioc-g-ext-ctrls.rst
Documentation/media/uapi/v4l/vidioc-g-fbuf.rst
Documentation/media/uapi/v4l/vidioc-g-frequency.rst
Documentation/media/uapi/v4l/vidioc-g-jpegcomp.rst
Documentation/media/uapi/v4l/vidioc-g-modulator.rst
Documentation/media/uapi/v4l/vidioc-g-parm.rst
Documentation/media/uapi/v4l/vidioc-g-priority.rst
Documentation/media/uapi/v4l/vidioc-g-selection.rst
Documentation/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst
Documentation/media/uapi/v4l/vidioc-g-tuner.rst
Documentation/media/uapi/v4l/vidioc-queryctrl.rst
Documentation/media/uapi/v4l/vidioc-reqbufs.rst
Documentation/media/uapi/v4l/vidioc-s-hw-freq-seek.rst
Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst
Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst
Documentation/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst
Documentation/media/uapi/v4l/vidioc-subdev-g-crop.rst
Documentation/media/uapi/v4l/vidioc-subdev-g-fmt.rst
Documentation/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst
Documentation/media/uapi/v4l/vidioc-subdev-g-selection.rst
Documentation/media/uapi/v4l/vidioc-subscribe-event.rst