[Fswiki-dev] Re: 4.0 内部構造への要望

Back to archive index

Naoki Takezoe takez****@gmail*****
2005年 11月 12日 (土) 15:45:10 JST


竹添です。

05/11/12 に あき<attin****@kk*****> さんは書きました:
> あきです。
>
> > > 竹添です。
> > >
> > > > 「4.0ではこうして欲しいなぁ」、又は「こうなるのかなぁ」と思っている点を
> > > > まとめてました。
> > > > 「もちろん」という部分は無視してもらって構いません。
> > > > それ以外で、『気付き』になるような部分があれば幸いです。
> > > >
> > > > ・テンプレートを扱う部分をプラグイン等での拡張できるよう外に出す。
> > >
> > > これは悩ましいところです。
> > > できれば「こんな感じ」という実装を出していただけるといいんですが。
> > > KGさんのパッチが要望を満たしてますか?
> >
> > すみません。まだ使っていないので分からないのですが、おそらく満たしている
> > と思います。
>
> 確認してみましたが、どうもこれだけでは目的は満たせないようです。
> どんな要望がありそうなのか具体的に書いた方が良さそうですね。
> あくまで例ではありますが…
>
> 1.例えば、タイトルの表示を
>
>   現在  :ページ名 - サイト名
>   改良案:サイト名:ページ名
>
>   のようにしてみたいとか…
>
> 2.トップページの時だけページ名を表示させない(下記参照)とか…
>
>   FrontPageをWebサイトのIndexページらしく変更
>   http://fswiki.poi.jp/wiki.cgi?page=BBS%2D%A5%B5%A5%DD%A1%BC%A5%C8%B7%C7%BC%A8%C8%C4%2F266
>
> 3.設定画面を拡張して、サブタイトルも付けられるようにしたい、とか…。
>
> つまり、$templateに詰め込む部分も「print $output」で実際に出力する部分も
> wiki.cgiの中で記述されクローズされてしまうと、外部からは手も足も出せない、
> ということです。

テンプレートのカスタマイズで対応できるよう変数を増やすとか、そういったレベル
の対応で要望は満たせるのではないでしょうか?

また、KGさんのパッチに関しても感じたことなのですが、サイトテンプレートに対して
プラグインが独自の変数を設定可能にすることは、サイトテンプレートが特定のプラ
グインに依存してしまう可能性があるということになります。4.0ではプラグイン同士の
依存性をフレームワーク側で管理するような仕組みを考えていますが、もしサイト
テンプレートが特定のプラグインに依存するのであればサイトテンプレートもプラグ
イン化して依存性の宣言を行うような形にすべきですね。

で、見た目のカスタマイズという要件に対してそこまでするのはさすがにオーバー
スペックではないかと思うのです。

> もしやるとしたら、lib/HTML/Template.pのoutputをオーバーライドでしょうか?
> でも、それはさすがに心苦しいですよね?

それはあり得ないですね(笑)

> 苦肉の策で↓こんな凄いことをやっているプラグインもありますが…。(笑)
>
>   Wikiページを印刷モード風に表示するプラグイン
>   http://fswiki.poi.jp/wiki.cgi?page=BugTrack%2Dplugin%2F103
>   のPrintmodeHandler.pmのdo_action()部分
>
> 決して、ニーズの無さそうな要望ではありませんよね?
> なのにスマートな実装方法がありません。

「ニーズがなさそうな要望ではない」というレベルであまりオーバースペックな実装
を行うのも考えものです。確かに柔軟性と拡張性は重視していますが、なんでも
かんでもできるようにしておく必要はないと思っています。

> 出力に関しては、出力する一歩手前で、プラグイン側で操作できるような仕組み
> にしておくのが理想かと思います。
> できれば、$template->paramをセットした後、「$output = $template->output」
> を実行するまでの間に、操作できる過程があると嬉しいのですが…。

いまいち何をしたいのかが実装レベルで伝わってこないのですが、セットされたパラ
メータをいじれるようにする感じでしょうか?それともテンプレートをプラグインから
いじったり、outputされるHTMLを直接プラグインでいじるような感じでしょうか?

--
Naoki Takezoe <takez****@gmail*****>



Fswiki-dev メーリングリストの案内
Back to archive index