[#2294] raise == Thread.current.raise ? — sinara@...
原です。
8 messages
1997/03/03
[#2295] Re: raise == Thread.current.raise ?
— matz@... (Yukihiro Matsumoto)
1997/03/03
まつもと ゆきひろです.
[#2321] shutdown — sinara@...
原です。
9 messages
1997/03/05
[#2327] %Q!string! — sinara@...
原です。
9 messages
1997/03/06
[#2340] ruby 1.0-9700306 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
2 messages
1997/03/06
[#2342] debug.rb —
わたなべです.
7 messages
1997/03/08
[#2355] [Req] Array#reverse — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
19 messages
1997/03/13
[#2357] Re: [Req] Array#reverse
— matz@... (Yukihiro Matsumoto)
1997/03/13
まつもと ゆきひろです.
[#2359] Re: [Req] Array#reverse
—
1997/03/13
けいじゅ@SHLジャパンです.
[#2364] [Req] Hash#reverse (Re: [Req] Array#reverse )
— sinara@...
1997/03/13
原です。
[#2366] Re: [Req] Hash#reverse (Re: [Req] Array#reverse )
—
1997/03/13
けいじゅ@SHLジャパンです.
[#2356] [BUG] unpack — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
5 messages
1997/03/13
[#2379] ruby 1.0-970318 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
8 messages
1997/03/18
[#2387] Kanji String — gotoken@... (GOTO Kentaro)
はじめまして、 後藤ともうします。
33 messages
1997/03/19
[#2389] Re: Kanji String
— matz@... (Yukihiro Matsumoto)
1997/03/19
まつもと ゆきひろです.
[#2391] Re: Kanji String
— gotoken@... (GOTO Kentaro)
1997/03/19
後藤です
[#2393] Re: Kanji String
— matz@... (Yukihiro Matsumoto)
1997/03/19
まつもと ゆきひろです.
[#2465] curses library
— MAEDA Shugo <ender@...>
1997/03/28
前田です。
[#2485] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2495] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/29
前田です。
[#2513] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2469] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/28
前田です。
[#2470] Re: curses library
— WATANABE Hirofumi <watanabe@...>
1997/03/28
わたなべです.
[#2488] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2497] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/29
前田です。
[#2512] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2388] eval()'s context — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
5 messages
1997/03/19
[#2395] Re: eval()'s context — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1997/03/19
[#2402] about TCPserver — MAEDA Shugo <ender@...>
前田です。
45 messages
1997/03/21
[#2403] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/22
まつもと ゆきひろです
[#2405] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/23
前田です。
[#2407] Re: about TCPserver
— WATANABE Hirofumi <watanabe@...>
1997/03/24
わたなべです.
[#2406] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/24
[#2408] Re: about TCPserver
— WATANABE Hirofumi <watanabe@...>
1997/03/24
わたなべです.
[#2411] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/24
前田です。
[#2417] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/25
まつもと ゆきひろです.
[#2425] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/25
前田です。
[#2430] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/26
まつもと ゆきひろです
[#2437] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/26
前田です。
[#2442] JString? (Re: about TCPserver)
— matz@... (Yukihiro Matsumoto)
1997/03/27
まつもと ゆきひろです
[#2429] \W, \S, \D — WATANABE Hirofumi <watanabe@...>
わたなべです.
7 messages
1997/03/26
[#2439] url escape — gotoken@... (GOTO Kentaro)
どシロウトの後藤です.
57 messages
1997/03/27
[#2444] Re: url escape
— matz@... (Yukihiro Matsumoto)
1997/03/27
『だらだら日記−−』の読者,まつもと ゆきひろです
[#2451] Re: url escape
— sinara@...
1997/03/27
原です。
[#2455] class design (Re: url escape)
— matz@... (Yukihiro Matsumoto)
1997/03/27
まつもと ゆきひろです
[#2471] Re: class design (Re: url escape)
— sinara@...
1997/03/28
原です。
[#2487] Re: class design (Re: url escape)
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2510] Re: class design (Re: url escape)
—
1997/03/30
けいじゅ@SHLジャパンです.
[#2603] Re: class design (Re: url escape)
— sinara@...
1997/04/04
原です。
[#2628] Re: class design (Re: url escape)
—
1997/04/05
けいじゅ@SHLジャパンです.
[#2449] Re: url escape
— sinara@...
1997/03/27
原です。
[#2456] ruby way (Re: url escape)
— matz@... (Yukihiro Matsumoto)
1997/03/27
まつもと ゆきひろです
[#2476] [Req] for Struct and [?] for Class — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
13 messages
1997/03/28
[#2486] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2509] Re: [Req] for Struct and [?] for Class
—
1997/03/30
けいじゅ@SHLジャパンです.
[#2518] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2534] Re: [Req] for Struct and [?] for Class
—
1997/03/31
けいじゅ@SHLジャパンです.
[#2536] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2537] Re: [Req] for Struct and [?] for Class
—
1997/03/31
けいじゅ@SHLジャパンです.
[#2500] How to make const by C — MAEDA Shugo <ender@...>
前田です。
8 messages
1997/03/30
[#2504] Re: WWW library — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1997/03/30
[#2505] Re: WWW library (Re: class design) — Shin-ichiro Hara <sinara@...>
原です。
15 messages
1997/03/30
[#2514] Re: WWW library (Re: class design)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです
[#2519] Re: WWW library (Re: class design)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2541] Q: add class methods (Re: WWW library)
— gotoken@... (GOTO Kentaro)
1997/03/31
シロウトの後藤です
[#2542] Re: Q: add class methods (Re: WWW library)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[ruby-list:2465] curses library
From:
MAEDA Shugo <ender@...>
Date:
1997-03-28 01:45:47 UTC
List:
ruby-list #2465
前田です。
On Wed, 19 Mar 97 19:12:16 JST,
matz@caelum.co.jp (Yukihiro Matsumoto) wrote:
| うー,私は curses使ったことないんで,そういうのはちょっとつ
| らいですねえ.まあ,他の拡張モジュールでもあんまり使ったこと
| ないのを作ってますけど(TkとかGDとか).
|
| だれかrubyによる拡張を学ぶため,立候補してくださる方はいらっ
| しゃいませんか.松本との掛け合い連載をここ(ML)でしてくださる
| んでも構いません.
遅くなりましたが立候補させてください。
curses使ったことないので躊躇していたのですが、なんとかやってみ
ようと思います。
いずれはrubyでエディタを実装できればいいな、と思います。
ScreenというモジュールとWindowというクラスで実装しようと思います。
WindowはもちろんWINDOW構造体のラッパークラスです。
で、とりあえず
init_screen, close_screen, addch, getchなどを実装して、コンパイル
は通ったのですが、
ruby test.rbとしたら、
[BUG] Unknown operator `'
IOT trap/Abort (core dumped)
とのことでお亡くなりになりました:-(
Unknown operator とはどういうエラーメッセージなんでしょう?
# 演算子なんて定義してないのに。
一応ソースを付けときます。
あとREADME.EXTでバグらしきものを見つけましたので、パッチを付けと
きます。
前田 修吾
----Next_Part(Fri_Mar_28_10:42:23_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Description: "This file is ext/curses/curses.c"
/*
* curses.c
*/
#include "ruby.h"
#include <stdio.h>
#include <curses.h>
#define NUM2CHAR(x) (char)NUM2INT(x)
#define CHAR2NUM(x) INT2NUM((int)x)
VALUE mScreen;
VALUE cWindow;
extern VALUE mEnumerable;
struct windata {
WINDOW *window;
};
static VALUE screen_init_screen() {
initscr();
wclear(stdscr);
return Qnil;
}
static VALUE screen_close_screen() {
endwin();
return Qnil;
}
static void free_window(struct windata *winp)
{
if (winp->window) delwin(winp->window);
}
static VALUE window_s_new(VALUE class,
VALUE lines, VALUE cols,
VALUE top, VALUE left)
{
WINDOW *window;
struct windata *winp;
VALUE obj;
window = newwin(NUM2INT(lines), NUM2INT(cols), NUM2INT(top), NUM2INT(left));
obj = Data_Make_Struct(class , struct windata, 0, free_window, winp);
winp->window = window;
return obj;
}
static VALUE screen_addch(VALUE obj, VALUE ch)
{
addch(NUM2CHAR(ch));
return Qnil;
}
static VALUE screen_getch(VALUE obj)
{
return CHAR2NUM(getch());
}
static VALUE make_stdscr()
{
VALUE obj;
struct windata *winp;
obj = Data_Make_Struct(mScreen , struct windata, 0,
free_window, winp);
winp->window = stdscr;
}
Init_curses()
{
mScreen = rb_define_module("Screen");
rb_define_module_function(mScreen, "init_screen", screen_init_screen, 0);
rb_define_module_function(mScreen, "close_screen", screen_close_screen, 0);
rb_define_module_function(mScreen, "getch", screen_getch, 0);
rb_define_module_function(mScreen, "addch", screen_addch, 1);
rb_define_global_const(mScreen, "STDSCR", make_stdscr());
cWindow = rb_define_class("Window", cObject);
rb_include_module(cWindow, mEnumerable);
rb_define_singleton_method(cWindow, "new", window_s_new, 4);
}
----Next_Part(Fri_Mar_28_10:42:23_1997)--
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Content-Description: "this file is a patch to README.EXT"
*** README.EXT.orig Fri Mar 28 10:26:27 1997
--- README.EXT Fri Mar 28 10:30:47 1997
***************
*** 241,247 ****
void rb_define_method(VALUE class, char *name,
VALUE (*func)(), int argc)
! void rb_define_sigleton_method(VALUE object, char *name,
VALUE (*func)(), int argc)
--- 241,247 ----
void rb_define_method(VALUE class, char *name,
VALUE (*func)(), int argc)
! void rb_define_singleton_method(VALUE object, char *name,
VALUE (*func)(), int argc)
***************
*** 283,290 ****
という形式でも使えます.モジュール関数を定義する関数は以下の
通りです.
! void rb_define_private_method(VALUE module, char *name,
! VALUE (*func)(), int argc)
関数的メソッド(Kernelモジュールのprivaet method)を定義するた
めの関数は以下の通りです.
--- 283,290 ----
という形式でも使えます.モジュール関数を定義する関数は以下の
通りです.
! void rb_define_module_function(VALUE module, char *name,
! VALUE (*func)(), int argc)
関数的メソッド(Kernelモジュールのprivaet method)を定義するた
めの関数は以下の通りです.
----Next_Part(Fri_Mar_28_10:42:23_1997)----