Macro Recorder
A simple PySide6/Qt application for recording and replaying keyboard input. The app offers three macro slots, customizable playback timing, and persistent storage so you can automate repetitive tasks from the desktop.
Features
- Record key presses/releases with their timing
- Store up to three independent macros
- Configure repetitions and per-key delays before playback
- Inspect recorded events directly within the GUI
Requirements
- Python 3.10+
- PySide6 (Qt 6) runtime — installing the project with
pippulls the prebuilt Qt wheels for Linux, macOS, and Windows
Note: The project uses
pynputfor keyboard hooks. On Linux, that dependency will additionally pull inevdevandpython-xlib; on macOS it usespyobjcframeworks, and on Windows it installspywin32. macOS users must grant the terminal or Python executable “Accessibility” permissions so key capture can work, and Windows users should allow the app through any desktop security prompts the first time they run it.
Installation
Install from PyPI:
pip install simple_macrorecorder
Or work from source:
git clone https://github.com/werzum/MacroRecorder.git
cd MacroRecorder
python -m venv .venv
source .venv/bin/activate # use .venv\Scripts\activate on Windows PowerShell
pip install -e .
Running the application
Launch the GUI with:
python -m macrorecorder
If you installed the package globally, you can also use the console script:
macrorecorder
Macros, slot-specific delays, and repetition counts are stored in your platform’s user data directory (for example: ~/.local/share/MacroRecorder/recorded_keys.json on Linux, %APPDATA%\\MacroRecorder\\recorded_keys.json on Windows, or ~/Library/Application Support/MacroRecorder/recorded_keys.json on macOS). Your latest GUI adjustments are saved automatically when you stop recording or close the app, so the same values are restored the next time you launch Macro Recorder on any supported platform.
Typical workflow
- Start the Macro Recorder GUI.
- Choose a macro slot (1–3).
- Click Start Recording, switch to the target application, and perform the actions you want captured.
- Return to Macro Recorder and click Stop Recording.
- Adjust repetitions and delays as needed.
- Click Play Recorded Script to replay the macro.
The GUI displays the captured events for the active slot so you can review timing and key order before playback.
Metadata
Release files for simple_macrorecorder 1.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| simple_macrorecorder-1.0.4.tar.gz | 55.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| simple_macrorecorder-1.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 76.4 kB
Release files / simple_macrorecorder-1.0.4.tar.gz
| Download URL | simple_macrorecorder-1.0.4.tar.gz |
|---|---|
| Size | 55.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
097996936570470b1fb04b1161af42f72af9a39501b4ce514eb5e5f6d2f03ecc
|
|
BLAKE2b-256 checksum How to use checksums |
7f8b73e2c304acca04f7976ffc8db2e71200d701eb284ee450a2c9dd313e4d14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.14
|
Release files / simple_macrorecorder-1.0.4-py3-none-any.whl
| Download URL | simple_macrorecorder-1.0.4-py3-none-any.whl |
|---|---|
| Size | 20.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3d7aa371d73146c673b5e992adbe83a5a1ef190aa1088d62d49173204ddc1011
|
|
BLAKE2b-256 checksum How to use checksums |
0a9ea0a0c25e46ec12558779d4a907c5ed98e97de2213d01546ad250708cce1a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.14
|