# Шорткаты

## Новый рекомендуемый механизм

Начиная с build 34 рекомендуется использовать верхнюю кнопку:

```text
⌨ Шорткаты
```

Глобальный Shortcut — это не просто событие одного элемента, а последовательность действий.

Пример:

```text
F1
├─ показать Score Input в Overlay 1
└─ если есть удаление
   └─ показать Penalty Input в Overlay 2
```

Или:

```text
Space
├─ синхронизировать время матча в vMix
├─ запустить vMix Countdown
├─ синхронизировать активные удаления в vMix
├─ запустить vMix Countdown удалений
├─ запустить веб-таймер матча
└─ запустить веб-таймеры удалений
```

Клавишу можно вводить вручную или записывать кнопкой `Записать`.

## Старый механизм

Shortcut, сохранённые непосредственно внутри компонента, продолжают работать.

Если глобальный сценарий и старый shortcut используют одну комбинацию, глобальный сценарий имеет приоритет.

## Enter / NumEnter

`NumEnter` определяется по `KeyboardEvent.code === "NumpadEnter"`, поэтому обычный Enter и Enter цифрового блока различаются.

## Shift

Модификаторы хранятся как физически удерживаемые клавиши. Например:

```text
Shift+Num1
```

## Памятка

В Runtime кнопка `⌨` открывает список всех активных шорткатов. Его можно распечатать в формате A4.

## Build40: Input хранится по key

Новые vMix-цели шорткатов сохраняются по `input.key` (название — fallback), а не по номеру Input. Номер `#22` и т.п. используется только как отображаемая текущая позиция. Старые числовые цели нужно один раз перевыбрать в редакторе после обновления.
