Справочная карта по хукам клавиатуры и мыши, хоткеям, биндам методов скрипта, API для отправки ввода, симуляторам ввода, сглаживанию, редиректу ввода и нативным detour-механизмам.
[Keybind] — это метаданные метода скрипта для привязки хоткея.HotkeyIsActiveTrigger — условие хоткея для ауры.ISendInputScriptingApi — скриптовый API для отправки ввода.IKeyboardEventsSource предоставляет потоки событий клавиатуры и мыши от хоста.IInputSimulatorProvider выбирает backend для send-input.IUserInputSmootherProvider выбирает smoother для движения мыши.KeybindAttribute — метаданные привязки хоткея для скрипта.KeybindAttribute.Hotkey — строковый жест, например F5 или Ctrl+Shift+P.KeybindAttribute.SuppressKey — если true, исходное событие клавиши помечается как обработанное/подавленное и для key-down, и для key-up.KeybindAttribute.IgnoreModifiers — если true, обязательные модификаторы должны присутствовать, но дополнительные тоже допускаются.KeybindAttribute.ActivationType — выбирает вызов по KeyDown или KeyUp.KeybindActivationType — enum для key-down/key-up, который использует [Keybind].HotkeyGesture — удобное для кода представление хоткея. Если хоткей заранее известен в коде, лучше использовать конструкторы и enum-значения.IHotkeyConverter — преобразование строки в HotkeyGesture. Обычно нужен для сохранённых пользовательских настроек, ввода в редакторе или текста из конфигов.IHotkeyTracker — отслеживание хоткея во время выполнения. IsEnabled по умолчанию равен true; меняйте его только если действительно хотите временно выключить и потом снова включить трекер.HotkeyIsActiveTrigger — триггер ауры по состоянию хоткея.ISendInputScriptingApi — API отправки ввода для скриптов.IInputSimulatorProvider, IInputSimulatorEx — обнаружение симулятора и выбор backend.IUserInputSmootherProvider, IUserInputSmoother — сглаживание движения мыши.IKeyboardEventsSource — потоки событий клавиатуры и мыши.IUserInputRedirectService — редирект ввода.HookEngine — продвинутый движок нативных detour-функций.[Keybind].HotkeyIsActiveTrigger.new HotkeyGesture(...).IHotkeyConverter.ISendInputScriptingApi.osd/selection.md.IHotkeyConverter, если HotkeyGesture через конструктор будет понятнее.IHotkeyTracker.IsEnabled = true, если до этого трекер не был отключён — true уже стоит по умолчанию.Runtime-хоткей через Rx:
IHotkeyTracker через IFactory<IHotkeyTracker>.Hotkey через new HotkeyGesture(...), если хоткей определён в коде, или через IHotkeyConverter, если он пришёл из сохранённой строки или пользовательского ввода.HotkeyMode, SuppressKey, IgnoreModifiers или HandleApplicationKeys только если значения по умолчанию вам не подходят.WhenAnyValue(x => x.IsActive) и отфильтруйте только true.ExecutionAnchors для ресурсов на один запуск.Метод скрипта с [Keybind]:
[Keybind].IHotkeyConverter.Task, runtime ждёт завершения задачи.KeybindAttribute, KeybindActivationType,HotkeyTrackerRuntimeVisitor, HotkeyGesture, IHotkeyConverter,IHotkeyTracker, HotkeyIsActiveTrigger, ISendInputScriptingApi,IInputSimulatorProvider, IUserInputSmootherProvider,IKeyboardEventsSource, IUserInputRedirectService, HookEngine.scripting/runtime.mdauras/triggers.mdauras/actions.mdosd/selection.mdwindows-subsystems/window-handles.md