Download Latest Version The Latest Release 2.3.2 (356.3 kB)
Email in envelope

Get an email when there's a new version of pyWeb Literate Programming Tool

Home / pyWeb-2.3
Name Modified Size InfoDownloads / Week
Parent folder
pyweb-2.3.2.tar.gz 2014-12-04 356.3 kB
pyweb-2.3.1.tar.gz 2014-03-27 355.9 kB
pyweb-2.3.tar.gz 2014-03-22 354.4 kB
README 2014-03-18 2.4 kB
Totals: 4 Items   1.1 MB 0
pyWeb 2.3: In Python, Yet Another Literate Programming Tool

Literate programming is an attempt to reconcile the opposing needs
of clear presentation to people with the technical issues of 
creating code that will work with our current set of tools.

Presentation to people requires extensive and sophisticated typesetting
techniques.  Further, the "narrative arc" of a presentation may not 
follow the source code as layed out for the compiler.

pyWeb is a literate programming tool that combines the actions
of weaving a document with tangling source files.
It is independent of any particular document markup or source language.
Is uses a simple set of markup tags to define chunks of code and 
documentation.

The pyweb.w file is the source for the various pyweb module and script files, plus
the pyweb.html file.  The various source code files are created by applying a 
tangle operation to the .w file.  The final documentation is created by
applying a weave operation to the .w file.

Installation
-------------

::

    python3 setup.py install

This will install the pyweb module.

Document production
--------------------

The supplied documentation uses RST markup and requires docutils.

::

	python3 -m pyweb pyweb.w
	rst2html.py pyweb.rst pyweb.html

Authoring
---------

The pyweb document describes the simple markup used to define code chunks
and assemble those code chunks into a coherent document as well as working code.

If you're a JEdit user, the ``jedit`` directory can be used
to configure syntax highlighting that includes PyWeb and RST.

Operation
---------

You can then run pyweb with

::

    python3 -m pyweb pyweb.w 

This will create the various output files from the source .w file.

-   ``pyweb.html`` is the final woven document.

-   ``pyweb.py``, ``tangle.py``, ``weave.py``, ``README``, ``setup.py`` and ``MANIFEST.in`` 
	are tangled output files.

Testing
-------

The test directory includes ``pyweb_test.w``, which will create a 
complete test suite.

This weaves a ``pyweb_test.html`` file.

This tangles several test modules:  ``test.py``, ``test_tangler.py``, ``test_weaver.py``,
``test_loader.py`` and ``test_unit.py``.  Running the ``test.py`` module will include and
execute all tests.

::

	cd test
	python3 -m pyweb pyweb_test.w
	PYTHONPATH=.. python3 test.py
	rst2html.py pyweb_test.rst pyweb_test.html


Source: README, updated 2014-03-18