Разведенная входная строка на Экране GNU

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

Одна возможность для виртуального X-сервера является VNC. Запустите vncserver программа; это создает виртуальный X-сервер и выполнения ~/.vnc/xstartup, который обычно работает ~/.xinitrc как startx. Затем звоните xvncviewer показать окно, содержащее дисплей виртуального X-сервера. Виртуальный сервер продолжает работать, пока выходы сессии или Вы не работаете vncserver -kill; можно подключить и разъединить средства просмотра по желанию. Вы, возможно, должны указать число дисплея на командной строке, например. vncserver :3 и xvncviewer :3. К сессиям VNC можно получить доступ от различных машин, если никакой брандмауэр не мешает: xvncviewer somehost:3. Существует несколько реализаций серверов VNC и средств просмотра.

3
12.05.2011, 03:36
2 ответа

Хорошая архитектура должна была бы разделить экран на два окна, один для ввода команд и один для дисплея программы. Это в основном, что сделал бы нормальный клиент MUD. Можно сделать это на Экране с split команда (C-a S).

Создайте именованный канал для передачи входа от входного окна до окна telnet: mkfifo mud-input-fifo. В одном из Windows, запущенных telnet mud.example.com 1234 <mud-input-fifo или nc mud.example.com 1234 <mud-input-fifo (nc netcat, швейцарский нож сетей). В другом окне, выполненном rlwrap tee mud-input-fifo (rlwrap предоставляет выпуск строки любой входной программе строки).

Emacs мог сделать это также. Но Вы закончили бы тем, что реализовали клиент MUD в Emacs, который был сделан прежде (mu.el, mud.el, mudel.el, eMUDs, …).

2
27.01.2020, 21:29

Это не делает то, что Вы спрашиваете, но во многих системах (включая Linux и большую часть BSDs), можно установить ключ для "rprnt" действия:

 stty rprnt '^R'

и нажатие клавиши, в то время как в программе, которая использует tty драйвер для входной обработки [который я думаю, telnet делает, когда Вы подключены к необработанному сервису как это], заставит входную строку вновь отображать на следующей строке

Таким образом, Ваш экран будет похож:

SERVER PROMPT> your text your text your text your textOUTPUT FROM SERVER^R
your text your text your text your text your text_

Кроме того, необходимо будет получить настоящий клиент MUD как tinyfugue.

0
27.01.2020, 21:29

Теги

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