# Source

Filename Size Date modified Message
doc
49 B
142 B
2.5 KB
13.6 KB
761 B

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


## 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...


## Examples

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
=== === ========= ===============


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.