Skip to main content

Simple macro recorder for keystrokes across operating systems

Project description

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.

GUI Sample

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 pip pulls the prebuilt Qt wheels for Linux, macOS, and Windows

Note: The project uses pynput for keyboard hooks. On Linux, that dependency will additionally pull in evdev and python-xlib; on macOS it uses pyobjc frameworks, and on Windows it installs pywin32. 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

  1. Start the Macro Recorder GUI.
  2. Choose a macro slot (1–3).
  3. Click Start Recording, switch to the target application, and perform the actions you want captured.
  4. Return to Macro Recorder and click Stop Recording.
  5. Adjust repetitions and delays as needed.
  6. 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.

Project details


Download files

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

Source Distribution

simple_macrorecorder-1.0.4.tar.gz (55.5 kB view details)

Uploaded Source

Built Distribution

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

simple_macrorecorder-1.0.4-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file simple_macrorecorder-1.0.4.tar.gz.

File metadata

File hashes

Hashes for simple_macrorecorder-1.0.4.tar.gz
Algorithm Hash digest
SHA256 097996936570470b1fb04b1161af42f72af9a39501b4ce514eb5e5f6d2f03ecc
MD5 3ac54909b52f165795d0eedf755f90a4
BLAKE2b-256 7f8b73e2c304acca04f7976ffc8db2e71200d701eb284ee450a2c9dd313e4d14

See more details on using hashes here.

File details

Details for the file simple_macrorecorder-1.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for simple_macrorecorder-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3d7aa371d73146c673b5e992adbe83a5a1ef190aa1088d62d49173204ddc1011
MD5 670f5306bc9cf266e8e64fa97fdb4dce
BLAKE2b-256 0a9ea0a0c25e46ec12558779d4a907c5ed98e97de2213d01546ad250708cce1a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page