A comprehensive text expansion system that works across Windows (AutoHotkey) and Linux (AutoKey + Wayland solutions).
AutoHotkey/
โโโ README.md                           # This file - project overview
โโโ EIM.ahk                            # Windows AutoHotkey script
โโโ EIM_expansions_data.py             # Shared expansion data
โโโ README_Expansion_Types.md          # Complete expansion type guide
โโโ README_Region_Abbreviations.md     # Geographic abbreviations guide
โโโ linux/                             # Linux solutions
    โโโ README.md                      # Linux overview and X11 solutions
    โโโ EIM_autokey_corrected.py      # AutoKey script for X11
    โโโ README_AutoKey.md              # AutoKey setup guide
    โโโ wayland/                       # Wayland-specific solutions
        โโโ README.md                  # Wayland overview
        โโโ EIM_autokey_dotool_daemon_evdev.py  # Enhanced daemon
        โโโ start_eim_daemon_enhanced.sh         # Startup script
        โโโ README_Background_Monitoring.md      # Complete guide
- Install AutoHotkey
- Run EIM.ahk
- Type abbreviations anywhere - they expand automatically!
๐ก Application Compatibility: The AutoHotkey script works best with modern, responsive applications. Slower applications like Notepad don't work properly for outputs with multuple words. For optimal experience, use note-taking apps (Joplin, Obsidian, Nextcloud Notes) or word processors (Microsoft Office, Google Docs, Nextcloud Office).
- X11 (GNOME (prior to V46), KDE, XFCE): See linux/README_AutoKey.md
- Wayland (current GNOME, Hyprland, Sway): See linux/wayland/README_Background_Monitoring.md
EIM (Enhanced Input Method) is a text expansion system that automatically converts abbreviations into full phrases, legal text, geographic locations, and more. It's designed to work seamlessly across different platforms and display servers.
- 800+ Built-in Expansions - Text, legal, geographic, word completions
- Cross-Platform - Windows, Linux X11, Linux Wayland
- Smart Abbreviations - Prefix-based system for easy memorization
- Background Operation - Always running, always ready (Linux Wayland)
- Professional Quality - Production-ready with error handling
- README_Expansion_Types.md - Complete guide to all expansion types and patterns
- README_Region_Abbreviations.md - Geographic abbreviations and conflict resolution
- linux/README.md - Linux solutions overview
- linux/wayland/README_Background_Monitoring.md - Wayland background monitoring
- aomgโ "oh my god"
- Aomgโ "Oh my god"
- lainreโ "in reference to the matter of"
- LAinreโ "In reference to the matter of"
- ncondiโ "condition"
- tdefenโ "defensive"
- UScaโ "California"
- ccusโ "United States"
- pccusโ "American"
All expansions are stored in EIM_expansions_data.py, EIM.ahk in the case of windows, and shared across platforms. To add custom expansions:
- Edit EIM_expansions_data.py
- Add entries to EXPANSIONS_DATAdictionary and toEIM.ahk
- Restart scripts or reload applications
- X11: Use AutoKey with linux/EIM_autokey_corrected.py
- Wayland: Use enhanced daemon in linux/wayland/
- Copy EIM.ahkto Windows machine
- Install AutoHotkey
- Run the script
| Platform | Display Server | Solution | Experience | 
|---|---|---|---|
| Windows | N/A | AutoHotkey | Native, seamless | 
| Linux | X11 | AutoKey | Full integration | 
| Linux | Wayland | Enhanced Daemon | Best experience | 
# Download and run EIM.ahk
# Requires AutoHotkey v2.0cd linux
# Follow README_AutoKey.mdcd linux/wayland
./start_eim_daemon_enhanced.sh install-evdev
./start_eim_daemon_enhanced.sh start- Professional Quality - Built for business and productivity use
- Cross-Platform - Same abbreviations work everywhere
- Smart Design - Prefix system prevents conflicts
- Active Development - Regular updates and improvements
- Community Support - Clear documentation and troubleshooting
- Mobile Support - Android/iOS text expansion (android currently in the words via Texspand. Might be more limited in scope...)
- AI Integration - Smart abbreviation suggestions (windows and Linux currently planned)
- Multi-Language - International expansion support
- Report issues with specific platforms
- Suggest new expansion categories
- Test on different Linux distributions
- Improve documentation and examples
- Sort out some entries propaerly (Cursor/Claude is somewhat bad at this...)
EIM provides the most seamless text expansion experience across platforms, with Wayland users getting the closest AutoHotkey-like functionality on Linux!