Подстановка текста
Подстановка текста заменяет короткий введённый текст чем-то более длинным. Введите кст и пробел, и
программа, в которую вы вводите текст, получит «кстати» и пробел. Это работает в любой программе,
принимающей ввод текста.
Страница Подстановка текста показывает замены одной группы приложений за раз. Каждая замена — это обычное действие с триггером вводимого текста. Действие, которое при вводе текста делает что-то другое (выполняет скрипт, нажимает клавиши, имеет другие триггеры), вместо этого отображается на странице Действия, в разделе + Подстановка текста его карточки Триггеры. Оба следуют правилам этой страницы.
Добавление замены
- В поле Группа приложений ① выберите, где будет работать замена. Глобальная работает во всех программах, которые не забрала никакая другая группа приложений, и в группах, откатывающихся к глобальной.
- Нажмите + Создать внизу списка Замены ②. Появится замена Новая замена; переименуйте её в поле Имя.
- В поле Вводимый текст ③ введите сокращение, например
кст. - Выберите тип ④ (Типы).
- Введите Текст замены ⑤ или, для RTF и HTML, скопируйте содержимое в другой программе и нажмите Вставить из буфера обмена.
- Сохраните.
Если в поле Группа приложений выбрано Все, список показывает замены всех групп под именами групп, а новую замену нельзя создать, пока вы не выберете группу.
Как сопоставляется вводимый текст
Движок запоминает символы, введённые после последней границы или сброса. Когда вы вводите границу, он сравнивает запомненное со всеми триггерами вводимого текста:
- Должно совпасть всё слово. Введённое после последней границы должно в точности равняться вводимому
тексту, начиная с первого символа.
кстне раскрывается внутриакстилитекст. - С учётом регистра.
кстне раскрываетКСТилиКст. Добавьте отдельную замену для каждой нужной формы. - Shift не мешает. Удержание Shift для ввода прописной буквы или символа — обычный ввод.
- Исправления не учитываются. Backspace очищает запомненное. Если ввести
кс, нажать Backspace и ввестист, движок запомнит толькост.
| Вы вводите | Вводимый текст | Результат |
|---|---|---|
кст Пробел | кст | «кстати» и пробел |
кст. | кст | «кстати.» |
акст Пробел | кст | Ничего: слово — акст. |
КСТ Пробел | кст | Ничего: другой регистр. |
;addr Enter | ;addr | Адрес, затем Enter. |
Вводимый текст может начинаться или заканчиваться символами вроде ; : ' " и скобок, которые не
являются границами. Начальная ; — распространённый способ отделить сокращения от настоящих слов.
Что завершает вводимый текст
Эти клавиши завершают вводимый текст и вызывают подстановку, если он совпал:
- Пробел, Tab и Enter — каждая, пока включён её переключатель на вкладке «Параметры» (по умолчанию все включены).
- Точка, запятая, восклицательный и вопросительный знаки:
.,!?, арабские запятая, вопросительный знак и точка, а также идеографические и полноширинные запятая, точка, восклицательный и вопросительный знаки. Они завершают текст всегда.
Вводимый текст, содержащий границу, никогда не раскроется. Страница сообщает об этом под полем Вводимый текст: Никогда не раскрывается, с причиной (пробел, пока пробел является границей, управляющий символ или один из знаков препинания выше).
Что сбрасывает вводимый текст
Запомненные символы отбрасываются, и начинается новое слово, когда:
- вы нажимаете Backspace, Esc, Delete, клавишу со стрелкой, Home, End, Page Up, Page Down или функциональную клавишу либо любую клавишу, которая не вводит символ;
- вы нажимаете любую клавишу при удерживаемом Ctrl, Alt или Win. Сочетание клавиш никогда не считается вводом текста, поэтому Alt+Tab или Ctrl+Enter сразу после сокращения его не раскрывают;
- вы щёлкаете любой кнопкой мыши;
- вы переключаетесь на другое окно или фокус клавиатуры переходит в другое поле;
- скрипт вводит текст или нажимает клавиши;
- вы вводите больше символов, чем в самом длинном из заданных вводимых текстов, без границы.
Что происходит при подстановке
Когда граница завершает вводимый текст, у которого есть замена для окна на переднем плане:
- Клавиша-граница пока не передаётся программе.
- Вводимый текст стирается — по одному Backspace на символ.
- Вводится замена.
- Сразу после замены вводится клавиша-граница. Поэтому граница Enter или Tab действует на готовый текст: программа чата отправляет заменённое сообщение, а форма переходит к следующему полю только после того, как текст готов.
Клавиши, нажатые в это время, удерживаются и вводятся после, по порядку, поэтому не могут попасть в середину замены. Если замена долго не начинается (более полсекунды без отправки чего-либо) или удерживает клавиши в общей сложности 10 секунд, удерживаемые клавиши отпускаются.
Скорость ввода задаёт Задержка ввода на странице Скрипты (расширенный режим; по умолчанию 30 мс между нажатиями). Некоторые программы, например Блокнот в Windows 11, перемешивают текст, поступающий без пауз (Параметры скриптов).
Типы
| Тип | Что делает | Для чего |
|---|---|---|
| Текст | Вводит замену нажатиями клавиш. | Короткий текст. Работает почти везде; длинный текст вводится не сразу. |
| Текст через буфер обмена | Помещает текст в буфер обмена и вставляет его через Ctrl+V. | Длинный текст и текст с переносами строк. Мгновенно. |
| RTF | Вставляет форматированный текст (Rich Text Format). | Форматирование в текстовых редакторах и почтовых программах. |
| HTML | Вставляет фрагмент HTML. | Форматирование в браузерах, веб-почте и редакторах, принимающих HTML. |
Для RTF и HTML кнопка Вставить из буфера обмена сохраняет ровно то, что вы скопировали: сначала
скопируйте форматированное содержимое в другой программе. Страница показывает Предпросмотр. Для
предпросмотра HTML нужна среда выполнения Microsoft Edge WebView2; без неё страница сообщает об этом, а
замена всё равно работает. В исходном коде RTF, введённом вручную, можно использовать любые символы
напрямую; они записываются собственной escape-последовательностью RTF \u за вас. Замены RTF и HTML
также помещают в буфер обмена копию в виде простого текста, поэтому программа, принимающая только простой
текст, вставит слова.
Восстановление буфера обмена
Три типа, использующие буфер обмена, заменяют его содержимое. Затем восстановить буфер обмена (по умолчанию включено) сначала сохраняет буфер обмена и возвращает его после вставки. В расширенном режиме Пауза перед восстановлением (мс) (по умолчанию 150) даёт программе время сначала закончить вставку. Если программа вставляет прежнее содержимое буфера обмена вместо замены, увеличьте это значение.
Расширенный режим. Пауза перед восстановлением (мс) отображается только в расширенном режиме.
Какая замена сработает
У вводимого текста нет окна под указателем. Он использует окно на переднем плане в момент ввода границы:
- Если окно входит в группу игнорирования, ничего не подставляется, и клавиша-граница обычно доходит до программы.
- Иначе сначала пробуется группа приложений окна, если она действует в активном профиле. Внутри группы срабатывает первая включённая замена или действие с точно таким вводимым текстом. Если у двух одинаковый вводимый текст, срабатывает то, что выше в списке; страница об этом предупреждает. Вверх и Вниз меняют порядок.
- Если в группе для этого ничего нет, пробуется глобальная группа, если только Резервный переход к глобальной группе не выключен у группы или на странице Общие (Область действия и правила отката).
- Если ничего не совпало, ничего не происходит: клавиша-граница доходит до программы в том виде, в каком вы её ввели.
Жесты работают здесь и Горячие клавиши работают здесь у группы приложений на подстановку текста не влияют.
Вкладка «Параметры»
- Подстановка текста включена ① включает или выключает всю подстановку текста: замены на этой странице и все действия с триггером вводимого текста. Когда выключено, ничего не подставляется и ни одна замена не изменяется. Пока параметр выключен, вкладка Замены показывает уведомление, а страница «Действия» помечает каждый триггер вводимого текста.
- Раскрывать по Space ②, Раскрывать по Tab и Раскрывать по Enter выбирают, какие из трёх клавиш
завершают вводимый текст. Они действуют для всех групп приложений. Выключение одного из них не делает
клавишу игнорируемой:
- Если Раскрывать по Space выключено, пробел становится частью вводимого текста. Тогда вводимый текст
может содержать пробелы, например
my addr, и раскрываться по знаку препинания, Tab или Enter. - Если выключено Раскрывать по Tab или Раскрывать по Enter, эта клавиша вместо этого сбрасывает вводимый текст, как Backspace.
- Если Раскрывать по Space выключено, пробел становится частью вводимого текста. Тогда вводимый текст
может содержать пробелы, например
Расширенный режим. Раскрывать по Space, Раскрывать по Tab и Раскрывать по Enter отображаются только в расширенном режиме. Пока Подстановка текста включена выключено, они недоступны.
Когда текст не подставляется
- Пока движок отключён или приостановлен параметром Приостанавливать всё при фокусе (Группы игнорирования), а также пока рисуется жест.
- При открытом редакторе метода ввода (IME). Если в окне на переднем плане включён японский, китайский или корейский метод ввода, нажатые клавиши являются составным вводом, а пробел его преобразует, поэтому ничего не подставляется и клавиша уходит методу ввода. Для подстановки переключите его на прямой ввод.
- Символы, вводимые с AltGr. В раскладках, где AltGr вводит символ (например,
@на немецкой клавиатуре), Windows сообщает о нём как о Ctrl+Alt, что сбрасывает вводимый текст. Такие символы не могут входить во вводимый текст. - Мёртвые клавиши. Мёртвая клавиша (диакритический знак, вводимый перед буквой) сбрасывает вводимый текст, поэтому составленные так символы с диакритикой не могут в него входить. Символы, которые ваша раскладка вводит одной клавишей, работают.
- Программы, которые стирают иначе. При стирании отправляется по одному Backspace на символ. Составные символы и объединённые эмодзи считаются одним символом каждый, а некоторые программы стирают их иначе, поэтому вводимый текст из таких символов может стереться неаккуратно.