Skip to main content

Add the `spreadsheet` directive to reStructuredText for Docutils and Sphinx

Project description

rstSpreadsheet provides the spreadsheet directive for reStructuredText. You can use it from Docutils or Sphinx. Any python function/module can be used to calculate the cell value. Please see the documentation and examples

Install

pip install rstspreadsheet  # or
easy_install rstspreadsheet

Usage

Use as a standalone program:

python -m rstspreadsheet sample.rst sample.html

Or use as a sphinx extension by adding it to extensions:

extensions = [
    # other extensions...
    'rstspreadsheet']

Examples

Simple spreadsheet

You can do this simple calculation:

p q p and q not (p and q)
0 0 0 1
1 0 0 1
0 1 0 1
1 1 1 0

with this simple code:

.. spreadsheet::
   :eq: {2} = {0} and {1}
        {3} = int(not {2})

   === === ========= ===============
    p   q   p and q   not (p and q)
   === === ========= ===============
    0   0
    1   0
    0   1
    1   1
   === === ========= ===============

Spreadsheet with python functions

If you want to calculate some complicated math functions like this:

function argument expression result
fac 5 fac(5) 120.00
sin pi sin(pi) 0.00
cos pi cos(pi) -1.00
exp 1 exp(1) 2.72

use python module/function!:

.. spreadsheet::
   :eq: {2} = '{0}({1})'
        {3} = {2}
   :setup: from math import sin, cos, exp, pi
           def fac(n):
               return fac(n-1) * n if n > 1 else 1
   :format: 3:'%0.2f'

   ======== ======== ========== ======
   function argument expression result
   ======== ======== ========== ======
   fac      5
   sin      pi
   cos      pi
   exp      1
   ======== ======== ========== ======

You can see more examples here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rstspreadsheet-0.1.2.tar.gz (5.3 kB view hashes)

Uploaded source

Built Distribution

rstspreadsheet-0.1.2-py2.6.egg (11.8 kB view hashes)

Uploaded 2 6

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page