A set of tools to interact with reMarkable tablets
Project description
remarkable
Utilities for interacting with a reMarkable tablet and post-processing exported PDFs.
This project installs two command-line scripts:
remarkable: terminal UI and automation commands for browsing, downloading, and uploading documents.remarkable-hlfix: PDF post-processing tool that reduces highlight opacity.
Installation
Install the package in your current environment:
uv sync
Then run scripts with uv run:
uv run remarkable --help
uv run remarkable-hlfix --help
If installed as a tool or package entry point, you can call remarkable and remarkable-hlfix directly.
Script: remarkable
remarkable connects to the tablet over the reMarkable local interface (http://10.11.99.1) and supports both interactive and one-shot modes.
Configuration files
Defaults are loaded from these files (later files override earlier ones):
Linux/Unix:
/usr/local/etc/remarkableconfig$XDG_CONFIG_HOME/remarkable/config~/.config/remarkable/config~/.remarkableconfig
Windows:
%PROGRAMDATA%/remarkable/config%APPDATA%/remarkable/config%LOCALAPPDATA%/remarkable/config%USERPROFILE%/.remarkableconfig
Expected format:
[general]
hl_fix = true
tag = ""
start_folder = ""
Command-line arguments override config values.
Usage
Start the interactive browser:
remarkable
Start in a specific folder title path:
remarkable "Work/Meetings"
Download newest document and exit:
remarkable --get-newest
Download newest document matching a tag suffix:
remarkable --get-newest --tag _notes
Upload a file and exit:
remarkable --upload-file ./document.pdf
Disable highlight fixing for downloaded PDFs:
remarkable --no-hl-fix
Show installed/runtime version:
remarkable --version
Interactive keys
q: quitF5: refreshh: toggle highlight fix for PDF downloads- In folder list:
Enterto open folder - In document list:
dto download PDF,Dto download.rmdoc
Script: remarkable-hlfix
remarkable-hlfix rewrites a PDF so reMarkable-style highlights are no longer fully opaque.
Default behavior:
- Targets known reMarkable highlight colors.
- Reduces fully opaque highlight fill and stroke opacity from
1.0to0.4. - Preserves graphics-state scoping (
q/Q) so opacity changes do not leak between sibling drawing blocks.
Usage
Basic conversion:
remarkable-hlfix input.pdf output.pdf
Run with default filenames (input.pdf -> output.pdf):
remarkable-hlfix
Apply to all fully opaque filled shapes instead of only known highlight colors:
remarkable-hlfix input.pdf output.pdf --all-colors
Tune minimum stroke width required before applying stroke transparency:
remarkable-hlfix input.pdf output.pdf --min-stroke-width 4.0
Detect highlight palette from one page and print a paste-ready color block:
remarkable-hlfix input.pdf --calibrate-palette --calibration-page 1
Show installed/runtime version:
remarkable-hlfix --version
Troubleshooting
remarkable cannot connect to device
Symptoms:
- Requests fail or time out.
- You see connection errors when listing folders or downloading files.
Checks:
- Ensure the tablet is connected over USB and USB web interface access is enabled.
- Verify the endpoint is reachable:
curl -I http://10.11.99.1/documents/
- If needed, retry after reconnecting the cable and restarting the tablet's USB web interface.
config-related startup failure
If you use a config file, ensure it contains a [general] table:
[general]
hl_fix = true
tag = ""
start_folder = ""
If you are testing quickly, run with explicit flags to avoid relying on config values.
downloaded PDF highlights look unchanged
Try one of these:
- Make sure highlight fixing is enabled (
--hl-fixor togglehin the UI). - Run a direct pass with
remarkable-hlfix. - If your document uses non-standard colors, run calibration first:
remarkable-hlfix input.pdf --calibrate-palette --calibration-page 1
- If highlights are very thin, lower the stroke threshold:
remarkable-hlfix input.pdf output.pdf --min-stroke-width 1.0
remarkable-hlfix input errors
Common causes:
- Input path is wrong.
- File is encrypted or malformed.
- Calibration page number does not exist in the PDF.
Checks:
- Confirm file paths are correct.
- Start with the basic command:
remarkable-hlfix input.pdf output.pdf
- If that fails, try opening and re-saving the PDF with another tool, then run again.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file remarkable_tools-0.2.1.tar.gz.
File metadata
- Download URL: remarkable_tools-0.2.1.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3c6fb3856291cae8eeb8828e5ea27565d4dc718be221fde496299c93c5fde71
|
|
| MD5 |
3a7e481086ab0768efc732c3ba4e6bca
|
|
| BLAKE2b-256 |
a675d174c5603108148fb5d1abfbe24e62c9f03cf2c716c3efb899b6ca536e1b
|
File details
Details for the file remarkable_tools-0.2.1-py3-none-any.whl.
File metadata
- Download URL: remarkable_tools-0.2.1-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
408925389533e17be99978013816142e539676e6a6a1e3304923380e8010894e
|
|
| MD5 |
2644bfaf8f14ddca2566436775eec070
|
|
| BLAKE2b-256 |
edaf81c8e259b4dace953000e7a57ea725681dd6c4f1d950d55c94cb46f473ea
|