Hatena::Groupatokdirect

高見知英のATOKダイレクトプラグイン日記

 | 

2009-04-21

ATOKダイレクトプラグインでは「同一ディレクトリのファイルを読む」ということはできない?(2009/04/21時点)

| 22:43

現在作成中のプラグインを作成していて気づいたことなのですが、ATOKダイレクトプラグインインストール時に「スクリプトと一緒にATOKの実行用ディレクトリにコピーするファイル」を指定できない(はず)なので、あらかじめ作ったテンプレートファイルを読み込んで処理するということは出来ません。

そのため、ATOK2009で追加されたcomment_xhtmlをテンプレートを使ってERBでさくさく ということは出来ないのです。

個人的にはなんとしても実行コード内にHTMLを混ぜたくなかったので分割方法を探しましたが、とりあえず以下の方法があるらしい。

つまり、ファイルの__END__の下にErbのテンプレートを書いてしまえばよい ということになります(ちなみに、上記ページのコメントでわたしが指摘しているように、File.readの引数は__FILE__にしておくと良いです)。

ただこの方法では、読み込めるファイルは一つ(comment_xhtmlを使う場合はXHTMLテンプレートで埋まってしまうでしょう・・・)というのと、他の非標準Rubyライブラリを持ってきて使うということが出来ないので、根本的な解決ではありませんね。

まあ、セットアップツールを使わない という手もなくはないですが。


出来ればセットアップツール側で何とか出来るとうれしいのですが。何か良い方法はないのでしょうか。

ATOKDirectATOKDirect2009/04/22 09:58よろしくお願いいたします!

kujirahandkujirahand2009/04/22 18:27ATOKプラグインでテンプレートなど使いたい場合は、初回実行時に、そのユーザーのマイドキュメントやAppDataフォルダなどに、テンプレートファイルを展開しておく方法を使えば可能と思います。(アンインストールの時にゴミが残るのがいやならば、テンポラリフォルダの適当なフォルダを素材置き場とすれば、一定期間経過後によきに削除してくれます。)

ATOKDirectATOKDirect2009/04/22 20:23id:just_hirabayaがアップした「フォルダリスト」のプラグインで、プラグイン以外のファイルをセットアップに含める方法を紹介しています。ご確認ください。
http://atokdirect.g.hatena.ne.jp/just_hirabaya/20090422

t_daichot_daicho2009/04/23 00:41> 同一ディレクトリのファイル
僕は電卓プラグインでrbファイルを2つ転送していますが、ちゃんと使えていますよ。
requireなどするなら、ATOKダイレクトのディレクトリがロードパスに含まれてないから絶対パス指定する必要がありましたが。

TakamiChieTakamiChie2009/04/26 19:06皆様コメントありがとうございます。確認しました。
サブディレクトリにファイルを配置する方針で行こうと思います。

 |