Skip to main content

pdf-shuffle

PyPI version shields.io PyPI license

A PDF page/image randomizer, or flashcard quiz from a PDF. Or randomize files from a folder.

Installation

$ pip install pdf-shuffle

Usage

pdf-shuffle comes with 2 CLI applications:

$ pdf-shuffle --help
Usage: pdf-shuffle [OPTIONS] FILENAME

Options:
  --start INTEGER
  --end TEXT
  --step INTEGER
  --random / --no-random
  --host TEXT
  --port INTEGER
  --help                  Show this message and exit.
$ pdf-shuffle test.pdf

And,

$ pdf-quiz --help
Usage: pdf-quiz [OPTIONS] FILENAME

Options:
  --start INTEGER
  --end TEXT
  --step INTEGER
  --random / --no-random
  --host TEXT
  --port INTEGER
  --help                  Show this message and exit.
$ pdf-quiz quiz.pdf

Of course, you can invoke the app from a Python script as well.

from pdf_shuffle import init
init('test.pdf')

Or,

from pdf_shuffle import init_quiz
init_quiz('quiz.pdf')

You can also random files in a folder:

from pdf_shuffle import init
init('test/')

Advanced usage

By default, quiz.pdf means, excluding the first slide, every first and second slides are front of the card and back of the card, respectively. You can change that, with:

import os, json
os.environ['PAGE_RANDOM'] = json.dumps([2, 3, 5, 9, 12])

Spaced-repetition system (SRS)

If you are looking into extending the app with SRS, you might try, srs-sqlite, which I currently use.

Release files for pdf-shuffle 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pdf-shuffle 0.2.1
File Size Uploaded
pdf-shuffle-0.2.1.tar.gz 6.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pdf-shuffle 0.2.1
File Interpreter ABI Platform
pdf_shuffle-0.2.1-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 21.1 kB

Release files / pdf-shuffle-0.2.1.tar.gz

Download URL pdf-shuffle-0.2.1.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e9420ccc11414d4e5fa78642c54491fed750b1e0a8b7e7215d5abdaf045b93ab
BLAKE2b-256 checksum
How to use checksums
0a9cd04dcb22bf548e05ca23a47680f94a5ceaa60c151997f009a3fe549d3851
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/0.11.4 CPython/3.7.0 Darwin/17.7.0

Release files / pdf_shuffle-0.2.1-py2.py3-none-any.whl

Download URL pdf_shuffle-0.2.1-py2.py3-none-any.whl
Size 14.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
f80cfdb81e8bd986b2baf7d048a3bd4f5ed972bcdbfba95efa4061b452e6e775
BLAKE2b-256 checksum
How to use checksums
8193dc1494eff1ac133f36d82fbfe9a8d01b0e0d0d97fd6e133344f6c8a65f4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/0.11.4 CPython/3.7.0 Darwin/17.7.0

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page