Metadata-Version: 1.1
Name: pantable
Version: 0.5
Summary: CSV Tables in Markdown: Pandoc Filter for CSV Tables
Home-page: https://github.com/ickc/pantable
Author: Kolen Cheung
Author-email: christian.kolen@gmail.com
License: GPLv3
Description: .. This README is auto-generated from `docs/README.md`. Do not edit this file directly.
        
        =====================================================
        CSV Tables in Markdown — Pandoc Filter for CSV Tables
        =====================================================
        
        :Date:   December  4, 2016
        
        .. role:: math(raw)
           :format: html latex
        ..
        
        .. contents::
           :depth: 3
        ..
        
        |Build Status| |GitHub Releases| |PyPI version| |Development Status|
        |Python version| |License| |Coveralls|
        
        The pantable package comes with 2 pandoc filters, ``pantable.py`` and
        ``pantable2csv.py``. ``pantable`` is the main filter, introducing a
        syntax to include CSV table in markdown source. ``pantable2csv``
        complements ``pantable``, is the inverse of ``pantable``, which convert
        native pandoc tables into the CSV table format defined by ``pantable``.
        
        Some example uses are:
        
        #. You already have tables in CSV format.
        
        #. You feel that directly editing markdown table is troublesome. You
           want a spreadsheet interface to edit, but want to convert it to
           native pandoc table for higher readability. And this process might go
           back and forth.
        
        #. You want lower-level control on the table and column widths.
        
        #. You want to use all table features supported by the pandoc’s internal
           AST table format, which is not possible in markdown for pandoc <=
           1.18. [1]_
        
        ``pantable``
        ============
        
        This allows CSV tables, optionally containing markdown syntax (disabled
        by default), to be put in markdown as a fenced code blocks.
        
        Example
        -------
        
        Also see the README in `GitHub
        Pages <https://ickc.github.io/pantable/>`__. There’s a `LaTeX
        output <https://ickc.github.io/pantable/README.pdf>`__ too.
        
        ::
        
            ```table
            ---
            caption: '*Awesome* **Markdown** Table'
            alignment: RC
            table-width: 0.7
            markdown: True
            ---
            First row,defaulted to be header row,can be disabled
            1,cell can contain **markdown**,"It can be aribrary block element:
        
            - following standard markdown syntax
            - like this"
            2,"Any markdown syntax, e.g.",$$E = mc^2$$
            ```
        
        becomes
        
        +--------+---------------------+--------------------------+
        | First  | defaulted to be     | can be disabled          |
        | row    | header row          |                          |
        +========+=====================+==========================+
        | 1      | cell can contain    | It can be aribrary block |
        |        | **markdown**        | element:                 |
        |        |                     |                          |
        |        |                     | -  following standard    |
        |        |                     |    markdown syntax       |
        |        |                     | -  like this             |
        +--------+---------------------+--------------------------+
        | 2      | Any markdown        | .. math:: E = mc^2       |
        |        | syntax, e.g.        |                          |
        +--------+---------------------+--------------------------+
        
        Table: *Awesome* **Markdown** Table
        
        (The equation might not work if you view this on PyPI.)
        
        Install and Use
        ---------------
        
        Install:
        
        .. code:: bash
        
            pip install -U pantable
        
        Use:
        
        .. code:: bash
        
            pandoc -F pantable -o README.html README.md
        
        Syntax
        ------
        
        Fenced code blocks is used, with a class ``table``. See [Example].
        
        Optionally, YAML metadata block can be used within the fenced code
        block, following standard pandoc YAML metadata block syntax. 7 metadata
        keys are recognized:
        
        -  ``caption``: the caption of the table. If omitted, no caption will be
           inserted. Default: disabled.
        
        -  ``alignment``: a string of characters among ``L,R,C,D``,
           case-insensitive, corresponds to Left-aligned, Right-aligned,
           Center-aligned, Default-aligned respectively. e.g. ``LCRD`` for a
           table with 4 columns. Default: ``DDD...``
        
        -  ``width``: a list of relative width corresponding to the width of
           each columns. e.g.
        
           .. code:: yaml
        
               - width
                   - 0.1
                   - 0.2
                   - 0.3
                   - 0.4
        
           Default: auto calculated from the length of each line in table cells.
        
        -  ``table-width``: the relative width of the table (e.g. relative to
           ``\linewidth``). default: 1.0
        
        -  ``header``: If it has a header row or not. True/False/yes/NO are
           accepted, case-insensitive. default: True
        
        -  ``markdown``: If CSV table cell contains markdown syntax or not. Same
           as above. Default: False
        
        -  ``include``: the path to an CSV file, can be relative/absolute. If
           non-empty, override the CSV in the CodeBlock. default: None
        
        When the metadata keys is invalid, the default will be used instead.
        
        ``pantable2csv``
        ================
        
        This one is the inverse of ``pantable``, a panflute filter to convert
        any native pandoc tables into the CSV table format used by pantable.
        
        Effectively, ``pantable`` forms a “CSV Reader”, and ``pantable2csv``
        forms a “CSV Writer”. It allows you to convert back and forth between
        these 2 formats.
        
        For example, in the markdown source:
        
        ::
        
            +--------+---------------------+--------------------------+
            | First  | defaulted to be     | can be disabled          |
            | row    | header row          |                          |
            +========+=====================+==========================+
            | 1      | cell can contain    | It can be aribrary block |
            |        | **markdown**        | element:                 |
            |        |                     |                          |
            |        |                     | -   following standard   |
            |        |                     |     markdown syntax      |
            |        |                     | -   like this            |
            +--------+---------------------+--------------------------+
            | 2      | Any markdown        | $$E = mc^2$$             |
            |        | syntax, e.g.        |                          |
            +--------+---------------------+--------------------------+
        
            : *Awesome* **Markdown** Table
        
        running ``pandoc -F pantable2csv -o output.md input.md``, it becomes
        
        ::
        
            ``` {.table}
            ---
            alignment: DDD
            caption: '*Awesome* **Markdown** Table'
            header: true
            markdown: true
            table-width: 0.8055555555555556
            width: [0.125, 0.3055555555555556, 0.375]
            ---
            First row,defaulted to be header row,can be disabled
            1,cell can contain **markdown**,"It can be aribrary block element:
        
            -   following standard markdown syntax
            -   like this
            "
            2,"Any markdown syntax, e.g.",$$E = mc^2$$
            ```
        
        Related Filters
        ===============
        
        The followings are pandoc filters written in Haskell that provide
        similar functionality. This filter is born after testing with theirs.
        
        -  `baig/pandoc-csv2table: A Pandoc filter that renders CSV as Pandoc
           Markdown Tables. <https://github.com/baig/pandoc-csv2table>`__
        -  `mb21/pandoc-placetable: Pandoc filter to include CSV data (from file
           or URL) <https://github.com/mb21/pandoc-placetable>`__
        -  `sergiocorreia/panflute/csv-tables.py <https://github.com/sergiocorreia/panflute/blob/1ddcaba019b26f41f8c4f6f66a8c6540a9c5f31a/docs/source/csv-tables.py>`__
        
        +-------+---------------------+------------+-----------+----------------------------+
        |       | pandoc-csv2table    | pandoc-pla | panflute  | pantable                   |
        |       |                     | cetable    | example   |                            |
        +=======+=====================+============+===========+============================+
        | capti | caption             | caption    | title     | caption                    |
        | on    |                     |            |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | align | aligns = LRCD       | aligns = L |           | aligns = LRCD              |
        | s     |                     | RCD        |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | width |                     | widths = " |           | width: [0.5, 0.2, 0.3]     |
        |       |                     | 0.5 0.2 0. |           |                            |
        |       |                     | 3"         |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | table |                     |            |           | table-width: 1.0           |
        | -widt |                     |            |           |                            |
        | h     |                     |            |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | heade | header = yes \| no  | header = y | header: T | header: True \| False \| y |
        | r     |                     | es \| no   | rue \| Fa | es \| NO                   |
        |       |                     |            | lse       |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | markd |                     | inlinemark |           | markdown: True \| False \| |
        | own   |                     | down       |           |  yes \| NO                 |
        +-------+---------------------+------------+-----------+----------------------------+
        | sourc | source              | file       | source    | include                    |
        | e     |                     |            |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | other | type = simple \| mu |            |           |                            |
        | s     | ltiline \| grid \|  |            |           |                            |
        |       | pipe                |            |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        |       |                     | delimiter  |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        |       |                     | quotechar  |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        |       |                     | id (wrappe |           |                            |
        |       |                     | d by div)  |           |                            |
        +-------+---------------------+------------+-----------+----------------------------+
        | Notes |                     |            |           | width are auto-calculated  |
        |       |                     |            |           | when width is not specifie |
        |       |                     |            |           | d                          |
        +-------+---------------------+------------+-----------+----------------------------+
        
        .. [1]
           In pandoc 1.19, grid-tables is improved to support all features
           available to the AST too.
        
        .. |Build Status| image:: https://travis-ci.org/ickc/pantable.svg?branch=master
           :target: https://travis-ci.org/ickc/pantable
        .. |GitHub Releases| image:: https://img.shields.io/github/tag/ickc/pantable.svg?label=github+release
           :target: https://github.com/ickc/pantable/releases
        .. |PyPI version| image:: https://img.shields.io/pypi/v/pantable.svg
           :target: https://pypi.python.org/pypi/pantable/
        .. |Development Status| image:: https://img.shields.io/pypi/status/pantable.svg
           :target: https://pypi.python.org/pypi/pantable/
        .. |Python version| image:: https://img.shields.io/pypi/pyversions/pantable.svg
           :target: https://pypi.python.org/pypi/pantable/
        .. |License| image:: https://img.shields.io/pypi/l/pantable.svg
        .. |Coveralls| image:: https://img.shields.io/coveralls/ickc/pantable.svg
           :target: https://coveralls.io/github/ickc/pantable
        
Keywords: pandoc pandocfilters panflute markdown latex
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Text Processing :: Filters
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
