[#18233] [book] blade.nagaokaut.ac.jp/ruby/ruby-list/ — Shin-ichiro Hara <sinara@...>

原です。

21 messages 1999/11/01
[#18239] [book] csv_split2 [Re: blade.nagaokaut.ac.jp/ruby/ruby-list/] — keiju@... (石塚圭樹) 1999/11/01

けいじゅ@日本ラショナルソフトウェアです.

[#18244] Re: [book] csv_split2 [Re: blade.nagaokaut.ac.jp/ruby/ruby-list/] — Shin-ichiro Hara <sinara@...> 1999/11/01

原です。

[#18289] Re: [book] csv_split2 — Koretsugu Daigoro <tmmcross@...> 1999/11/02

これつぐです。

[#18291] Re: [book] csv_split2 — keiju@... (石塚圭樹) 1999/11/02

けいじゅ@日本ラショナルソフトウェアです.

[#18311] Re: [book] csv_split2 — Koretsugu Daigoro <tmmcross@...> 1999/11/02

これつぐです。

[#18338] オブジェクトの非同一性判定 — Ayanosuke <aya@...>

 綾乃介です。

13 messages 1999/11/03

[#18539] [book] $*, etc. — Yasuhiro Fukuma <yasuf@...>

福間@福岡 です。

44 messages 1999/11/11

[#18580] — tokoma@... (中川 誠)

中川です。

44 messages 1999/11/14
[#18619] build on alpha — Go Nakagawa <nakagawa@...> 1999/11/15

もとの質問のかたとは別の中川です。

[#18737] Re: build on alpha — tokoma@... (中川 誠) 1999/11/18

中川です。

[#19144] Re: build on alpha — tokoma@... (中川 誠) 1999/12/04

中川です。長文で失礼します。

[#19341] Re: build on alpha — tokoma@... (中川 誠) 1999/12/09

中川です。

[#19344] Re: build on alpha — matz@... (Yukihiro Matsumoto) 1999/12/09

まつもと ゆきひろです

[#19400] Re: build on alpha — tokoma@... (中川 誠) 1999/12/10

中川です。

[#19426] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/11

えぐち@エスアンドイー です。

[#19459] Re: build on alpha — tokoma@... (中川 誠) 1999/12/13

中川です。

[#19461] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/13

えぐち@エスアンドイー です。

[#19506] Re: build on alpha — tokoma@... (中川 誠) 1999/12/14

中川です。

[#19520] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/15

えぐち@エスアンドイー です。

[#19522] Re: build on alpha — matz@... (Yukihiro Matsumoto) 1999/12/15

まつもと ゆきひろです

[#19543] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/15

えぐち@エスアンドイー です。

[#19562] Re: build on alpha — tokoma@... (中川 誠) 1999/12/15

中川です。

[#19569] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/16

えぐち@エスアンドイー です。

[#19592] Re: build on alpha — tokoma@... (中川 誠) 1999/12/16

中川です。

[#18637] constant? — Kazuhiro Yoshida <moriq.kazuhiro@...>

もりきゅうです。

20 messages 1999/11/16
[#18640] Re: constant? — WATANABE Hirofumi <Hirofumi.Watanabe@...> 1999/11/16

わたなべです.

[#18650] Re: constant? — Kazuhiro Yoshida <moriq.kazuhiro@...> 1999/11/16

もりきゅうです。

[#18657] Re: constant? — matz@... (Yukihiro Matsumoto) 1999/11/16

まつもと ゆきひろです

[#18709] ADO にて datetime 型の取得 — Takashi SHIODA <tsio@...>

塩田です。

18 messages 1999/11/18
[#18779] Re: ADO にて datetime 型の取得 — Masaki Suketa<CQN02273@...> 1999/11/20

助田です.

[#18802] Re: ADO にて datetime 型の取得 — Takashi SHIODA <tsio@...> 1999/11/21

オレンジソフト塩田です。

[#18712] Re: header output in eruby — TAKEUCHi Kahori <take-k@...>

たけうちです。

16 messages 1999/11/18
[#18716] Re: header output in eruby — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/11/18

なひです.

[#18830] mod_ruby-0.1.4 — TAKAHASHI Masayoshi <maki@...>

高橋征義です。

16 messages 1999/11/22

[#18853] initializer polymorphism? — Takeyuki Watadani <watadani@...>

渡谷といいます。

25 messages 1999/11/23

[#18911] Re: eRuby 変換後の無駄 (?) な改行 — TAKEUCHi Kahori <take-k@...>

たけうちです。

14 messages 1999/11/25

[#18914] Ruby standard GUI framework? — Hideto ISHIBASHI <s34204@...>

石橋秀仁です。

43 messages 1999/11/25
[#18975] Re: Ruby standard GUI framework? — 中村暁史 Nakamura Akifumi <BXQ04723@...> 1999/11/27

[#19020] Re: Ruby standard GUI framework? — Hideto ISHIBASHI <s34204@...> 1999/11/29

石橋秀仁です。

[#19026] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/11/29

[#19081] Re: Ruby standard GUI framework? — "Hideaki Takata" <hideakit@...3.dion.ne.jp> 1999/12/01

たかたです。

[#19092] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/12/01

[#19112] Re: Ruby standard GUI framework? — 中村暁史 Nakamura Akifumi <BXQ04723@...> 1999/12/02

[#19131] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/12/03

[#18948] 他言語との比較 — とみたまさひろ <tommy@...>

とみたです。

18 messages 1999/11/26

[ruby-list:18680] Re: header output in eruby

From: Shugo Maeda <shugo@...>
Date: 1999-11-17 07:44:31 UTC
List: ruby-list #18680
前田です。

At Wed, 17 Nov 1999 13:34:57 +0900,
TAKEUCHi Kahori <take-k@secom-sis.co.jp> wrote:
> > $>.cancel
> > 
> > で、バッファをクリアできるようにすればいいような気がしました。
> 
> あ、それいいですね〜。わかりやすくて。

このメールにパッチを付けます。
# 実は今のversionでも$>.replace("")でできてたりして(^_^;
以下のようなスクリプトで試したところうまく動いているようです。

#!/usr/bin/eruby
Content-Type: text/html

<%
$NOHEADER = true
begin
%>

<html>
<head>
<title>test</title>
</head>
<body>
1 / 0 = <%= 1 / 0 %>
</body>
</html>
<%
rescue
  $>.cancel
  print "Location: http://www.ruby-lang.org/\n\n"
end
%>

> > ついでにnoheaderモードを環境変数で指定できた方がよさそうですね。

まちがえました、環境変数じゃなくてグローバル変数($NOHEADER)です。

-- 
前田 修吾

diff -u -r1.4 eruby_main.c
--- eruby_main.c	1999/08/10 04:44:39	1.4
+++ eruby_main.c	1999/11/17 07:38:31
@@ -40,7 +40,7 @@
 
 static char *eruby_filename = NULL;
 static int eruby_mode = MODE_UNKNOWN;
-static int eruby_no_header = 0;
+static int eruby_noheader = 0;
 
 static char *get_charset()
 {
@@ -439,13 +439,31 @@
     }
 }
 
-static VALUE str_write(VALUE self, VALUE str)
+static VALUE defout_write(VALUE self, VALUE str)
 {
     str = rb_obj_as_string(str);
     rb_str_cat(self, RSTRING(str)->ptr, RSTRING(str)->len);
     return Qnil;
 }
 
+static VALUE defout_cancel(VALUE self)
+{
+    if (RSTRING(self)->len == 0) return;
+    RSTRING(self)->len = 0;
+    RSTRING(self)->ptr[0] = '\0';
+    return Qnil;
+}
+
+static VALUE noheader_getter()
+{
+    return eruby_noheader ? Qtrue : Qfalse;
+}
+
+static void noheader_setter(VALUE val)
+{
+    eruby_noheader = RTEST(val);
+}
+
 static int guess_mode()
 {
     if (getenv("GATEWAY_INTERFACE") == NULL) {
@@ -583,7 +601,7 @@
 	    s++;
 	    goto again;
 	case 'n':
-	    eruby_no_header = 1;
+	    eruby_noheader = 1;
 	    s++;
 	    goto again;
 	case '\0':
@@ -597,7 +615,7 @@
 		ruby_debug = Qtrue;
 	    }
 	    else if (strcmp("noheader", s) == 0) {
-		eruby_no_header = 1;
+		eruby_noheader = 1;
 	    }
 	    else if (strcmp("version", s) == 0) {
 		show_version();
@@ -658,7 +676,9 @@
 	rb_set_safe_level(1);
 
     rb_defout = rb_str_new("", 0);
-    rb_define_singleton_method(rb_defout, "write", str_write, 1);
+    rb_define_singleton_method(rb_defout, "write", defout_write, 1);
+    rb_define_singleton_method(rb_defout, "cancel", defout_cancel, 0);
+    rb_define_virtual_variable("$NOHEADER", noheader_getter, noheader_setter);
     script = eruby_load(eruby_filename, 0, &state);
     if (state) {
 	error_print(state, eruby_mode, script);
@@ -672,7 +692,7 @@
     unlink(RSTRING(script)->ptr);
     out = RSTRING(rb_defout)->ptr;
     nout = RSTRING(rb_defout)->len;
-    if (!eruby_no_header &&
+    if (!eruby_noheader &&
 	(eruby_mode == MODE_CGI || eruby_mode == MODE_NPHCGI)) {
 	if (eruby_mode == MODE_NPHCGI)
 	    print_http_headers();

In This Thread

Prev Next