[前][次][番号順一覧][スレッド一覧]

ruby-reference-manual:245

From: Kazuhiro Yoshida <moriq@m...>
Date: Tue, 02 Jan 2007 23:47:18 +0900
Subject: [ruby-reference-manual:245] Re: ロスタイム突入

moriqです。

okkez wrote:
>> とりあえず Phase1 扱いということで /^# \$Id: (.*?),v/ で分割して
>> src/tk/*.rd.off として置きました。
> 
> ありがとうございます。
> しかし、アーカイブの日付を見る限り、かなり古そうな感じですね。

ですね。

> ruby 1.9.0 (2007-01-02 patchlevel 0) [x86_64-linux] #=> まだRuby/Tkのビ 
> ルドできてないorz

私はそもそもビルドせずに作業しています。;)
が、これだとうまくいかない部分があることが分かりました。
# 以下に出てくる条件分岐でひっかかる

> ruby -v を並べてみても上記のような感じなので、参考扱いになるのでしょうか。
> とりあえず、参考にしつつ作業を進めてみます。

そうですね。
本文をPhase3で使えるかなと思って入れました。


やはりcoreの部分から積み重ねないと構造が分かりにくいなと思って、
ext/tk/lib/tk.rbを読んでいますが、難しいです。

# tk.rb は =begin =end が残してあって読みにくいなあ!

tk coreはライブラリファイル名がmodule, class名に1対1対応していません。
なので、api/src/tk の中にどのようにファイルを配置するか、ある程度決めて
おきたいです。

refm/api/src/tk.rb は ruby/ext/tk/lib/tk.rb に対応すると思いますが、
この中に:

class TclTkIp
module TkComm
module TkCore
    class Tk_OBJECT_TABLE
module Tk

if (/^(8\.[1-9]|9\.|[1-9][0-9])/ =~ Tk::TCL_VERSION && !Tk::JAPANIZED_TK)
  class TclTkIp
  module TclTkLib
  module Tk::Encoding
  #...
else
  # dummy methods
  #...
  # ちゃんとRuby/Tk環境を整えないとriがこっちを読んでしまう!
  # なので私の環境では TclTkIp の説明が dummy methods ...
end

module TkBindCore
module TkTreatFont
module TkConfigMethod
class TkObject<TkKernel

このように、たくさんmodule, classがあるので、

tk/TclTkIp
tk/TkComm
tk/TkCore
tk/Tk
tk/TkBindCore
tk/TkTreatFont

このようにmodule, class名に対応するファイルを配置して、tk.rb から
#@include するようになるかと思います。

んで、できれば ASSIGN エントリもこのような形で追加したほうがタスク管理し
やすいのでないかと思います。

> ちなみに bc-classes tk の出力はこんな感じでかなり入り乱れてます。
> # 何か見た事のないエラーも混じってますし。
> $ bc-classes tk
> -e:30:in `to_s': can't modify frozen object (TypeError)

あちこちでfreezeを使っているみたいなので、その影響でしょうか。

--
ML: ruby-reference-manual@m...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

       235 2007-01-02 00:09 [aamine@l...         ] ロスタイム突入                          
       236 2007-01-02 01:10 ┣[moriq@m...          ]                                       
       237 2007-01-02 04:10 ┃┣[moriq@m...          ] tk tkextlib (Re: ロスタイム突入)    
       239 2007-01-02 06:20 ┃┣[okkez000@g...       ]                                     
       241 2007-01-02 14:47 ┃┗[moriq@m...          ]                                     
       242 2007-01-02 14:49 ┃ ┣[moriq@m...          ]                                   
       243 2007-01-02 15:14 ┃ ┗[okkez000@g...       ]                                   
->     245 2007-01-02 15:47 ┃  ┗[moriq@m...          ]                                 
       246 2007-01-02 16:06 ┃   ┣[moriq@m...          ]                               
       247 2007-01-02 16:10 ┃   ┗[okkez000@g...       ]                               
       249 2007-01-02 16:53 ┃    ┗[moriq@m...          ]                             
       250 2007-01-02 17:25 ┃     ┣[moriq@m...          ]                           
       254 2007-01-03 02:31 ┃     ┗[aamine@l...         ]                           
       238 2007-01-02 06:15 ┗[okkez000@g...       ]