Есть ли еще решение, которое позволяет работать с двумя пользователями, двумя курсорами и одним монитором?

572
jMyles

Я ищу решение, которое в некоторых отношениях похоже на многоадресный, но с одним важным отличием:

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

Основной вариант использования заключается в том, что я хочу, чтобы моя жена и я могли сотрудничать, в основном работая над своими собственными делами, но иногда напрямую сотрудничая. Я хочу иметь возможность сказать: "Эй, ты думаешь, это правильно?" ... и чтобы она могла перепрыгивать курсором, исправляя или копируя и вставляя.

В идеале я хочу, чтобы это была среда Linux.

Похоже, что X11 предоставляет такую ​​возможность с помощью конфигурации, называемой «Multi-pointer X» или «MPX». Вот статья об этом в X-wiki .

Однако я удивлен, обнаружив, что, по-видимому, это решение не было реализовано ни одним оконным менеджером, по крайней мере, документированным способом. Вместо этого они, по-видимому, считают, что «пользователь» владеет всеми HID и работает с одним курсором и фокусом.

Вот вопрос SuperUser, который содержит ответ, но он неудовлетворителен, так как не позволяет вводить данные с клавиатуры в разные окна одновременно.

Поскольку архитектура GNU / Linux / X11, по-видимому, не исключает эту конфигурацию, поэтому я удивлен, увидев, что она не достигла совершеннолетия, так как в ряде случаев мне кажется очень полезной, как личной, так и профессионал.

Или я не прав и что-то прямо передо мной? :-)

7
+1 за хорошо изученный вопрос, даже если я лично не вижу, как может быть полезно иметь окна от нескольких пользователей на одном экране. ИМО, вы будете постоянно мешать друг другу при открытии или изменении размеров окон. Dmitry Grigoryev 7 лет назад 0
http://multicursor-wm.sourceforge.net/ * утверждает, что * может сделать это, но с отдельными клиентами. Journeyman Geek 7 лет назад 0
Если каждый пользователь получает свою собственную клавиатуру, как следует обрабатывать фокус клавиатуры? AFAIK X допускает только одно окно с фокусировкой, и даже если вы как-то исправили это, события FocusIn / FocusOut для нескольких окон наверняка запутают некоторые программы. dirkt 7 лет назад 0
Единственная известная мне реализация: https://m.youtube.com/watch?v=u8qgehH3kEQ That Brazilian Guy 7 лет назад 0

5 ответов на вопрос

2
harrymc

Это не работает с голой Windows, но может быть возможно со сторонним программным обеспечением.

TeamPlayer (условно-бесплатная, $ 49,95) описывается как:

Это позволяет нескольким пользователям одновременно использовать операционную систему, приложения и файлы.

  • Несколько курсоров на экране с несколькими прикрепленными мышами / клавиатурами
  • Удаленное подключение пользователей из любой точки мира с помощью бесплатного приложения TeamCONNECT
  • Цвета курсора и метки курсора, редактируемые на лету
  • Ограничения области курсоров, ограничивая их любой изменяемой областью на экране
  • Доступна ограниченная бесплатная версия LITE (только для некоммерческого использования)

TeamPlayer LITE - бесплатная версия, ограниченная максимум двумя пользователями, которая, кажется, является версией, в которой вы нуждаетесь.

Комментарий: у меня нет опыта работы с этим продуктом.

enter image description here

Комментарий: Вопрос говорит, что в идеале я хочу, чтобы это была среда Linux. Кроме того, если вы еще не пробовали это, * как вы знаете, это даже работает? *? Journeyman Geek 7 лет назад 3
@JourneymanGeek: В идеале! = Абсолютно. И не смотри в подарок (бесплатную) лошадь (софт) в рот - просто попробуй. harrymc 7 лет назад 0
@JourneymanGeek: Кроме того, я думаю, что эквивалентного решения не существует в Linux, где в мультисайте место определяется как клавиатура + монитор + мышь. harrymc 7 лет назад 0
2
FoxMcloud5655

Я использовал программу под названием GlovePIE для Windows, и она способна привязывать HID практически буквально к тому, что вы хотите. У них есть бесплатный пример сценария, который позволяет использовать 2 мыши для управления двумя различными указателями на экране. Один курсор действует как реальный курсор, а другой действует как подделка. В любое время, когда нужно щелкнуть фальшивый курсор, реальный курсор и фальшивый курсор временно переключаются.

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

На что это работает? И, возможно, будет полезно поговорить о том, что нужно сделать, чтобы заставить это работать так, как нужно ОП. Кроме того ... это на Liverive ... разве нет надлежащей веб-страницы? Journeyman Geek 7 лет назад 2
Спасибо за предложения ... И да, есть надлежащая веб-страница, и я, вероятно, должен дать ссылку на нее, но оригинальная загрузка на сайте не работает, так как сайт довольно старый. FoxMcloud5655 7 лет назад 0
2
Journeyman Geek

Похоже, вы все еще не можете - не совсем так. Поддержка WM на самом деле довольно незначительная вещь, хотя было бы неплохо иметь отдельные темы для курсора . Получение одного сеанса / нескольких мест странно тривиально, с каждой парой клавиатуры и мыши, хотя вы не можете выбрать два разных места в файле и начать печатать сразу - я подозреваю, что это ограничение любого программного обеспечения, которое вы запускаете, а не системы, Я запустил это на Ubuntu 16.10, хотя xinput2 должен поддерживаться на большинстве современных Linux.

Многие из движущихся частей, которые вам нужны, существуют - мульти указатель X встроен в современные версии X, хотя самая близкая вещь к работающему оконному менеджеру не обновлялась почти десять лет - и документация, по какой-то странной причине, требует x2x, Вы можете полностью получить два курсора с их собственной клавиатурой, работающей

Теперь вот что работает отлично

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

Вы захотите установить xinput - у apt есть это.

Список xinput дает вам список устройств. Теперь вы хотите создать второй (или третий, или четвертый) набор указателей

⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ TPPS/2 IBM TrackPoint id=11 [slave pointer (2)] ⎜ ↳ SynPS/2 Synaptics TouchPad id=10 [slave pointer (13)]  ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ Power Button id=6 [slave keyboard (3)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Sleep Button id=8 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=9 [slave keyboard (3)] ↳ ThinkPad Extra Buttons id=12 [slave keyboard (3)] ↳ Chicony USB Keyboard id=17 [slave keyboard (3)] 

Создайте второй набор входов с помощью и добавьте два устройства с помощью

xinput create-master pointer2
xinput reattach 10 "pointer2 pointer"
xinput reattach 17 "pointer2 keyboard"

Это подключает SynPS / 2 Synaptics TouchPad и USB-клавиатуру Chicony к вторичным входам. Я подозреваю, что вы также можете использовать названия устройств.

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

Так что да, вы можете получить 90% того, что вы хотите, но не полностью. Вы не можете одновременно печатать, но вы можете перемещать свои курсоры независимо друг от друга и «горячее место» между клавиатурами.

Вам также нужно будет запускать эти команды по мере необходимости, для этого нет документации по X, насколько я могу судить.

0
frank ankersly

Есть еще один аналогичный ответ на этот вопрос - могут ли два пользователя одновременно использовать один компьютер?

быстрый ответ - НЕТ .. многопользовательский ввод еще не полностью разработан из-за насущной необходимости одновременного совместного использования двух параллельных учетных записей пользователей, отсутствия дополнительного уровня управления приоритетом процессора и общей путаницы, которая окружает компьютер пытаясь определить, кто находится под контролем ....

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

Я не думаю, что ваша аналогия убедительна - самолет может летать только в одном направлении за раз, в то время как опыт пользователя компьютера состоит в том, что он делает много вещей одновременно. Кроме того, как я указывал в своем вопросе, большинство сложных проблем уже решены - X11 фактически предусматривает несколько указателей от ввода. Просто у большинства оконных менеджеров нет пользовательского интерфейса, чтобы воспользоваться этим. Я надеюсь, что кто-то присоединится к тому, о ком я еще не слышал. jMyles 7 лет назад 3
0
Dagelf

Почему uncessasirly ограничить себя к тому, что может поместиться на экране, когда вы можете иметь лучший опыт работы с несколькими экранами, используя общий блокнот, такие как EtherPad, Piratepad или десять других подобных программ здесь: http://alternativeto.net/software/ piratepad /

Похожие вопросы