Skip to main content

rgpdf

繁體中文 · English

rgpdf is a cross-platform desktop application for searching text-layer PDFs with plain text or regular expressions. Matches appear as they are found and can be opened in an asynchronous page preview with precise, configurable highlighting.

Features

  • Search multiple PDFs in a folder, optionally including subfolders.
  • Plain-text and regular-expression modes with optional case sensitivity.
  • Matches across lines and page boundaries, including line-end dehyphenation.
  • Incremental per-match results without blocking the interface.
  • Three coordinated views for files, matching passages, and PDF page preview.
  • Per-character highlight geometry and configurable highlight colors.
  • English and Traditional Chinese interfaces, plus system/light/dark themes.
  • Persistent search and appearance preferences.

rgpdf searches existing PDF text layers. It does not perform OCR or modify source files.

Install the latest release

Windows standalone download

Download the versioned rgpdf-*-windows-x86_64.exe and its .sha256 file from the latest GitHub Release. The executable is currently unsigned, so Windows SmartScreen may show an unknown-publisher warning. Verify that the SHA-256 value matches the published file before choosing to run it.

No Python or uv installation is required for the standalone executable.

Install with uv

Install uv, then install the latest release from PyPI:

uv tool install rgpdf

Run the application:

rgpdf

To update an existing installation:

uv tool upgrade rgpdf

Windows and macOS are supported; uv manages the required Python environment.

To install the latest source release directly from GitHub instead, use the moving latest tag:

uv tool install "git+https://github.com/codemee/rgpdf.git@latest"

Development

git clone https://github.com/codemee/rgpdf.git
cd rgpdf
uv sync
uv run pytest
uv run rgpdf

Build a self-contained Windows executable (Python and uv are only required on the build machine):

uv sync --frozen
./scripts/build-windows.ps1 -Python .venv/Scripts/python.exe

The result is dist/rgpdf.exe. GitHub Actions also publishes the executable, LICENSE, and third-party notices as the rgpdf-windows-x86_64 workflow artifact. Public release distribution additionally requires the corresponding source materials listed in the release compliance checklist.

On macOS, build a standalone App that does not require Python on the target Mac:

uv sync --frozen
./scripts/build-macos.sh
open dist/rgpdf.app

The result is dist/rgpdf.app, built for the current Mac's architecture. This small project does not use an Apple Developer ID. The App is ad-hoc signed and not notarized, so another user may need to Control-click it and choose Open the first time.

See Technical details for architecture, matching semantics, concurrency, and release engineering. Version history is in the changelog.

Releases

Immutable releases use version tags such as v0.0.3. The movable latest Git tag always points to the newest published source release. PyPI provides the canonical packaged release.

Releases are automated with GitHub Actions. After making the versions in pyproject.toml and src/rgpdf/__init__.py match, push the corresponding tag:

git tag v0.0.5
git push origin v0.0.5

The workflow tests and builds Windows x86_64 and macOS arm64 in parallel, downloads and verifies the locked third-party corresponding sources, creates one GitHub Release with checksums, then publishes to PyPI through Trusted Publishing. A failed test, build, or source verification prevents publication.

License

rgpdf is licensed under the GNU Affero General Public License version 3. You may use, study, modify, and redistribute it under the terms of that license. Distributed binaries must be accompanied by the complete corresponding source for the same version.

This application uses PyMuPDF/MuPDF under AGPLv3 and PySide6/Qt under LGPLv3. See third-party notices and the release compliance checklist.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rgpdf-0.0.5.tar.gz (68.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rgpdf-0.0.5-py3-none-any.whl (38.2 kB view details)

Uploaded Python 3

File details

Details for the file rgpdf-0.0.5.tar.gz.

File metadata

  • Download URL: rgpdf-0.0.5.tar.gz
  • Upload date:
  • Size: 68.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rgpdf-0.0.5.tar.gz
Algorithm Hash digest
SHA256 b52f21975a15ff35671aac8ed20d9c02530e1c85a170d1e3bdf7161103772d91
MD5 67652c9c8325a0c96e6ff63dd27b016e
BLAKE2b-256 f8e3979ea81aae082dabf64f8e76fd8bfdde22865646ea1d050b13d13f60b3ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgpdf-0.0.5.tar.gz:

Publisher: publish-pypi.yml on codemee/rgpdf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rgpdf-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: rgpdf-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 38.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rgpdf-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d48d2d59c42bff6264f2902b48b34e71a78085c96d16b474a3899f8f95389130
MD5 6cd807dc529960fba2f0804c1ac143c5
BLAKE2b-256 a370ef0983254b8ed8a766aead6e9d4ff1a6cf603766122badfd9fc5e050ceff

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgpdf-0.0.5-py3-none-any.whl:

Publisher: publish-pypi.yml on codemee/rgpdf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.0.7

2 files

0.0.6

2 files

This release

0.0.5 This release

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 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