Uma boa arquitetura seria dividir a tela em duas janelas, uma para entrada de comando e outra para exibição de programa. Isso é basicamente o que um cliente normal faria. Você pode fazer isso na tela com o comando split
( C-a S
).
Crie um canal nomeado para transmitir sua entrada da janela de entrada para a janela de telnet: mkfifo mud-input-fifo
. Em uma das janelas, execute telnet mud.example.com 1234 <mud-input-fifo
ou nc mud.example.com 1234 <mud-input-fifo
( nc
é netcat , o canivete suíço de rede). Na outra janela, execute rlwrap tee mud-input-fifo
( rlwrap fornece edição de linha para qualquer programa de entrada de linha ).
Emacs também poderia fazer isso. Mas você acabaria implementando um cliente MUD no Emacs, o que já foi feito antes ( mu.el
, < href="http://www.waider.ie/hacks/emacs/mud.html"> mud.el
, mudel.el
, eMUDs ,…).