daiです。

1.6.1 リリースとDebianのパッケージング作業ありがとうございます。

On Tue, Jan 11, 2011 at 12:18:43AM +0900, Kiwamu Okabe wrote:
> リリースありがとうございます。
> とりあえず、Debianのgitリポジトリにはつっこみました。uim-skkは動作しています。
> 
> http://git.debian.org/?p=collab-maint/uim.git;a=summary
> 
> uim-commonにyahooとか明らかにcommonじゃないscmファイルが入っちゃっているので、分割した後にパッケージリリースする予定です。

uim-common に新しい IM の scm ファイルを含めたのは
何も考えずにやってしまって申し訳なかったのですが...
この収録作業を行う際に scm ファイルの過不足が発生しないように、
scm ファイルの依存関係を表示するスクリプトを書いてみました。
完全に作業用なのですが一応公開します。

# 最初はシェルスクリプトで書いてましたが挫折して ruby で書き直しました。
# というか、scm ファイルの依存関係を表示するのは uim 内で完結できたり?

ruby uim-scm-view.rb /usr/src/uim-1.6.1/scm

のように引数には展開した uim ソースツリー内の scm ディレクトリを
指定して使います。基本動作としては、

1. /usr/src/uim-1.6.1/scm/*.scm をリストに格納する。
2. /usr/src/uim-1.6.1/scm/Makefile.am からモジュール名を切り出す。
3. /usr/src/uim-1.6.1/scm/[モジュール名].scm を読み込み、
   /^\s*\((?:require|require-custom) "([^"]+)"/ にマッチした
   scm ファイルを切り出して表示する。
   さらにその scm ファイルに対してこの操作を繰り返す。
4. 1. のリストと 3. の操作で得られたファイルを比較し、
   呼び出されていない scm ファイルを表示する。

となっています。
また、scm/Makefile.am から切り出せない scm ファイルは決め打ちしてあります。

ruby uim-scm-view.rb -o /usr/src/uim-1.6.1/scm

のように -o オプションをつけることで、途中の依存関係表示を行わずに
最後の呼び出されていない scm ファイルのみを表示します。

ruby uim-scm-view.rb -a composer.scm,trec.scm /usr/src/uim-1.6.1/scm

のように -a オプションと引数で scm ファイルを与えることで、
その scm ファイルを依存関係表示の対象として扱います。
複数指定する際は , で区切ります。

何かコメントなどありましたらお願いいたします。
-- 
Regards,
        dai

GPG Fingerprint = 0B29 D88E 42E6 B765 B8D8 EA50 7839 619D D439 668E

-- 
Google Groups "uim-ja" group
uim-ja@googlegroups.com
http://groups.google.com/group/uim-ja/about

Attachment: uim-scm-view.rb
Description: application/ruby

メールによる返信