Можно ли использовать разные клавиатуры для разных приложений?


9

Что я хотел бы это:

У меня было бы две клавиатуры. Один из них «связан» с Matlab, другой «связан» с моим текстовым редактором по выбору. Таким образом, я мог бы отредактировать некоторый скрипт и все еще тестировать некоторые команды в Matlab без необходимости постоянно переключаться между приложениями.

По сути, я бы хотел подключить к компьютеру дополнительную клавиатуру, которая бы контролировала исключительно Matlab. Это было бы круто!

Есть какой-либо способ сделать это? Желательно с OSX, но было бы весело и на Windows или Linux.


1
интересный вопрос. определенно не то, что предусматривается в наших нынешних «многозадачных» операционных системах, но я не знаю, что это означает, что это невозможно. лично я подозреваю, что это выполнимо, но не будет симпатичным.
шарлатан-кихот

То же самое, "не будет красивым". Клавиатуры и мыши не видны "публично", как жесткие диски или принтеры; они просто "есть".
JMD

1
Это может быть невозможно в Unix - по крайней мере, так: stackoverflow.com/questions/285716/…
Джейсон Р. Кумбс

3
В поисках ответа я обнаружил, что поиск «штрих-кода ловушки» - это хороший поиск, потому что многие устройства считывания штрих-кода (особенно тип клина) неотличимы от клавиатуры ... и многие пользователи хотят направить этот ввод на определенный применение.
Джейсон Р. Кумбс

Ответы:


5

Если вы системный программист, вам будет легко получить эту функциональность. Действия с использованием скрипта AutoHotKey для Windows:

  1. Создайте скрипт AutoHotKey, который может обнаруживать нажатия клавиш на разных клавиатурах,
  2. Затем, используя дескриптор Windows, получите winID для обеих программ
  3. Сопоставить разные клавиатуры с разными WinID

Я сделал аналогичную функцию для управления моим музыкальным проигрывателем, даже если мое активное окно было VS-2010 / MatLab / или любым другим окном.


Я новичок в AutoHotKey. Можете ли вы поделиться своим сценарием, пожалуйста?
Шитикант

3

Я не знаю, можете ли вы сделать это изначально. Я никогда не видел этого, но я хотел бы иметь эту функциональность.

Одно из хакерских решений - использовать что-то вроде VMWare, запустить Matlab на виртуальной машине и «подключить» вторую клавиатуру к виртуальной машине. Это менее элегантно, но должно работать.


это то, что я собирался предложить.
Рой Рико

Кроме того, было бы немного болезненно заставить их работать в одном каталоге. Возможно, используя сетевой ресурс через виртуальную сеть
Bastibe

1

Похоже, TeamPlayer может быть продуктом для Windows, который делает то, что вы ищете.


Интересно, поддерживает ли TeamPlayer переключение фокуса, которое было бы необходимо для моего зрения? Каждая мышь / клавиатура должна иметь свой собственный фокус, или весь ввод будет перенаправлен в текущее активное окно.
Бастиб

1

Если у вас несколько мониторов, вы можете запускать разные X-серверы для каждого монитора в linux и вручную указывать устройства клавиатуры / мыши, которые использует каждый сервер. Это позволяет вам войти в систему дважды, загрузить Matlab на одном экране и ваш редактор на другом, и иметь отдельные мыши / клавиатуры для каждого.


1

Самый простой способ сделать это - иметь один компьютер для текстового редактора и другой компьютер для Matlab. Однако переключение между клавиатурами может оказаться более трудоемким, чем переключение между окнами с помощью мыши. Или вы всегда можете использовать функциональность alt-tab в Windows, которая позволит вам быстрее переключаться между окнами.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.