新井です。

ライブラリのパッチをいくつか。

(その1) 先に、以下のパッチを報告します。既に ruby-listで誰か
        が報告してたものですが、 cvs diff とったら出てきたの
        で。

Index: sample/mine.rb
===================================================================
RCS file: /home/cvs/ruby/sample/mine.rb,v
retrieving revision 1.3
diff -u -p -u -r1.3 mine.rb
--- sample/mine.rb	1999/10/12 04:53:36	1.3
+++ sample/mine.rb	1999/11/29 14:58:28
@@ -81,7 +81,7 @@ class Board
     elsif y < 0 then 0
     elsif y >= @hi then 0
     else
-      @data[x*@wi+y]
+      @data[y*@wi+x]
     end
   end
   def count(x,y)
===================================================================

以下、本題。Ruby/Tkに関するパッチです。

以下のバージョンでのみ確認しました。

$ ruby -v -rtk -e 'p Tk::TCL_VERSION, Tk::TK_VERSION, Tk::JAPANIZED_TK'
ruby 1.4.3 (1999-11-24) [i586-linux]
"8.0"
"8.0"
true

(その2) entry ウィジェットにscrollcommandオプションはありま
        せん。たぶん、xscrollcommandですよね?

$ ruby -rtk -e 'TkEntry.new.scrollcommand proc {}'
/usr/local/lib/ruby/1.4/tk.rb:510:in `_invoke': unknown option "-scrollcommand" (RuntimeError)
        from /usr/local/lib/ruby/1.4/tk.rb:510:in `tk_call'
        from /usr/local/lib/ruby/1.4/tk.rb:1611:in `configure'
        from /usr/local/lib/ruby/1.4/tkentry.rb:19:in `scrollcommand'
        from /tmp/rba05996:1

(その3) entry ウィジェットのコマンド selection clear に引数
        はありませんでした。

Index: ext/tk/lib/tkentry.rb
===================================================================
RCS file: /home/cvs/ruby/ext/tk/lib/tkentry.rb,v
retrieving revision 1.3
diff -u -p -u -r1.3 tkentry.rb
--- ext/tk/lib/tkentry.rb	1999/08/24 08:21:56	1.3
+++ ext/tk/lib/tkentry.rb	1999/11/29 14:58:26
@@ -15,8 +15,8 @@ class TkEntry<TkLabel
   def create_self
     tk_call 'entry', @path
   end
-  def scrollcommand(cmd)
-    configure 'scrollcommand', cmd
+  def xscrollcommand(cmd=Proc.new)
+    configure_cmd 'xscrollcommand', cmd
   end
 
   def delete(s, e=None)
@@ -45,7 +45,7 @@ class TkEntry<TkLabel
     tk_send 'selection', 'adjust', index
   end
   def selection_clear
-    tk_send 'selection', 'clear', 'end'
+    tk_send 'selection', 'clear'
   end
   def selection_from(index)
     tk_send 'selection', 'from', index
===================================================================

で、ちょっと質問です。上記バグを確認しようと思っていろいろやっ
てたらよくわからない点がでてきたので。

$ head -999 hoge*
==> hoge.rb <==
autoload :Hoge, "hoge2.rb"
require "hoge2.rb"

class Hoge
  def hoge
  end
end
p Hoge.instance_methods

==> hoge2.rb <==
class Hoge
  def hoge2
  end
end

上記スクリプト(hoge.rbの方)を実行すると

$ ruby -v hoge.rb 
ruby 1.4.3 (1999-11-24) [i586-linux]
hoge.rb:7: warning: already initialized constant Hoge
["hoge"]

となります。["hoge", "hoge2"]を期待してたわけですが・・・

--
新井康司 (Koji Arai)