14 repository-uri
Tools for simulating persistent key states like modifier keys.
Distinguishing note: Focuses on key-down state management for combinations.
Explore 14 awesome GitHub repositories matching user interface & experience · Modifier Key Simulators. Refine with filters or upvote what's useful.
Selenium is a comprehensive browser automation framework that provides a standardized interface for controlling web browsers to perform automated tasks, user interactions, and data extraction. It functions as a cross-browser testing tool, enabling developers to execute identical automation scripts across various browser engines and operating systems to ensure consistent application behavior. By implementing the WebDriver protocol, it maps high-level automation commands to browser-specific drivers using a standardized HTTP-based wire protocol. The project distinguishes itself through its distr
Presses and holds keys to enable modifier combinations during input actions.
Karabiner-Elements is a system-level utility designed for advanced keyboard and mouse customization. It functions as a background service that intercepts raw hardware input signals at the driver level, allowing for the transformation of key presses and pointer movements before they reach the operating system. By utilizing virtual input device emulation, the software re-injects modified events into the system stream, enabling complex remapping, macro execution, and hardware-specific control. The project distinguishes itself through a sophisticated state-based logic engine that enables context-
Injects specific modifier keys into input sequences to simulate complex key combinations or trigger system-level shortcuts.
Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model allows multiple terminal windows to connect to a single editing session, providing a programmable environment for managing source code and text. The editor is distinguished by its selection-first logic, where a text region must be predefined before a command is applied. It leverages regular expressions to manage multiple cursors and perform bulk edits across complex text patterns, and it integrates deeply with the shell by piping selections through external programs and filters.
Runs a sequence of keys as if pressed by a user to automate actions.
Solaar is a device management tool and configuration suite for Logitech wireless peripherals on Linux. It serves as an input peripheral monitor that tracks battery levels and connection link quality via a system tray application, while providing a receiver manager for pairing and unpairing wireless devices with proprietary USB receivers. The project features an input device automation engine that maps hardware events and mouse gestures to simulated keyboard inputs or system commands. This allows for the creation of custom rules that trigger actions based on device notifications or specific wi
Sends synthetic key symbols and sequences to the OS to emulate physical keyboard presses.
skhd is a keyboard shortcut manager and hotkey daemon for macOS. It functions as an input remapper that maps custom keyboard shortcuts to shell commands and system actions via a plain text configuration file. The utility supports modal keyboard workflows, allowing groups of shortcuts to activate only when the system is in a specific operational mode. It also enables application-specific hotkeys and application blacklisting, ensuring shortcuts only trigger based on which application is currently in focus. Additional capabilities include the remapping of hardware media keys and the synthesis o
Simulates the pressing of keyboard keys as a resulting output of a triggered hotkey.
uiautomator2 is an Android device automation tool and UI testing library. It functions as a framework for automating user interface interactions and managing device states via a remote client. The project provides a remote management interface for controlling Android applications, simulating user gestures, and managing system settings. It enables the analysis of XML UI hierarchies to locate interface elements and verify application behavior. The tool covers broad capability areas including application lifecycle management, device connectivity, and file system operations. It also includes sys
Triggers hardware and software key presses to simulate user navigation or lock the screen.
hotkeys-js is a JavaScript keyboard shortcut library and event manager used to map key combinations to callback functions within web applications. It serves as an input shortcut orchestrator that captures and filters keyboard events to execute custom actions. The library distinguishes itself through shortcut scope management, allowing shortcuts to be organized into named groups. These scopes can be toggled to prevent command conflicts across different application states. The system covers keyboard shortcut binding and unbinding, real-time key state querying, and input event filtering to prev
Maintains an internal record of pressed modifier keys to validate complex multi-key shortcuts in real time.
pydoll is a Chrome DevTools Protocol automation library and headless browser controller used for web data extraction and parallel browser automation. It controls Chromium-based browsers via direct WebSocket connections, allowing it to manage isolated browser contexts and tabs while bypassing the overhead and detection associated with WebDriver. The project features an anti-bot evasion framework that mimics natural human behavior, including mouse movements generated via Bezier curves and variable typing patterns. It provides specialized stealth capabilities to bypass behavioral analysis and au
Dispatches key presses and releases with support for modifier keys and physical key identifiers.
Keymaster is a keyboard shortcut library for web applications that provides utilities for intercepting keyboard events and mapping key combinations to handler functions. It includes a keyboard event manager and a key state tracker to monitor and query which keys or modifiers are currently held down. The library features a scoped input handler that allows shortcuts to be grouped into named contexts. This enables the application to switch between different sets of available actions depending on the active area of the interface. The system includes input filtering to prevent global shortcuts fr
Provides the ability to query whether specific keys or modifiers are currently being held down.
Tridactyl is a Vim-like Firefox extension that provides a comprehensive keyboard-driven interface for browsing, tab management, and page interaction. It replaces traditional mouse-based navigation with Vim-style keybindings, an ex-mode command line, and a hint overlay system for selecting and interacting with page elements. The extension is built around a core infrastructure that includes a modal command parser, a keybinding configuration system, and a content-script command bridge for executing commands in page context. The extension distinguishes itself through its deep integration with Fir
Simulates keypresses by feeding a string of keys directly to the key parser for automation.
Kmonad este un remapper de tastatură cross-platform și un motor avansat de mapare a tastelor care interceptează input-urile tastaturii fizice și le transformă în evenimente de output virtual personalizate. Funcționează ca un wrapper de input programabil și manager de tastatură multi-layer, permițând utilizatorilor să redefinească tastele fizice și să ruteze input-urile hardware către dispozitive virtuale pe diferite sisteme de operare. Sistemul se distinge printr-o arhitectură de gestionare multi-layer care permite definirea straturilor dinamice de tastatură și a overlay-urilor pentru a schimba funcțiile tastaturii în funcție de contextul curent. Implementează o logică complexă de interacțiune, cum ar fi comportamentele tap-hold, tastele leader, modificatorii sticky și ciclarea acțiunilor, pentru a extinde utilitatea unui număr limitat de taste fizice. Dincolo de remapparea de bază, proiectul acoperă automatizarea sistemului prin executarea comenzilor shell și crearea de macro-uri de secvențe de taste. De asemenea, gestionează timing-ul input-ului la nivel scăzut și conectivitatea dispozitivelor, inclusiv polling-ul hardware pentru a se asigura că serviciul pornește doar după ce dispozitivele specifice sunt conectate.
Holds a modifier key active temporarily for a set duration after a single press.
AltSnap is a window manager utility and layout system that organizes application windows using custom snap grids and mouse-driven resizing and movement. It functions as a low-level input hook that intercepts keyboard and mouse events at the OS level to trigger custom window management actions. The project includes a coordinate-based grid mapper for precise snapping to custom zones and an input remapper that assigns keyboard scan codes to virtual mouse buttons. It also features a window automation CLI used to trigger management tasks on foreground or targeted application windows. The tool pro
Monitors the real-time status of modifier keys to determine when mouse movements should resize windows.
ZMK este un framework de firmware modular construit pe Zephyr RTOS pentru tastaturi wireless. Funcționează ca un sistem programabil pentru definirea mapărilor de taste, straturilor și comportamentelor de intrare personalizate, acționând ca un emulator de dispozitiv HID pentru tastatură și mouse pe computere și dispozitive mobile. Oferă în mod specific o soluție de control pentru sincronizarea a două jumătăți de tastatură separate prin conexiuni wireless sau prin cablu. Proiectul se distinge prin accentul pus pe conectivitatea Bluetooth Low Energy, având împerechere multi-dispozitiv și capacitatea de a comuta între mai multe profiluri de gazdă salvate. Include gestionarea avansată a energiei pentru a optimiza durata de viață a bateriei prin stări de repaus profund și controlul alimentării perifericelor, precum și suport pentru împerecherea wireless securizată. Firmware-ul acoperă o gamă largă de capabilități de intrare, inclusiv comportamente complexe ale tastelor precum "hold-taps", "combos" și "tap-dances", alături de execuția de macro-uri și gestionarea straturilor. Integrează hardware divers, cum ar fi encodere rotative, dispozitive de indicare și ecrane OLED sau ePaper. În plus, oferă instrumente pentru gestionarea topologiei hardware, comutarea layout-ului fizic și actualizări ale mapării tastelor în timpul rulării. Sistemul utilizează un pipeline de build care monitorizează starea compilării într-un mediu la distanță pentru a prelua și flash-ui binarele de firmware compilate pe plăcile hardware.
Implements sticky modifier keys that remain active until the next non-modifier key is pressed.
tmk_keyboard este un firmware de tastatură pentru microcontrolere AVR și Cortex-M, conceput pentru a gestiona scanarea matricei de taste și comunicarea HID. Funcționează ca o bibliotecă de control hardware încorporat pentru gestionarea pinilor GPIO și a stocării EEPROM, precum și ca un driver care transmite datele tastelor și ale mouse-ului către un computer gazdă prin protocoale USB sau PS/2. Proiectul dispune de un motor de mapare a tastelor bazat pe straturi (layers), care permite maparea tastelor fizice pe mai multe straturi virtuale. Include, de asemenea, un traducător de protocol pentru tastaturi legacy, pentru a converti semnalele de la standarde hardware vechi la interfețe de computer moderne. Firmware-ul suportă o gamă de configurații de intrare, inclusiv macro-uri, emularea mouse-ului și modificatori avansați de taste. Oferă capabilități pentru controlul sistemului, cum ar fi redarea media și gestionarea energiei, și include instrumente pentru gestionarea iluminării LED și depanarea comunicării firmware-ului.
Maintains a boolean registry of active modifier keys to determine final output characters.