5

Tôi đang cố di chuyển tài liệu API và lược đồ trình tạo tài liệu độc quyền của chúng sang reStructuredText. Các mảnh cung cấp cho thời gian khó khăn nhất là, chúng ta có một đại diện bảng chi tiết API, mã hóa trực tiếp trong HTML, a la:Làm thế nào để tạo ra đầu ra dạng bảng trong reStructuredText mà không sử dụng định dạng bảng RST?

--------+------------+--------+--------------------------------+ 
Param | Required | Type | Description 
---------------------------------------------------------------- 
id  |  Yes | int | This is the ID of the record... 
content |  No  | string | Optional string contents... 

(tức này hiện đang được mã hóa như <tr><td class='param'>id</td><td class='required'>Yes</td>...)

tôi muốn làm điều này trong RST nhưng làm điều đó ngữ nghĩa, thay vì chỉ sử dụng định dạng bảng RST. Nhưng tôi không thể tìm thấy bất kỳ ví dụ tốt về custom directives để xử lý này theo cách tôi muốn, đó sẽ là một cái gì đó giống như

:.. parameter-table:: My Parameter Table 
    .. item:: 
     :param: "id" 
     :required: true 
     :type: "int" 
     :desc: "This is the ID of the record..." 

Làm thế nào tôi có thể thực hiện điều này trong reStructuredText?

Trả lời

3

Tôi không nghĩ bạn cần chỉ thị tùy chỉnh. Bạn đã thử sử dụng một cấu hình lại tiêu chuẩn List Table chưa?

Nó trông giống như thế này (từ trang liên kết):

.. list-table:: Frozen Delights! 
    :widths: 15 10 30 
    :header-rows: 1 

    * - Treat 
    - Quantity 
    - Description 
    * - Albatross 
    - 2.99 
    - On a stick! 
    * - Crunchy Frog 
    - 1.49 
    - If we took the bones out, it wouldn't be 
     crunchy, now would it? 
    * - Gannet Ripple 
    - 1.99 
    - On a stick! 

Các tiêu đề bảng là trong mục danh sách bên ngoài đầu tiên (trong ví dụ này, ít nhất). Ngay cả khi điều này không chính xác những gì bạn muốn tôi nghĩ rằng điều này sẽ giúp bạn có được ít nhất 90% con đường ở đó.

+0

Tôi thích trang này. Tôi đồng ý chỉ có 90% - tôi thích nếu các trường rõ ràng hơn là "các trường" thay vì chỉ là vị trí - nhưng nó đơn giản và đủ sạch sẽ có thể tốt hơn mức phức tạp của chỉ thị tùy chỉnh. Cảm ơn! – mrisher

Các vấn đề liên quan