トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

BugTrack-plugin/399

ページの作成や編集にはユーザ登録が必要です。

画像直リンク版 ref_image, img, a_img プラグイン

  • 投稿者: ぐうます
  • カテゴリ: 新規
  • 優先度: 普通
  • 状態: 提案
  • 日時: 2009年04月17日 12時19分21秒

 内容

ref_image プラグイン、img プラグイン、a_img プラグインが出力する画像リンク方式を直リンクに変更するプラグインパッケージです。

機能

下記の画像関連プラグインと同じ機能をもつ同名プラグインを提供します。書式等も全て同じです。

機能的に異なるのは、画像へのリンク方式が直リンクになることのみです。

本プラグインパッケージを適用することにより、上記のプラグインを既に使用している既存の Wiki ページについて、Wiki ソースを編集する手間をかけずに画像リンクを直リンクに変更することができます。

画像ファイルの添付方法

FSWiki 標準のファイル添付方法になります。

直リンク用画像ファイル

本プラグインパッケージの ref_image, img, a_img から指定された添付画像ファイルは、ページ表示処理の時点で直リンク用画像ファイルの有無がチェックされます。このとき、直リンク用画像ファイル(ファイル名のピリオド「.」を url エンコードしません)が存在しなければ、添付画像ファイルから perl 組み込み関数 link() を使用して自動的に生成されます。したがいまして、本プラグインパッケージ適用前に添付したファイルも含め、FSWiki 標準方式で添付された画像ファイルは、追加操作なく本プラグインパッケージの ref_image, img, a_img プラグインから利用できます。

なお、直リンク用画像ファイルは、対応する添付ファイルの上書き添付時と削除時に、同時に削除されます(2009-04-18 版以降の機能)。

直リンク用画像ファイル保存フォルダ

直リンク用画像ファイルの保存フォルダは、現バージョン dimg.20100606.zip(485) では添付ファイル保存フォルダ(setup.dat で指定の attach_dir 以下のフォルダ)と同じになります。よって、ブラウザからこのフォルダに直接アクセスできるように、あらかじめ FSWiki の動作するサーバを設定する必要があります(フォルダのアクセス権限、及び HTTP サーバの設定、等々)。

依存関係

  • FSWiki 標準の ref_image の処理を利用していますので、FSWiki 標準の attach プラグインパッケージがインストールされている必要があります。
  • 装飾用HTMLタグプラグインimg, a_img の処理を利用していますので、tag2 プラグインパッケージがインストールされている必要があります。

本プラグインパッケージの構成とインストール

  • 構成:添付ファイル dimg.20100606.zip(485) に含まれるファイルは、次の 8 つです。
    • plugin/dimg/Install.pm
    • plugin/dimg/Img.pm
    • plugin/dimg/AImg.pm
    • plugin/dimg/Common.pm
    • plugin/dimg/RefImage.pm
    • plugin/dimg/Files.pm
    • plugin/dimg/AttachHandler.pm
    • plugin/dimg/AttachRename.pm (2009-09-21 版以降)
  • インストール:
    1. FSWiki 標準の attach プラグインパッケージがインストールされている(管理者メニューのプラグイン設定ページの一覧表に attach が表示される)ことを確認してください。
    2. 装飾用HTMLタグプラグイン を FSWiki の動作しているサーバにインストールし、管理者メニューのプラグイン設定ページの一覧表に tag2 が表示されることを確認してください。
    3. dimg.20100606.zip(485) をダウンロードし、FSWiki の動作しているサーバに展開してください。
    4. 管理メニューのプラグイン設定ページから、dimg プラグインパッケージを有効にしてください。

適用可能な FSWiki バージョン

  • FreeStyle Wiki 3.6.3dev2 以降(FSWiki 3.6.3.1 で正常動作させるために、カレントパーサの取得に API Wiki::get_current_parser() を使用しているため)。

動作確認は、下記バージョンにて実施済みです。

制限事項

  • 最新版 dimg.20100606.zip(485) での制限事項
    • 上記の通り、直リンク用画像ファイルの生成に perl 組み込み関数 link() を使用していますので、ファイル生成方式が各サイトで使用している perl の組み込み関数 link() の実装に依存します。UNIX 系 OS の perl であればハードリンクとして生成されると思われますので、直リンク用画像を生成してもサーバディスク容量を消費しないはずですが、Windows 系の Active Perl の場合などは 他の OS 上の perl の場合などはもしかすると link() がコピーで実現されていてディスク容量を消費するかもしれません(未調査です)。
      • Windows については、XP sp3 + ActivePerl-5.10.0.1005 で確認したところ、ハードリンクになるようです。(2009-09-21 追記)
    • FreeStyle Wiki 3.6.3dev1 以前では ref_image プラグインでエラーが出ます(FreeStyle Wiki 3.6.3dev1 以前には API Wiki::get_current_parser() が無いため)。
  • 旧版での制限事項:最新版での制限事項に加え、次の制限事項があります。
    • 初版 dimg.20090417.zip では、添付ファイル削除しても、自動生成された直リンク用画像ファイルは削除されません。

今後の課題

更新履歴

2010-06-06版:dimg.20100606.zip(485)
次の BUG の修正を実施しました。
  • [BUG] Farm で画像が表示されない。
2009-09-21版:dimg.20090921.zip
次の BUG の修正を実施しました。
  • [BUG] ページリネーム時、ページコピー時にエラーが発生する。
2009-04-18版:dimg.20090418.zip
次の BUG の修正と機能追加を実施しました。
  • [BUG] 別ページ添付ファイル指定時の ref_image プラグインが動かない。
  • [BUG] 直リンク用画像ファイルが files プラグイン(添付ファイル一覧表示プラグイン)で表示される。
  • [機能追加] 添付ファイルの上書き添付時と削除時に、対応する直リンク用画像ファイルがあれば削除するようにした。
2009-04-17版:dimg.20090417.zip
初版公開

ライセンス

GPL

謝辞

本プラグイパッケージは、下記の各プラグインパッケージを参考にさせていただいて初めて作成できたものです。ありがとうございます。

  • FSWiki 標準の attach プラグインパッケージ:作者 たけぞうさんをはじめとするコミッタの皆さん
    • 参考にさせていただきました上に、本プラグイン動作にあたって利用させていただいております。
  • 装飾用HTMLタグプラグイン:作者 あきさん
    • 参考にさせていただきました上に、本プラグイン動作にあたって利用させていただいております。
  • 直リンク画像表示プラグイン:作者 KG さん
    • ファイル名のピリオド「.」をエンコードしない版 url_encode() をそのまま使用させていただいております。

また、下記の掲示板記事での議論を参考にさせていただきました。ありがとうございます。

 コメント

  • 投稿後に気付きましたが、本プラグインパッケージによって自動生成された直リンク用画像ファイルが、files プラグイン(添付ファイル一覧表示プラグイン)で表示されてしまうバグがありますね。追って修正致します。 - ぐうます (2009年04月17日 14時10分22秒)
  • BBS:885に改造版a_imgを貼り付けたものです(やっつけ仕事ですいません……)が、このプラグイン、素晴らしいですね!直リンク用画像がないとハードリンクを作っちゃうというのがいいです(attachからの移行の手間が省ける)。 - 名無しさん (2009年04月17日 18時21分48秒)
  • 質問ですが、装飾用HTMLタグプラグインのimgも画像直リンクになるのでしょうか? - 名無しさん (2009年04月17日 23時03分39秒)
  • あ、すみません。大丈夫のようですね。見落としていました。(汗 - 名無しさん (2009年04月17日 23時04分23秒)
  • 画像データを完全に消去するには、FTP接続などする必要があるのでしょうか? - 名無しさん (2009年04月17日 23時10分05秒)
  • ちょっと気になったので確認ですが、画像データがa_imgの書いてあるページ以外にある場合も有効でしょうか? 例えば画像データが「gazou」というページに一括で置かれていて、各ページには添付しないで(例えば)「〜gazou:img09041701.jpg」のように呼び出されている場合です。何故か効果が確認できなかったもので・・・ - 名無しさん (2009年04月17日 23時20分54秒)
  • 画像データ消去の件:次の版では、添付ファイルの上書き添付時と削除時に、対応する直リンク用ファイルがあれば削除するようにする予定です。これだけでは不十分な場合には、再度ご指摘下さい。 - ぐうます (2009年04月18日 11時52分57秒)
  • すみません。初版では、別ページ添付ファイル指定時の ref_image プラグインが動いていませんでした。次の版で直します。ご指摘いただきましてありがとうございました。>(2009年04月17日 23時20分54秒)の名無しさん - ぐうます (2009年04月18日 11時55分36秒)
  • BUG 修正、及び機能追加を実施した 2009-04-18 版を添付しました。 - ぐうます (2009年04月18日 14時01分43秒)
  • 「画像が別ページのときに・・・」と言ったものですが、素早い対応に感謝いたします! まったく問題ありません。あとこちらでもポカをしていて、当方は3つFSwikiサイトを運営しているのですが、そのうちの一つに導入している装飾用HTMLプラグインが最新のtag2_rev07ではなく04でした・・・。それで頭がこんがらがっていました。w 結果的に良いバージョンアップになったのですが、でもお許しください。ありがとうございます。 - 名無しさん (2009年04月18日 17時17分44秒)
  • FSWiki 3.6.3.1 で正常動作するように最新の API を使用しているため、FSWiki 3.6.3dev1 以前では ref_image プラグインでエラーが出ることが分かりました。詳細は、上記に追記した「適用可能な FSWiki バージョン」の項をご参照下さい。 - ぐうます (2009年04月19日 16時11分56秒)
  • FSWiki 3.6.3.1でこちらのプラグインを使用させてもらっているのですが、リネーム時にエラーが出るのですが、私だけでしょうか?お手数ですが、一度確認していただいてもよろしいでしょうか? - すかいらーく (2009年09月20日 08時54分27秒)
  • 宛 すかいらーくさん:ご指摘の件、バグでしたので修正版 dimg.20090921.zip を添付致しました。ご報告ありがとうございました。 - ぐうます (2009年09月21日 00時35分03秒)
  • ぐうます様、素早い対応ありがとうございます。また、ありがたく使わせていただきます。よい連休を過ごされますように^^ - すかいらーく (2009年09月21日 02時47分35秒)
  • 今頃になっての質問で恐縮で失礼します。こちらのプラグインは助かっているのですが、ひとつ困ったことがあります。当方のFSwikiサイトでは多くの子Farmがあるのですが、Farmではこのプラグインが適用されないみたいなんです。そのため画像が(同時接続数の都合かなにかで)非表示になったりして、とても困っています。もしかしたらこちらでなにかやらかした可能性もありますが、このプラグインは子Farmでも問題なく(みなさんは)動作しておりますでしょうか? - 名無しさん (2010年06月05日 21時02分35秒)
  • Farm で画像が表示されない件、バグでしたので修正版 dimg.20100606.zip(485) を添付しました。ご報告ありがとうございました。 - ぐうます (2010年06月06日 02時33分27秒)
  • すみません。修正版は、いまあるプラグインフォルダーに単純に転送するだけでよいのでしょうか? - 名無しさん (2010年06月06日 16時11分55秒)
  • おkあ、子Farmでおかしいと書いたものです。迅速な対応に感謝いたします。助かります。 - 名無しさん (2010年06月06日 16時12分46秒)
  • いまあるプラグインフォルダーに上書きし、プラグイン設定ページで本プラグインの版が 2010-06-06 になっていれば OK です。 - ぐうます (2010年06月06日 16時49分18秒)
  • ありがとうございます! - 名無しさん (2010年06月06日 21時19分13秒)
お名前: コメント:
dimg.20090417.zip dimg.20090418.zip dimg.20090920.zip dimg.20090921.zip dimg.20100606.zip

最終更新時間:2010年10月19日 18時50分35秒