Чтобы проверить, кодирует ли быстрая команда Mac выбранный текст для поиска, проверьте значение, попадающее в ее итоговый URL-адрес: добавьте действие Быстрый просмотр (Quick Look) после того, как быстрая команда сформирует URL, запустите ее с тестовой фразой, содержащей пробелы и зарезервированные символы, и проверьте, отображаются ли эти символы в виде процентного кодирования. Один лишь успешный запуск не доказывает, что текст для поиска был закодирован правильно; отображаемый URL позволяет проверить, что именно собрала быстрая команда. В документации Apple описано использование «Быстрого просмотра» для предварительного просмотра содержимого, передаваемого между действиями быстрой команды, а в руководстве для Mac описываются рабочие процессы на основе URL, требующие URL-кодирования текста. (Тестирование действий в приложении «Быстрые команды» на Mac; Использование схемы URL другого приложения в «Быстрых командах» на Mac)
Определите текст и URL-адрес, которые необходимо проверить
Обычно быстрая команда для поиска берет выделенную фразу, вставляет ее в поисковый URL-адрес и открывает его. Проверять нужно значение запроса, содержащее фразу, а не просто то, начинается ли итоговый URL с веб-адреса. Например, если поисковый URL имеет вид https://example.com/search?q=..., проверьте значение после q=. Пример домена приведен для наглядности; используйте реальную поисковую службу и параметр, для которых создана ваша быстрая команда.
Просмотрите действия быстрой команды сверху вниз. Найдите, где выделенный текст попадает в рабочий процесс, где формируется URL-адрес или поисковый запрос, а также действие, открывающее этот URL. В руководстве Apple по «Быстрым командам» объясняется, что связанные действия передают свой вывод дальше, и что действие «Быстрый просмотр» позволяет предварительно просмотреть содержимое, перемещающееся между действиями. (Связи действий в приложении «Быстрые команды» на Mac; Тестирование действий в приложении «Быстрые команды» на Mac)
Сделайте выбранный текст доступным для быстрой команды Mac
Если вы проверяете существующую быструю команду, убедитесь, что она настроена на получение выбранного текста. В приложении «Быстрые команды» откройте команду, перейдите в раздел «Сведения» (Details) и включите параметры Использовать как быстрое действие (Use as Quick Action) или На панели экспорта (Show in Share Sheet). Как отмечает Apple, при этом в начало рабочего процесса добавляется действие ввода. Затем выделите фразу в приложении и вызовите быструю команду через параметры общего доступа (Share) или доступные быстрые действия (Quick Actions). Точный пункт меню зависит от приложения и от того, как именно активирована быстрая команда. (Запуск быстрых команд во время работы на Mac)
Быстрая команда, запущенная из Dock, согласно Apple, не получает содержимое из текущего приложения. Если запустить ее таким способом, она может выполниться без того выделенного фрагмента, который вы хотите протестировать. Проверьте входное действие быстрой команды и запустите ее из поддерживаемого исходного приложения с выделенным текстом. (Запуск быстрых команд во время работы на Mac; Ограничение входных данных для быстрой команды при запуске из другого приложения на Mac)
Предварительный просмотр готового URL перед его открытием
В редакторе быстрых команд вставьте действие Быстрый просмотр (Quick Look) между действием, создающим итоговый URL-адрес, и действием, которое его открывает. Запустите быструю команду с безобидной тестовой фразой, например red & blue sky. «Быстрый просмотр» должен показать вывод предыдущего действия. Это позволяет изучить созданный URL до того, как его получит действие открытия; само по себе это не подтверждает, что поисковый сервис примет URL или интерпретирует запрос нужным образом. Apple рекомендует «Быстрый просмотр» как способ определить, какое именно содержимое передается между действиями быстрой команды. (Тестирование действий в приложении «Быстрые команды» на Mac)
Посмотрите на значение запроса в окне предварительного просмотра. В стандартном URL-компоненте с процентным кодированием пробел может выглядеть как %20, а амперсанд, относящийся к поисковой фразе, — как %26. Если амперсанд останется буквальным символом & внутри значения, синтаксический анализатор URL может воспринять его как начало другого параметра. Это диагностический пример, а не гарантия формата запросов для каждого поискового сервиса. В собственных примерах схем URL для «Быстрых команд» от Apple для пробелов используется %20, а передаваемый текст явно описывается как закодированный в формате URL (URL-encoded). (Запуск быстрой команды с помощью схемы URL на Mac)
Проверьте, какое действие выполняет кодирование
Найдите в поиске редактора действие Кодировать URL (URL Encode) и проверьте, поступает ли в него переменная выбранного текста до того, как это значение будет вставлено в запрос. Задокументированное назначение этого действия — кодирование или декодирование текста для использования в URL-адресе путем добавления или удаления процентных escape-последовательностей. (URL Encode) Apple также документирует создание URL-адресов с помощью действия URL и их открытие с помощью Открыть URL-адреса (Open URLs) или Открыть X-Callback URL (Open X-Callback URL), но руководство предупреждает, что для схем URL может требоваться закодированный текст, а их отладка может быть сложной. (Использование схемы URL другого приложения в «Быстрых командах» на Mac)
Полезно проверить именно позицию действия и предварительный просмотр, а не просто наличие действия со словом «URL» в названии. Убедитесь, что выбранный текст поступает на шаг кодирования, и что именно закодированный результат — а не исходный фрагмент — вставляется в качестве значения запроса. Затем проверьте, отображаются ли в окне «Быстрого просмотра» ожидаемые escape-последовательности. Избегайте повторного кодирования уже закодированного значения: знаки процента сами могут оказаться закодированными, превращая %20 в %2520. Появление такого шаблона в предпросмотре — повод проверить рабочий процесс на наличие дублирующегося кодирования.
Интерпретация результатов и ограничения
Если в окне предпросмотра внутри значения запроса видны закодированные пробелы и специальные символы, это свидетельствует о том, что сформированный URL-адрес содержит закодированный текст. Если отображаются обычные пробелы, возможно, выбранный текст не прошел через кодировщик, была вставлена не та переменная или вы просматриваете результат более раннего действия. Если фраза вовсе отсутствует, проверьте входные данные быстрой команды и связи переменных, прежде чем изменять структуру URL.
Предварительный просмотр может показать строку URL, сформированную быстрой командой, но он не позволяет определить, как конкретный поисковый сервис обработает запрос, откроется ли URL успешно и применит ли сервис собственные правила. Для финальной проверки функциональности удалите или переместите диагностическое действие «Быстрый просмотр» и запустите быструю команду с нейтральной фразой-примером. Apple описывает элементы управления macOS для получения содержимого и открытия URL-адресов, но не гарантирует одинаковое поведение запросов в различных поисковых службах. (Запуск быстрых команд во время работы на Mac; Использование схемы URL другого приложения в «Быстрых командах» на Mac)
Источники
Тестирование действий в приложении «Быстрые команды» на Mac — Служба поддержки Apple
Использование схемы URL другого приложения в «Быстрых командах» на Mac — Служба поддержки Apple
Запуск быстрых команд во время работы на Mac — Служба поддержки Apple
Ограничение входных данных для быстрой команды при запуске из другого приложения на Mac — Служба поддержки Apple
Связи действий в приложении «Быстрые команды» на Mac — Служба поддержки Apple
Запуск быстрой команды с помощью схемы URL на Mac — Служба поддержки Apple
URL Encode — Matthew Cassinelli