[#42196] YAML でEUC は使えないのでしょうか。 — Tomokiyo Nomura <tnomura@...>
野村@延岡です。
8 messages
2006/05/05
[#42214] [ANN] RubyKaigi 2006 Announcement — SASADA Koichi <ko1@...>
日本Rubyの会、日本Rubyカンファレンス2006実行委員のささだです。
4 messages
2006/05/10
[#42235] ftp:// のリストを open-uri で得られないでしょうか — "Hideo Konami" <konami@...>
小波です。
5 messages
2006/05/20
[#42243] コミュニティと宗教の分離について — Beyond <beyond@...>
14 messages
2006/05/21
[#42245] Re: コミュニティと宗教の分離について
— Masayoshi Takahashi <takahashi@...>
2006/05/22
高橋征義です。「日本Rubyの会」という集まりの代表をしております。
[#42253] File objectがいつのまにか nilに、 — しん <dezawa@...>
出沢です
9 messages
2006/05/23
[#42267] メニューのループについて — リックス <rubyer4649@...>
りっくすです
21 messages
2006/05/27
[#42275] Re: メニューのループについて
— rubikitch <rubikitch@...>
2006/05/27
From: リックス <rubyer4649@yahoo.co.jp>
[#42276] Re: メニューのループについて
— Hiroshi Yuki <hyuki@...>
2006/05/27
結城です。
[#42301] Re: メニューのループについて — "conundrum /" <conundrum@...>
conundrumです。
11 messages
2006/05/28
[#42306] Re: メニューのループについて
— rubikitch <rubikitch@...>
2006/05/29
From: "conundrum /" <conundrum@hotmail.co.jp>
[ruby-list:42178] Re: RS232Cによるパソコン間の通信の不具合(質問)
From:
"Hisashi Yahata" <yahatah@...>
Date:
2006-05-01 07:08:38 UTC
List:
ruby-list #42178
青木さん、木村さん、回答を有り難うございました。 > キー入力を拾ってそのときだけ表示したいという意図は、明示された > タイミング以外のデータは捨てたいということですよね? そのとおりです。 > それなら、シリアル入力をポーリングする部分はスレッドにしてしまって > 常時最新の値を保持するようにして、キー入力があったときにその値を > 拾ってくるようにしてはいかがでしょう? 仰るとおりだと思います。スレッドの利用技術は未修得ですので、勉強して解決法を 探ります。 今の私が実現できる対応策は、毎回、Runすれば、最新計測データを得られるので、 これをファイルにappendにすれば正しく記録できます。 格好はよくないですが。 木村さんの説明の「flushはバッファにたまっているものを吐き出させるものであっ て、破棄させるものではありません。」を理解しました。 すなわち、flushしても、バッファには溜まったままで、これからデータを読み込め ば、やはり古いデータから読み込むのは避けられないということですね。 その場合、mainでもflushして、データを読み込み続けておいて、そして最新の値を 記録すれば、よいのかとも思いますが。これで解決できるかやってみます。 > #わたしはこの方法でシリアル接続のシーケンサを制御してます。 > 具体的なコードは手元に環境がないのでパスってことで^^; スレッドの利用について、よろしかったら、コードを教えてください。 なお、下記のスクリプトを検討していると、次のような問題があります。 1 print "input = \n""の命令がありながら、この命令がすぐに実行されませ ん。 キーを入力すると、後からinput = が表示されます。この原因は何でしょう か。 p "input ="であれば、すぐに実行します。この場合に、” ”を消すことがで きないので具合が悪いです。 キー入力を促すことが目的ですが、スクリプトどおりに動作しないのは気になり ます。 2 print "input = " のように同一行で入力を促す方法はどうすればよいのでしょ うか。 3 文字を入力すると、ベルが鳴りますが、何故でしょうか。enterキーを押した場 合は、鳴りません。 たぶん、 p chrtにおいて、ベル命令(\a)が含まれたためでしょうが、何故含ま れるのでしょうか。 4 enterキーのみ押したことを認識させたいのですが、この命令では、rの内容は、 前のデータが保持されたままです。 これをうまく処理する方法はあるでしょうか。 5 キーの一つだけを押しただけで、entreキーを押さなくても、キー入力が認識さ れるには、どのようなスクリプトが考えられますか。 例題 while (1) print "input = \n" r=STDIN.sysread(2).chomp # r=STDIN.readline.chomp p r break if r == "" or r == nil end __END__ t input = "t" s input = "s"