Remove spoilers from files.
Project description
Despoilerizer
This script reads from stdin and prints out the contents of stdin to stdout,
without the lines that are in between the :SPOILERS BEGIN:
and the
:SPOILERS END:
tags.
It uses stdin and stdout so that it can be easily integrated in bash scripting, for instance:
$ <my_file.tex | python -m despoilerizer | pdflatex
You can also redefine the tags:
$ <my_file.tex | \
python -m despoilerizer --begin="# spoiler" --end="# unspoiler" | \
pdflatex
Installation
$ pip install despoilerizer
Examples
stdin
This is a simple file.
:SPOILERS BEGIN:
It contains spoilers.
:SPOILERS END:
And also other information.
stdout
This is a simple file.
And also other information.
stdin
\begin{document}
% :SPOILERS BEGIN:
important stuff...
% :SPOILERS END:
\end{document}
stdout
\begin{document}
\end{document}
Usage as importable package
import despoilerizer
from pathlib import Path as P
for path in [P('file1.tex'), P('file2.py'), P('file3.txt')]:
out_path = P(path.stem + '_nospoilers' + path.suffix)
with open(path, 'r') as fin:
with open(out_path, 'w') as fout:
despoilerizer.despoilerize_file(fin, fout)
contents = """
This is a very important string.
such spoilers
I really don't want anyone to know.
much wow
"""
with open(P('some_file.txt'), 'w') as f:
f.write(
despoilerizer.despoilerize(contents, begin='such spoilers', end='much wow')
)
Motivation
I have a LaTeX file for a document I'm sharing with my friends. This document contains some information for a DnD campaign both for stuff the players have encountered and stuff that's being worked on.
Therefore, I want to have two different PDF documents: one with the spoilers and one without them.
Project details
Release history Release notifications | RSS feed
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 despoilerizer-1.0.1.tar.gz
.
File metadata
- Download URL: despoilerizer-1.0.1.tar.gz
- Upload date:
- Size: 16.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Linux/5.6.11-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2431b884894f60ce2ef817cfdbed889b304156357e96eac127f50c620b32fec |
|
MD5 | c85f6578247b25d9aa661cb08524387a |
|
BLAKE2b-256 | 3e7c9d55a4c2e443b88d9710470e9216f90913020ea87dd072515268194e2b88 |
File details
Details for the file despoilerizer-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: despoilerizer-1.0.1-py3-none-any.whl
- Upload date:
- Size: 18.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Linux/5.6.11-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47af32465591e8cc22579822ea475a46304c8c91e30e310b01772d57e27bd9aa |
|
MD5 | 0e03bd890683a2e684c29763b5b45dab |
|
BLAKE2b-256 | c7600dbe323587480de380bba81db0ffdaf88720c6335f05b0422b964ba36d51 |