原です。

In message "[ruby-list:17403] Re: mn128.rb & telnet.rb"
    on 99/10/05, wakou / fsinet.or.jp <wakou / fsinet.or.jp> writes:
|
|青山です。

|あ、区切り文字ですか。なるほど。と、/\r/ にしても同じになったので、変
|だと思ったら、サンプルに適当に手を加えて試したのですが、t.wait という
|行が最後にあり、これが出力していたようです。失礼いたしました。

そうでしたか。そういえば、

In message "[ruby-list:17396] Re: mn128.rb & telnet.rb"
    on 99/10/05, wakou / fsinet.or.jp <wakou / fsinet.or.jp> writes:

|行指向の gets を用意するには、内部的にはプロンプトまで受け取り、ユーザー
|側にはバッファから1行分ずつ渡すというようにするという感じの処理が必要
|になるかと思います。

この感じは良く理解できて、ttelnet.rb でも

  while s = t.gets
    print s
    break if s =~ /Prompt \z/
  end

というのは、うまく動きません。引数なし gets は、プロンプトを複数回
に分けて返して来る可能性があるので、オートパイロットには向きません。
#デフォルトの gets は実は gets("\n", //) なんです。

正しくは、
  
  while s = t.gets(/Prompt \z/)
    print s
    break if s =~ /Prompt \z/
  end

あるいは、

  while s = t.gets(/Prompt \z/)
    print s
    break if s.idx > 0
  end

としないといけなくて、これなら「ありそうな感じ」ではないでしょうか。


|> おお、おめでとうございます。ttelnet.rb が追いつくのはまたいつになるか、、
|
|ありがとうございます。追い付くのはすぐですよ。何せ、対応といっても、無
|視(削除)してやるようにしたというだけですから。(以前は削除されずに、デー
|タと一緒に流れてしまっていました。)

なるほど。ttelnet.rb でも、もともと未サポートのコマンドは削除になっ
ています。

Kterm と DosPrompt ぐらいで画面制御ぐらいさせてみたいなあ。