Горячая клавиша контекстного меню (щелчок правой кнопкой мыши) в Mac OS X

Вопрос или проблема

Можно ли вызвать контекстное меню с помощью сочетания клавиш вместо нажатия правой/альтернативной кнопки мыши в OS X? В частности, я хотел бы иметь функцию, похожую на menu-key, в OS X. Интересно, существует ли дополнительное стороннее программное обеспечение, предоставляющее такую функциональность.

Обратите внимание, что функция Mouse Keys не подходит, так как я не хочу зависеть от положения курсора мыши.

Похожие темы

  1. Сочетание клавиш для правого клика в Mac OS X
  2. Правый клик с использованием клавиатуры в Mac OS X
  3. Включить правый клик в Mac OS X 10.7.5 по умолчанию
  4. Сочетание клавиш для открытия меню правописания в OS X вне Devonthink Pro?
  5. Добавить приложение в контекстное меню правого клика в Mac OS X

После проведения обширных исследований на эту тему, я могу подтвердить, что нет встроенного механизма, который позволяет вызывать контекстное меню с помощью прямого сочетания клавиш или симуляции правого клика мыши. Это связано с техническими ограничениями операционной системы, которые препятствуют определению координат текущего выбора (например, выбранного элемента).

К счастью, в некоторых приложениях можно использовать Apple Script, чтобы облегчить такое действие, но это строго специфичный для приложения подход.

Кажется, каждое сообщение, которое я могу найти в Интернете, либо неверно, либо устарело.

В Catalina можно использовать Системные настройки -> Доступность –> Управление указателем –> Альтернативные методы управления –> установить флажок Разрешить альтернативные методы управления.

Вы можете переназначить сочетание клавиш, нажав соответствующую кнопку с настройками.

Обновление другим автором: вот это диалоговое окно: это великолепно полезно для меня!

введите описание изображения здесь

F12 вызывает контекстное меню очень близко к курсору (хотя и не так точно, как в Windows). Это здорово.

Хотя активация контекста отсутствует, в OS X вы можете активировать
и получить доступ к верхнему меню, используя клавиатуру, что даст вам
доступ ко всем командам в контекстном меню и многому другому.

http://www.cnet.com/news/access-menus-via-the-keyboard-in-os-x/

Пользователь vitor на форумах Alfred написал этот AppleScript, который работает в Finder на Catalina:

tell application "System Events" to set frontApp to name of first process whose frontmost is true

if (frontApp = "Finder") then
    tell application "System Events"
        tell application process "Finder"
            set _selection to value of attribute "AXFocusedUIElement"
            tell _selection to perform action "AXShowMenu"
        end tell
    end tell
end if

Вы можете сохранить его как сервис и установить для активации с помощью сочетания клавиш.

Я нашел другое решение с BetterTouch Tool. Это приложение доступно через Setapp.

Если вы скачали это приложение и предоставили ему все разрешения, вы можете настроить “Показать контекстное меню для выбранного элемента”, когда происходит любой триггер (мой триггер – нажатие “<“) (скриншот):

BetterTouchTool

Надеюсь, это поможет!

Некоторые приложения, такие как Power BI в браузере, используют комбинацию Shift + F10

Обновление для 2024 года: в macOS Sequoia теперь есть сочетание клавиш Control+Return.

Однако оно не работает во всем ПО, поэтому особой пользы нет! В Word не дает никакого эффекта, в Affinity и в Chrome предполагает, что вы просто нажали Return без Control.

Можно добиться этого с помощью Karabiner-Elements. Допустим, мы хотим открыть контекстное меню с помощью клавиши Caps Lock:

  • Откройте Karabiner-Elements;
  • В разделе Simple Modifications > For All Devices, нажмите Add item;
  • В левом выпадающем списке выберите Modfifier keys > caps_lock;
  • В правом выпадающем списке выберите Mouse buttons > button2.

Примечание:
для того чтобы это изменение работало, в macOS System Settings > Mouse > Secondary click должна быть установлена опция Click Right Side. В противном случае, если установлена Click Left Side, используйте Mouse buttons > button1 (источник: https://github.com/pqrs-org/Karabiner-Elements/issues/2376).

Ограничение macOS, упомянутое @czerwin, все еще действует, то есть это откроет контекстное меню элемента, где расположен указатель мыши.

.

Ответ или решение

Вопрос о создании контекстного меню с помощью сочетания клавиш в операционной системе Mac OS X является распространенным среди пользователей, которые ищут эффективность и удобство в работе с компьютером. Рассмотрим, как можно решить эту задачу, используя как встроенные возможности macOS, так и стороннее программное обеспечение.

Теория

Mac OS X, в отличие от Windows, изначально не имеет стандартного клавиши "Menu" для вызова контекстного меню. Основная причина этого заключается в философии Apple, которая акцентирует внимание на интуитивно понятном интерфейсе через мышь и жесты на трекпаде. Тем не менее, потребность в таком функционале часто возникает у пользователей, привыкших к аналогичной возможности в операционной системе Windows.

Отсутствие встроенной поддержки может быть объяснено ограничениями операционной системы в определении координат текущего выделенного элемента. Это означает, что выполнение операции требует знания о выделенном объекте, который в свою очередь зависит от положения курсора мыши.

Пример

Тем не менее, есть несколько способов реализовать подобный функционал. Один из них — использовать AppleScript для автоматизации процедуры в Finder. Например, определенный фрагмент кода позволяет отображать меню для выделенного элемента в Finder:

tell application "System Events" to set frontApp to name of first process whose frontmost is true

if (frontApp = "Finder") then
    tell application "System Events"
        tell application process "Finder"
            set _selection to value of attribute "AXFocusedUIElement"
            tell _selection to perform action "AXShowMenu"
        end tell
    end tell
end if

Этот скрипт можно сохранить как службу и назначить для нее мышиное сочетание клавиш с помощью Automator и Системных настроек.

Другим примером является использование стороннего программного обеспечения, такого как BetterTouchTool или Karabiner-Elements. Эти приложения позволяют настроить клавиатуру, чтобы преобразовать определенные нажатия клавиш в клик правой кнопкой мыши. BetterTouchTool, например, дает возможность выполнять правый клик по выбранному элементу при нажатии настроенной клавиши (например, "<"). Karabiner-Elements также позволяет сделать так, что нажатие на Caps Lock будет эмулировать клик средней кнопкой мыши (button2), который при правильной настройке может функционировать как правый клик.

В последних обновлениях macOS, начиная с версии Sequoia, добавлено сочетание клавиш Control + Enter для вызова контекстного меню. Однако, стоит отметить, что эта команда не всегда работает корректно в различных программах, и поддержка ее ограничена.

Применение

Рассмотрим, как можно реализовать вызов контекстного меню с помощью стороннего ПО, такого как Karabiner-Elements:

  1. Установите и запустите Karabiner-Elements.
  2. Перейдите в раздел "Simple Modifications".
  3. Выберите "For All Devices" и добавьте новый элемент, указывая слева "Modifier keys" > "caps_lock", а справа "Mouse buttons" > "button2".
  4. В настройках системы macOS в разделе "Mouse" убедитесь, что опция "Secondary click" установлена на "Click Right Side".

Эта настройка позволит вам использовать клавишу Caps Lock для симуляции правого клика мыши, обходя ограничения по использованию курсора. Однако, как было упомянуто ранее, контекстное меню откроется в том месте, где находился курсор последнего действия.

В итоге, решение задачи вызова контекстного меню без мыши на Mac OS X требует либо использования настроек через AppleScript и Automator, либо применения стороннего программного обеспечения. Несмотря на это, подобные решения позволяют улучшить взаимодействие с системой и повысить продуктивность работы для пользователей, предпочитающих клавиатурный ввод.

Оцените материал
Добавить комментарий

Капча загружается...