Выделите и сразу произнесите выделенный текст одним щелчком мыши - Text To Speech на Mac

1

Я очень тяжёлый текст в речи на Mac. Каждый раз, когда я использую текст в речь, мне нужно трижды щелкнуть абзац, чтобы выделить его, а затем нажать клавишу «escape», чтобы активировать текст в речь. Я хотел бы, чтобы вместо этого я мог просто щелкнуть пункт, и он сразу начал бы говорить. Я полагаю, что это может быть достигнуто с помощью Automator или аналогичного инструмента в сочетании с ярлыками? Кто-нибудь знает, как это сделать?

Требуемое действие для преобразования текста в речь: Option + click = выделить весь абзац и сразу начать читать = triple click + (option + Escape)

Клифф Вейцман
источник
Используя что-то вроде Карабинера, вы сможете смоделировать тройной щелчок и отправить ярлык Option + Escape для запуска текста в речь.
tubedogg
Дополнительные необходимые команды: 1. Выделите и начните читать весь текст в документе после щелчка: Command + Option + Click = команда + Shift + стрелка вниз + (опция + Escape) 2. Command + Shift + S = Остановить текст к речи на полпути, при повторном нажатии начните на 2 секунды раньше, когда голос перестал говорить.
Клифф Вейцман
@tubedogg спасибо за предложение. Я попробовал Карабинер, он выглядит очень многообещающе, но мне еще только предстоит заставить его работать: Вот моя текущая попытка XML, которая не работает: <item> <name>Click Speak</name> <identifier>private.option_click_to_speak</identifier> <name>Option+LeftClick to Option+RightClick</name> <autogen> __KeyToKey__ PointingButton::LEFT, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_OPTION, PointingButton::MULTICLICK KeyCode::OPTION, ESCAPE </autogen> </item>
Клифф Вейцман,
Я посмотрю на это позже, но сразу же, вам нужно изменить OPTIONв конце ModifierFlag::OPTION_L.
tubedogg
вау это был быстрый ответ! Сделаем сейчас
Клифф Вейцман

Ответы:

1

Вот элемент, который вы можете поместить в ваш файл Karabiner private.xml, чтобы сделать его Option- Escapeвыделите текущий абзац (под курсором мыши) и читайте его.

Я также реализовал команду для ее остановки, как вы и просили ( Command- Shift- S), хотя я не верю, что есть способ вернуться назад на две секунды и начать читать снова.

<item>
    <identifier>private.tripleclick</identifier>
    <name>Option-Escape to Triple-Click and Text-to-Speech</name>
    <autogen>
        __KeyToKey__
        KeyCode::ESCAPE, ModifierFlag::OPTION_L,

        @begin
        PointingButton::LEFT, PointingButton::LEFT, PointingButton::LEFT,
        KeyCode::ESCAPE, ModifierFlag::OPTION_L
        @end
    </autogen>
</item>
<item>
    <identifier>private.stoptts</identifier>
    <name>Command-Shift-S stops Text-to-Speech</name>
    <autogen>
        __KeyToKey__
        KeyCode::S, ModifierFlag::COMMAND_L, ModifierFlag::SHIFT_L,
        KeyCode::ESCAPE, ModifierFlag::OPTION_L
    </autogen>
</item>
tubedogg
источник
Спасибо, @tubedogg! Я реализовал это, но это не похоже на работу для меня. Например, когда я нажимаю «escape» в Notes, он выделяет весь документ и начинает его читать. Однако для компьютера, где включен текст в речь с опцией escape-ярлыка. Это стандартно. При попытке этого, например, при попытке в chrome на среде, это не работает для меня. Я пытался возиться с этим, но не получил его на работу. С каким приложением вы это тестировали? Может я что-то не так настраиваю с Карабинером. Огромное спасибо за помощь. Я действительно ценю это
Клифф Вейцман
Просто чтобы убедиться, что вы использовали кнопку «Обновить XML» в «Карабинере», а затем включили эти два элемента в настройках «Карабинера»? В противном случае, вместо этого произойдет обычная команда Option-Escape. Я проверил это на Chrome (на самом деле проверял это снова только сейчас), и, кажется, он работает нормально для меня. Также убедитесь, что у вас есть <?xml version="1.0"?>в первой строке вашего файла private.xml, <root>во второй и </root>в последней строке.
tubedogg