VoiceInk Custom Commands: надсилайте диктування до скрипта замість вставлення

Custom Command (власна команда) є одним із режимів виводу VoiceInk. Замість вставлення VoiceInk передає готовий текст диктування команді оболонки, яку ви пишете, а вона вирішує, що буде далі: дописати його в нотатку, відкрити пошук, викликати власний скрипт або надіслати в сервіс, який ви запускаєте. Це найгнучкіше, що VoiceInk робить із текстом, і є кілька жорстких обмежень, які варто знати, перш ніж на цьому будувати.

Я створюю YapToText, іншу програму для диктування на Mac, тож читайте мої слова про VoiceInk з урахуванням цього. Кожен факт про VoiceInk тут узято з його власної документації, прочитаної 10 жовтня 2026 року.

Завантажити YapToText у Mac App StoreБезкоштовно. Без облікового запису й без заблокованих функцій, для macOS 14 або новішої на Mac із процесором Apple. Вихідний код на GitHub.

Що отримує команда

VoiceInk надсилає той самий готовий текст двома способами: на стандартний вхід і в змінній $VOICEINK_TRANSCRIPT. Текст у UTF-8, а документація просить брати змінну в лапки, щоб збереглися пробіли, розділові знаки й розриви рядків.

  • AI Enhancement (покращення ШІ) вимкнено. Розшифровка після форматування й заміни слів у VoiceInk.
  • AI Enhancement увімкнено й працює. Покращений текст.
  • AI Enhancement пропущено або воно не вдалося. Звичайна готова розшифровка.

Команда ніколи не отримує безпосередньо аудіо, промпт, а також виділений текст, вміст буфера обміну чи екрана. Якщо потрібно, щоб контекст вплинув на результат, документація радить скористатися промптом і Context Awareness (врахування контексту), тоді він уже міститься в готовому тексті.

Як вона запускається

З документації VoiceInk, розділ Custom Commands, прочитаної 10 жовтня 2026 року.

ДетальПоведінка
Оболонка/bin/zsh -lc
Тайм-аут10 секунд, потім VoiceInk зупиняє команду
ДозволиТі самі дозволи користувача macOS, що й у VoiceInk
Панель записуЗакривається до запуску команди
УспіхКод завершення 0. Усе інше вважається невдачею
ВивідСтандартний вивід і помилки зберігаються для діагностики, але ніколи не вставляються в програму
Команди не знайденоVoiceInk пробує PATH вашої оболонки. Якщо не вдається, вкажіть повний шлях, наприклад /opt/homebrew/bin/tool

Обмеження, на яких спотикаються

  • Нічого не вставляється за вас. Якщо текст усе ж потрібен у програмі, ваша команда має скопіювати або вставити його сама.
  • Десять секунд і жодних запитань. Команда не може чекати на введення. Для довшої роботи запустіть власний фоновий процес і швидко завершіться.
  • Вона не змінює збережену розшифровку. Те, що команда виводить, назад не записується.
  • Немає Auto Send. Auto Send працює лише з виводом Paste output, а не з Custom Command.
  • Лише живе диктування. Файли з черги Transcribe file зберігаються без запуску команд виводу.
  • Порожньої команди не буває. Режим (Mode) з порожньою командою не можна зберегти.

Вбудовані шаблони

З документації VoiceInk, розділ Custom Commands, прочитаної 10 жовтня 2026 року.

ШаблонЩо робить
Paste and Press TabКопіює текст, вставляє його, а потім натискає Tab
Lowercase and PasteПереводить текст у нижній регістр, копіює його, а потім вставляє
Remove Trailing Period and PasteВідкидає одну кінцеву крапку перед вставленням
Append to JournalДодає текст до ~/Documents/VoiceInk/journal.md
Search WebВідкриває вебпошук за цим текстом

Документація радить починати з шаблону й редагувати його. Два з найпростіших прикладів: копіювання тексту й дописування його в нотатку:

printf "%s" "$VOICEINK_TRANSCRIPT" | pbcopy
mkdir -p "$HOME/Documents/VoiceInk"
printf -- "- %s\n" "$VOICEINK_TRANSCRIPT" >> "$HOME/Documents/VoiceInk/notes.md"

Як перевірити, чи спрацювало

Після Custom Command VoiceInk не показує повідомлення про успіх чи невдачу. Документація наводить команду для Terminal, яка показує журнали доставки за останні 10 хвилин, зокрема чи команда виконалася, чи завершилася помилкою, чи працювала довше 10 секунд:

/usr/bin/log show --last 10m --style compact \
  --predicate 'subsystem == "com.prakashjoshipax.voiceink" AND category == "TranscriptionDelivery"'

Документація попереджає, що в цих журналах може бути продиктований текст. А якщо ваша команда надсилає текст у вебсервіс, цей сервіс його отримує: VoiceInk лише запускає те, що ви налаштували.

Де тут YapToText

VoiceInk за його документацією, прочитаною 10 жовтня 2026 року. YapToText за його власними налаштуваннями.

VoiceInkYapToText
Запустити команду оболонки з текстомТак, вивід Custom CommandНі
Вставити в позиції курсораPaste outputPaste, за замовчуванням
Надрукувати замість вставленняНа цій сторінці не описаноType character by character
Лише буфер обмінуКомандою на кшталт pbcopyCopy to clipboard only
Натиснути клавішу післяШаблон Paste and Press TabReturn або Command Return для кожної програми
Переглянути перед вставленнямНа цій сторінці не описаноReview before inserting, за замовчуванням вимкнено

Якщо хочете, щоб диктування керувало вашими власними скриптами, Custom Command у VoiceInk робить те, чого YapToText не робить. Якщо потрібен текст у позиції курсора, підлаштований під слова навколо, YapToText робить це за замовчуванням і не потребує скрипта. Де задаються режими виводу, розповідає сторінка про режими VoiceInk, а VoiceInk проти superwhisper порівнює його з іншою програмою, побудованою навколо режимів.

Завантажити YapToText у Mac App StoreБезкоштовно. Без облікового запису й без заблокованих функцій, для macOS 14 або новішої на Mac із процесором Apple. Вихідний код на GitHub.

Коротко

  • Що це. Режим виводу, що запускає вашу команду оболонки з готовим текстом.
  • Текст. На стандартному вході й у $VOICEINK_TRANSCRIPT.
  • Обмеження. 10 секунд, без введення, без автоматичного вставлення, лише живе диктування.
  • Налагодження. У програмі повідомлення немає. Прочитайте журнал командою Terminal, наведеною вище.
  • З чого почати. Відредагуйте один із п’яти шаблонів.

Якщо VoiceInk змінить роботу Custom Commands, створіть issue на GitHub, і я оновлю цю сторінку. Я читаю кожне.

Завантажити YapToText у Mac App StoreБезкоштовно. Без облікового запису й без заблокованих функцій, для macOS 14 або новішої на Mac із процесором Apple. Вихідний код на GitHub.

Хто пише. Ryleigh Newman розробляє програми, насилу друкує на клавіатурі та щодня диктує в YapToText, програмі, якій присвячено цей сайт. Цю сторінку перекладено з англійської. Інтерфейс програми та решта сторінок сайту англійською. Докладніше про проєкт, англійською.

Посібники

Інші посібники, англійською

Джерела

Запитання

Що таке Custom Command у VoiceInk?

Режим виводу. Замість вставлення VoiceInk запускає команду оболонки, яку ви пишете, і передає їй готовий текст диктування.

Як Custom Command у VoiceInk отримує текст?

На стандартний вхід і в змінній $VOICEINK_TRANSCRIPT, у UTF-8. Беріть змінну в лапки, щоб зберегти пробіли й розриви рядків.

Чому моя Custom Command у VoiceInk нічого не вставила?

Вивід Custom Command сам не вставляє. Ваша команда має сама скопіювати або вставити текст, як це робить шаблон Paste and Press Tab.

Скільки може працювати Custom Command у VoiceInk?

10 секунд. Після цього VoiceInk її зупиняє. Для довшої роботи запустіть фоновий процес.

Чи є в YapToText власні команди, як у VoiceInk?

Він не запускає команди оболонки після диктування. Він вставляє або друкує в позиції курсора, може лише копіювати в буфер обміну й може натиснути Return після того, як текст з’явиться.