doc/devdocs/modules/quickaccent.md
Public overview - Microsoft Learn
Quick Accent (formerly known as Power Accent) is a PowerToys module that allows users to quickly insert accented characters by holding a key and pressing an activation key (like the Space key or arrow keys). For example, holding 'a' might display options like 'à', 'á', 'â', etc. This tool enhances productivity by streamlining the input of special characters without the need to memorize keyboard shortcuts.
The Quick Accent module consists of four main components:
poweraccent/
├── PowerAccent.Core/ # Core component containing Language Sets
├── PowerAccent.UI/ # The character selector UI
├── PowerAccentKeyboardService/ # Keyboard Hook
└── PowerAccentModuleInterface/ # DLL interface
The Module Interface, implemented in PowerAccentModuleInterface/dllmain.cpp, is responsible for:
The Core component contains:
The UI component is responsible for:
This component:
The Quick Accent is activated when:
The module includes multiple language-specific character sets and special character sets:
To debug the Quick Accent module via runner approach, follow these steps:
F5 or clicking the "Start" buttonCtrl+Alt+P to open "Reattach to Process"This process allows you to debug the Quick Accent module while it's running as part of the full PowerToys application.
To directly debug the Quick Accent UI component:
F5 or clicking the "Start" buttonKnown issue: You may encounter approximately 78 errors during the start of debugging.
Solution: If you encounter errors, right-click on the PowerAccent folder in Solution Explorer and select "Rebuild". After rebuilding, start debugging again.