Convert ANSI art to HTML
Project description
ansipants
A Python module and command-line utility for converting .ANS format ANSI art to HTML.
Installation
pip install ansipants
Command-line usage
python -m ansipants input.ans > output.html
For additional options, run python -m ansipants --help
.
The output is a fragment of HTML, in UTF-8 encoding, intended to be inserted into a preformatted text element (<pre>...</pre>
). Further styling is up to you - for the proper MS-DOS experience, The Ultimate Oldschool PC Font Pack by VileR is recommended.
Python API
Example code:
from ansipants import ANSIDecoder
with open('input.ans', 'rt', encoding='cp437') as f:
decoder = ANSIDecoder(f)
print(decoder.as_html())
class ansipants.ANSIDecoder(stream=None, palette='vga', width=80, strict=False)
Parameters:
stream
- the ANSI input data as a file-like object. This should be opened for reading in text mode, which means you'll need to specify the appropriate encoding - for ANSI art created for DOS this will most likely becp437
.palette
- the colour palette to use; either'vga'
or'workbench'
width
- the number of columns the text should wrap atstrict
- If True, the decoder will raise anansipants.ANSIDecodeError
exception on any unrecognised or malformed escape codes; if False, it will skip past them.
ANSIDecoder.as_html()
Returns the HTML output as a string.
ANSIDecoder.as_html_lines()
Returns the HTML output as an iterator, yielding one line at a time.
Author
Matt Westcott matt@west.co.tt
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
Built Distribution
File details
Details for the file ansipants-0.2.tar.gz
.
File metadata
- Download URL: ansipants-0.2.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ae78c7499736addf9e8f36db960ff99a96750ba4adff9d0eac10e598bebd1b3 |
|
MD5 | acd8f522894e3fda6dd63f7ebe1934fe |
|
BLAKE2b-256 | 7b05a7426de91fb305d3eb3295d711a3b575d15dd6fbe09fe23ade46bbff73b1 |
File details
Details for the file ansipants-0.2-py3-none-any.whl
.
File metadata
- Download URL: ansipants-0.2-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c634504122a23846969ec51bb5991455e87f33043c9765ea5324277a0dd3ba1d |
|
MD5 | bc3796926eab98d9523e24f24ad83631 |
|
BLAKE2b-256 | 5f6a95a9c210791e9493113b0b1795c1f3c40460d253d3ecb82ac572fd9028bc |