Глобально перемещать указатель мыши и щелкать с помощью клавиш VIM?

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

Например, просто скажите, что моя клавиша режима мыши была SHIFT+COMMAND+M.

  • Я нажимаю SHIFT+COMMAND+M, чтобы войти в режим мыши
  • Я использую h,j,k,l для перемещения курсора по экрану и, возможно, некоторые другие клавиши для перехода с монитора на монитор.
  • Я нажимаю клавишу ввода, чтобы щелкнуть, и выхожу из режима мыши, или нажимаю esc, чтобы выйти из режима мыши.

Есть ли какие-нибудь приложения, которые позволят мне это сделать? Я знаю о « Клавишах мыши », но я действительно хочу иметь возможность настраивать:

  • клавиши, которые я использую для перемещения
  • количество движений, совершаемых мышью при нажатии клавиши.
См. OS X Mountain Lion: управление указателем с помощью клавиш мыши , который также работает в Mavericks. Это не похоже на Vim, но то же самое.
Однако он не соответствует требованиям к настройке, перечисленным в вопросах.
Спасибо за отзыв - я уже знал о «клавишах мыши», но это не работает для меня, так как я действительно хочу настроить клавиши, которые используются для соответствия VIM.

Ответы (3)

Инструмент, который может вам помочь, — это Cliclick . С его помощью вы можете прочитать положение мыши с помощью p:.команды, переместить мышь с помощью m:x,yкоманды и щелкнуть с помощью c:.команды.

На самом деле это немного хак, но что касается поддержки нескольких мониторов, вы можете использовать Slate , где вы можете программно вызывать Cliclick с координатами мыши на другом мониторе. Хотя я уверен, что есть и другие альтернативы. Я также использовал Slate для привязки других первых вызовов к Cliclick.

«Режим мыши» немного сложнее. В Slate вы можете создавать «модальные горячие клавиши», последовательно нажимая две горячие клавиши (например, ^W в Vim), но не поддерживает целые режимы. Однако вы можете динамически редактировать .slate.jsфайл привязки, чтобы он содержал привязки «обычный режим» или «режим мыши» каждый раз, когда вы меняете режим.

Я сделал что-то подобное вчера, так что надеюсь, что это поможет. :)

Я использую отличное приложение: Karabiner: https://pqrs.org/osx/karabiner/

Это полезно для основного переназначения клавиатуры, и есть упакованные параметры конфигурации для использования клавиатуры для перемещения мыши, щелчка и даже прокрутки!

К сожалению, они были сняты с производства, а элементы карабина-преемника не так сильны.

Я нашел приложение, которое делает это!

Кейтти