Nano LP – Literate Programming tool
Introduction
It’s very simple, art-of-concept literate programming (LP) tool. Main idea is too avoid processing document (LP source) format, so input document format is supported by it’s traditional external tool. So it’s possible to have favourite workflow: WYSIWYG editing/text processing/converting with you favourite tool/suite (OpenOffice/Markdown tool/TeX/etc.).
General workflow schemes are:
local/WEB:
____________
+------------+|
| ||
| LP Library ||
| |'
local/WEB: +------------+
------->>--------- /
| | use
| v /
| some format with --> 1. extract sources...
^ LP commands --> 2. cross-references
^ | --> 3. use as library
| v
| EXTERNAL TOOL/OFFICE SUITE
| |
-------<<---------
and:
local/WEB:
____________
+------------+|
| ||
| LP Library ||
| |'
+------------+
/
use
/ READY TO PUBLISH --> 1. online documentation
'some-lp.html' --> ON WEB --> 2. extract sources...
\ --> 3. cross-references
\ --> 4. use as library
-- PARSE AND MODIFYING:
+ embeeded Javascript configuration
+ linked 'nanolp-pub.js'
+ linked 'nanolp-pub.css'
So, this kind of LP tool knows about LP input format only how to extract LP commands and code chunks - tangle, weaving is not needed, input format is ready for printing, publishing, reading, etc.
At the moment, supported input formats are:
Markdown/MultiMarkdown
OpenOffice/LibreOffice
Creole
reStructuredText
TeX/LaTeX
Txt2Tags
Asciidoc
HTML/XML
… and any compatible
Main features
definition of command (macros) with placeholders in the body (code chunk)
variables dictionaries (for substitution of placeholders)
pasting command code chunk with substitution of placeholders
definition of multiple parts code-chunks (for wrapping, etc.)
joining, ‘ending’, etc. several code chunks
‘globbing’ commands when paste
including one file to another (library)
custom event handlers (filters in chain/pipe manner)
supporting URLs in file names (read via HTTP)
prepare of HTML files (with LP commands) for Web publishing
generating cross-references file
auto-detecting of cycles
configurable via simple .INI like file
works with Python 2.7 - Python 3+
works with Unicode (UTF8)
extendible
Installation
Install Python (2.7 or 3+) first, then run:
$ python setup.py install
Then run:
$ nlp.py -h
or:
$ python path-to-scripts/nlp.py -h
Metadata
Release files for nanolp 1.0i
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| nanolp-1.0i.zip | 188.1 kB | Without provenance | Details for nanolp-1.0i.zip |
Release files / nanolp-1.0i.zip
| Download URL | nanolp-1.0i.zip |
|---|---|
| Size | 188.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
53a708c3ad1ce5cafd1c4e9fac99dbe805847fc36def54fc117d43761346e488
|
|
BLAKE2b-256 checksum How to use checksums |
bc04832c2c2db710ad7f273b53b556ad6ba819c4a39f4e8ae238f4e96eca153a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for nanolp 1.0i
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.