A modal keyboard-driven interface for mouse manipulation, now featuring intelligent UI element detection.
This fork extends the original warpd with Smart Hint Mode - an element-based detection system that automatically identifies interactive UI components for precise navigation.
- Hint Mode (
Alt-Meta-x) - Generate hints for visible elements - Grid Mode (
Alt-Meta-g) - Navigate using quadrant subdivision - Normal Mode (
Alt-Meta-c) - Precise cursor movement with hjkl keys
Inspired by Vimium
Automatically detects interactive UI elements (buttons, links, inputs) and generates hints for direct navigation.
Usage:
- Enter Smart hint Mode (
Alt-Meta-f) or Enter Normal Mode (Alt-Meta-c) then Pressf - Type the hint label to navigate to any interactive element
- Press
Escapeto return to Normal Mode
Detection Methods:
- Primary: Platform-native accessibility APIs
- Linux: AT-SPI (Assistive Technology Service Provider Interface)
- macOS: Accessibility APIs
- Windows: UI Automation APIs
- Fallback: OpenCV-based visual detection for unsupported applications
Note: Accessibility APIs provide the most accurate detection. OpenCV fallback uses computer vision to detect UI elements when native APIs are unavailable.
Insert Mode (i in Normal Mode)
- Automatically copies any selected text to clipboard
- Opens a text input dialog pre-filled with clipboard content
- Edit the text and press Enter to paste, or Escape to cancel
Workflow Example:
- Select text in any application (with mouse or
vdrag mode) - Press
i- selected text is copied and shown in dialog - Edit the text
- Press Enter - edited text is pasted back
Copy & Paste (Vim-like workflow)
y- Copy selected text (yank)p- Paste from clipboard (put)v- Enter drag mode to select textc- Copy and exiti- Copy selection, edit in dialog, and paste
Automatic (Recommended):
curl -fsSL https://raw.githubusercontent.com/atuan26/warpd/master/install.sh | shManual Build:
git clone https://github.com/atuan26/warpd.git
cd warpd
# Install dependencies for your platform (see Dependencies section)
make && sudo make install- Run
warpd - Use hotkeys to activate modes:
Alt-Meta-x- Hint modeAlt-Meta-g- Grid modeAlt-Meta-c- Normal mode
- From Normal mode, press
ffor Smart Hint - Click with
m(left),,(middle),.(right) - Press
Escapeto exit
Contributions are welcome! Please feel free to:
- Report issues and bugs
- Submit feature requests
- Create pull requests
- Improve documentation
- Smart Hint requires accessibility API support (may not work with all applications)
- OpenCV fallback provides broader compatibility but may be less precise
- Wayland support has limitations due to security model
- Some applications may need accessibility permissions enabled
See LICENSE file for details.
For detailed documentation, see the man page.