Вертикальные заголовки в таблицах RestructuredText - PullRequest
9 голосов
/ 01 апреля 2011

В RestructuredText вы можете отобразить строку заголовка в таблице следующим образом (взято из документации :

+------------------------+------------+----------+----------+
| Header row, column 1   | Header 2   | Header 3 | Header 4 |
| (header rows optional) |            |          |          |
+========================+============+==========+==========+
| body row 1, column 1   | column 2   | column 3 | column 4 |
+------------------------+------------+----------+----------+
| body row 2             | Cells may span columns.          |
+------------------------+------------+---------------------+
| body row 3             | Cells may  | - Table cells       |
+------------------------+ span rows. | - contain           |
| body row 4             |            | - body elements.    |
+------------------------+------------+---------------------+

Можно ли сделать что-то похожее с первым столбцом? Пример, который явно не работает, может быть следующим (обратите внимание на двойное, как в конце столбца 1):

+------------------------++------------+----------+----------+
| Header row, column 1   || Header 2   | Header 3 | Header 4 |
| (header rows optional) ||            |          |          |
+========================++============+==========+==========+
| body row 1, column 1   || column 2   | column 3 | column 4 |
+------------------------++------------+----------+----------+
| body row 2             || Cells may span columns.          |
+------------------------++------------+---------------------+
| body row 3             || Cells may  | - Table cells       |
+------------------------++ span rows. | - contain           |
| body row 4             ||            | - body elements.    |
+------------------------++------------+---------------------+

1 Ответ

16 голосов
/ 19 июля 2011

Вы можете достичь этого, используя директиву list-table с опцией stub-columns.Или вы можете даже объединить stub-columns с header-rows.Смотрите http://docutils.sourceforge.net/docs/ref/rst/directives.html#list-table для деталей.Ниже приведен простой пример:

.. list-table:: Sample list table
   :widths: 10 20 20
   :header-rows: 1
   :stub-columns: 1

   * - 
     - Column 1
     - Column 2
   * - Row 1
     - Hello
     - World!
   * - Row 2
     - Hello
     - List Table!
   * - Row 3
     - This
     - Works

Очевидным недостатком является то, что вам нужно поддерживать содержимое таблицы в виде списка, что может быть не так удобно, как с обычными простыми таблицами.Итак, вы можете проверить директиву csv-table здесь: http://docutils.sourceforge.net/docs/ref/rst/directives.html#id1, которая также имеет опцию stub-columns.

Если вам нужно придерживаться синтаксиса обычных таблиц - извините, яЯ не уверен, что это возможно.В качестве обходного пути - вы можете использовать сильный акцент для текста в первом столбце: -)

...