[#14185] ruby on Linux/m68k — akira yamada / やまだあきら <akira@...>
[#14196] fork() on MacOS — nobu.nakada@...
なかだです。
[#14206] undef_method :method_missing — Kenichi Komiya <kom@...1.accsnet.ne.jp>
なかだです。
なかだです。
金光です。
むらけんです.
金光です。
楠です
金光です。
金光です。
金光です。どもっ。
なかだです。
金光です。どもっ。
金光です。
岩月と申します。
金光です。どもっ。
有馬です。
金光です。
有馬です。
金光です。どもっ。
とみたです。
金光です。
とみたです。
金光です。
まつもと ゆきひろです
金光です。(^_^;
あづみです。
有馬です。
金光です。
有馬です。
金光です。どもっ。
有馬です。
むらけんです.
むらけんさん wrote:
むらけんです.
長沢です。
まつもと ゆきひろです
金光です。どもっ。
有馬です。
金光です。どもどもっ。
むらけんです.
金光です。いちおうフォローだけ
ふなばです。
一応フォローだけ、ほんとにちょっとだけっすよ
岩月と申します。
むらけんです.
楠です
むらけんです.
金光です。FOXとかもあるのかぁ。すげぇなぁ。
まつもと ゆきひろです
金光です。御大、待ってましたっ。
なかだです。
金光です。どもどもっ。
なかだです。
さくです。
まつもと ゆきひろです
金光です。どもっ。
まつもと ゆきひろです
金光です。どもどもっ。
[#14229] [BUG] segv on [str].pack("p") — Koji Arai <JCA02266@...>
新井です。
なかだです。
新井です。
なかだです。
[#14338] setup.rb (Re: Common GUI framework) — Minero Aoki <aamine@...>
あおきです。
[#14382] [BUG] segv on regex matching with long string — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
[#14390] [Patch] pp.rb and debug.rb — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
なひです。書き忘れ。
なかだです。
nobu.nakada@nifty.ne.jpさんの
なひです。
なかだです。
In article <DJEGJLCFNEIMKDNMLFPHMEAHCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEAICBAA.nakahiro@sarion.co.jp>,
なひです。
まつもと ゆきひろです
In article <997774251.527258.14423.nullmailer@ev.netlab.jp>,
まつもと ゆきひろです
In article <997783083.657819.14685.nullmailer@ev.netlab.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEALCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEAPCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHMEBACBAA.nakahiro@sarion.co.jp>,
あづみです。
なひです。
In article <DJEGJLCFNEIMKDNMLFPHIEBBCBAA.nakahiro@sarion.co.jp>,
うぅむ。ぼーっとしてたら意味もなく Subject を変えてしまった。
In article <20010817205051.UAZHC0A8274C.C78F0C8A@mail.biglobe.ne.jp>,
あづみです。
In article <hvo66bnxe4b.fsf_-_@flux.etl.go.jp>,
古い話題で恐縮ですが…
なかだです。
In article <200109290948.f8T9mbh12942@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
In article <1001945748.240863.24023.nullmailer@ev.netlab.jp>,
なかだです。
In article <200110020334.f923YLb08299@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
In article <200110021010.f92AAIb13474@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
In article <1002080461.740444.11187.nullmailer@ev.netlab.jp>,
In article <DJEGJLCFNEIMKDNMLFPHCEPJCAAA.nakahiro@sarion.co.jp>,
なひです。
まつもと ゆきひろです
In article <DJEGJLCFNEIMKDNMLFPHCEPJCAAA.nakahiro@sarion.co.jp>,
あおきです。
In article <20010809221751J.aamine@mx.edit.ne.jp>,
[#14406] typo in ruby 1.7 — Koji Arai <JCA02266@...>
新井です。
[#14413] 1.7.1 2001-08-06: if true && /match/ — WATANABE Tetsuya <tetsu@...>
渡辺哲也です。
[#14465] Ruby/Bsearch — akira yamada / やまだあきら <akira@...>
まつもと ゆきひろです
At Wed, 15 Aug 2001 18:01:50 +0900,
"Akinori MUSHA" <knu@iDaemons.org> wrote:
At Thu, 16 Aug 2001 00:15:05 +0900,
In article <20010816001456V.satoru@namazu.org>,
Tanaka Akira <akr@m17n.org> wrote:
In article <20010816130056C.satoru@namazu.org>,
[#14480] avoid compile warning of tcltklib with VC5 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
[#14505] BUG: ruby 1.6.4 cannot use threads on Sparc (segv) — akira yamada / やまだあきら <akira@...>
[#14530] restore terminal mode even if readline interrupted. — Koji Arai <JCA02266@...>
新井です。
新井です。
新井です。
新井です。
At Wed, 5 Sep 2001 00:19:51 +0900,
まつもと ゆきひろです
[#14552] read in IO#eof? — nobu.nakada@...
なかだです。
[#14575] infinite loop on Dir.glob("*/**/*") — nobu.nakada@...
なかだです。
[#14577] option nodynamic — Daisuke Aoki <dai@...>
青木@横浜です。
[#14595] SEGV at `$0 = "long long string"' — nobu.nakada@...
なかだです。
なかだです。
まつもと ゆきひろです
[ruby-dev:14601] $stdout への代入 ( 再考)
新井です。
$stdin、$stdout、$stderr のドキュメントを考えてました。
: $stdin
: $stdout
: $stderr
標準入力,標準出力,標準エラー出力.
これらへの代入はリダイレクトの意味になります。つまり、
$stdout = File.open(file, 'w')
を行うと、以後 $stdout への出力は file への出力になると同時に
標準出力(STDOUT)への出力も file への出力になります。ただし、
$stdout と STDOUT の fd の値は異なります。
p obj = File.open('/tmp/file', 'w') # => #<File:0x401a6b44>
p obj.fileno # => 4
# これ以降の出力は実際には /tmp/file の内容です
p $stdout = obj # => #<File:0x401a6b44>
p $stdout.fileno # => 4
p STDOUT.fileno # => 1
以下のようなことをしても標準出力が元に戻るわけではありません
$stdout = File.open('/tmp/file', 'w')
p 'foo' # => foo (/tmp/file の内容)
$stdout = STDOUT
p $stdout.fileno # => 4 (/tmp/file の内容)
最初の代入の時点で STDOUT はリダイレクトされているので、
これにさらにリダイレクトさせても無意味だからです。
(((-あらい 2001-08-30: ruby version 1.7 では実験的に $stdout =
STDOUT は元に戻るようになっていますが、何か無理矢理な感じがします。
あるべき挙動はまだ未定義です。個人的には1.6 の挙動の方が常にリダイ
レクトという点で一貫していて良いです…が、-)))
本当に元に戻したい場合は、以下のようにします。
sv = STDOUT.dup
$stdout = File.open('/tmp/file', 'w')
p 'foo' # => foo (/tmp/file の内容)
$stdout = sv
p $stdout.fileno # => 4 (画面出力)
fileno まで戻したければ再度 (({$stdout = STDOUT})) を
行います。((-のように、不便な面があります-))
以上、上で書いた通り、個人的には 1.7 のように変な小細工をす
るよりは 1.6 の仕様の方が良い感じです。で、上で問題にしてい
る元に戻す方法ですが、以下のようにするのはどうでしょう?
sv = STDOUT.dup
$stdout = File.open('/tmp/file', 'w')
p $stdout.fileno # => 1 (/tmp/file の内容)
$stdout = sv
p $stdout.fileno # => 1 (画面出力)
つまり、$stdin、$stdout、$stderr の fd 値は常に固定にすると
いうことです。C で書けばこうでしょうか?
int sv = dup(1);
FILE *fp = fopen("/tmp/file", "w");
dup2(fileno(fp), 1);
puts('foo');
dup2(sv, 1);
puts('bar');
いかがでしょう?より単純でわかりやすいルールだと思います(な
んか穴がありそうだけど)
# どうでもいいけど、この説明は長すぎだあ。ボツだあ。
--
新井康司 (Koji Arai)