Serene Bach on the Prairie

大草原の小さな家。


ENTRIES

プラグイン妄想にマジレスしてみるテスト

たくさんのプラグインのご利用、ありがとうございます。お役に立てていることを実感できるのが何よりのご褒美で。

で、その後の展開として書かれている妄想がとても興味深かったので、ちょっとマジレスしてみようかな~なんて思います。開発者だって、どうやって実現しようかなぁ~なんて妄想するのは好きなんです(笑)以下、いきなりレスに入りますので、ご興味のある方はトルキーさんのエントリを読んでからどうぞ。

1)プラグイン並べ替えプラグイン

確かに、滅多に使わないメニューが上にあると面倒ですよね。似たような理由でだんだん管理メニュー付きのプラグインの開発モチベーション下がってたりします。プラグインを入れるたびにメニューが増えるとちょっと鬱陶しい…。

が、これに関しては残念ながらプラグインでの対応は不可能です。というのも、プラグインがロードされてから管理画面が出るまでの間にプラグイン関数が実行されるタイミングがないんです。まぁ、プラグインの面倒を見るプラグインというのも何だか気持ち悪いので、本体に対応してもらうのが筋かなぁという気もします。

2)Pollプラグイン

最初ちょっとどんな機能なのかよく分からなかったんですが、記事にこの記事が役に立ちましたか?みたいな投票ボタンをつけるプラグインってことでいいのかな? これは今の機能で十分実装可能ですね。ただ、こういうものはアクセス解析と違って取得するデータ(選択肢とか)がころころ変わったりするので、データの登録/削除/再設定とかを管理する機能をどう実装すればいいのかってところが悩ましいです。

3)リンク元置き換えプラグイン

これは…うーん。機能的には可能で、拙作の Yet Another Access Log プラグイン(以下 YAAL)では似たようなことをやってるんですが、置き換え対象のデータが増えてくるとメモリを食いまくるという問題があるんです。ロリポップ!上で動作させていた時は、YAAL で「詳細表示」を見られない(500 エラーで吹っ飛ぶ)ことがよくありました。同じデータでも、メモリ使用量の制限がない環境ではじっくり待っていれば出るんですが…。YAAL の機能は単なる置き換えだけではないので、本当の原因は別にあるのかもしれませんが、私の技術力ではこれで限界(X_X)

全然関係ないですが、作る方としては、欲しいプラグインのイメージは妙に具体的な方が有り難かったりします。例えば機能についてどっちもできるけど、どっちを実装するのがいいかなあ?と悩む時が一番開発の手が止まりやすい。

4)HTML-lintプラグイン

実はこれ、唯一何していいのか分からなかったんですよね…。とはいえ妄想に他人が分かるも分からんもあるかっちゅー話もありますので、こっちも妄想で対応(笑)

まず、ページを表示する度に lint かけて、OK だったら大変よくできましたを表示…というのは lint サーバへの DoS 攻撃と紙一重なので(汗)、テンプレートや記事の保存時に lint を呼び出すとか? HTML lint のスクリプトコード(自前設置用のやつ)を見たことないので分からないですが、CGI から叩く口はあるんだろうか…。XML-RPC API があったりなんかするとかなり実現に近づきますね。…あ、自前で HTML 解析するって解はパスってことで。正直、相当つらいです。

ってことで、最後の方は謎の呪文みたいなことになってますけど、私の妄想ということでご勘弁を。


コメント(日付順)▼コメントフォームへ

トルキー(2005/10/04 01:31)

おお、マジレスが…!
わーい、ふうこさんに反応していただけたというのがとても嬉しいです!
2番なんかはcookieやIPで複数投票の制限をしなきゃなぁ、とか、リンク元の表示はふうこさんのプラグインの中身を書き換えれば大丈夫かなぁ…とかいろいろ考えてました。考えるだけれですけれども(笑)。

4番はSerene Bachの表層はXHTML1.0で書かれている…という印象なので、これをXHTML1.1も選べるようにし、lint的に正しい記述にすることはできないかなと思いまして。lintで100点取ったからといって決して良いものだとは限らないのですけれども、一回くらいSerene Bachを使用して100点を取ってみたいなぁという夢(表現過剰)が。

黙って中身を覗いてtarget属性やら何やらを削除してしまえばいいのですが、何せ無知なためサーバエラーが出てしまったら、と未だ怖くて出来ていません;;

ふうこ(2005/10/05 11:57)

☆ トルキー さま

こんにちは。楽しいネタをありがとうございます(笑)
4番目はテンプレートが吐き出すマークアップから deprecated なものを削除する、というご希望だったんですね。
target 属性くらいじゃないか?(だったら多分今ひとつもないだろう)と思っていたら意外とあれこれありますね。ページ表示で記事の先頭に振られている a 要素とか、trackback auto discovery とか、「続き」を使わなかった時の div 要素とか…
trackback auto discovery 以外は何とかなりそうな気もしますが、XHTML 1.1 で書いて lint で100点取れたら MSIE で見る時に表示じゃなくてダウンロードになっちゃうのはいいんでしょうか(^^;

orzmaru(2005/10/07 16:57)

うーん、面白いですね(笑

lintは、LWP使ってエージェントを飛ばしてみるとかでできないんでしょかね?
この辺の技術についてはまったく無知で聞いてますけれども、いかがでしょ。

ふうこ(2005/10/07 20:55)

☆ orzmaru さま

>lintは、LWP使って
はい、lint 自体 CGI なのだから普通に POST すればいいということに後で気づきました(汗)
が、アレも重いんで、CGI の動作時間制限が厳しいサーバだとたいへんでしょね(汗汗)

トルキー(2005/10/07 23:21)

げ、WinIEはXHTML1.1でパーフェクトだとダウンロードになるのですか…(無知)。

プラグインで出来ること、出来ないことの区別が全くついていないので、ふうこさんからご覧になると明らかにおかしな点あるだろうなぁと。
Yet Another Access Log プラグインの詳細表示、ロリポだと厳しいのですねぇ。
非常に快適に見られています♪

ふうこ(2005/10/10 08:40)

☆ トルキー さま

lint にかけると XHTML 1.1 の Content-Type は application/xhtml+xml だよ、というエラーが出ると思うんですが、IE はこれに対応してないんですよ。
対応していない Content-Type は表示しないでダウンロードしちゃうので。
この辺いい参考リンクがないかな、と思って探してみたけど、この辺までくると全体的にモヒカン族のテリトリーになってくるので(汗)引っ張った挙げ句に省略です(_ _)

話は変わって、要望を出される側は、作る側がおかしいと思うかどうかなんて全く気にされなくてもいいと思いますよ。
まずはできるかどうか考えてみることに価値があると思いますしね(^^)
アイデアをもらえるということはそれだけで貴重です。

葉子(2005/10/28 21:33)

こんばんは。はじめまして。
現在、Serene Bachを使ってのblog構築の真っ最中な者です。
カスタマイズの自由度が高くて素晴らしいですし
各種プラグインもいろいろ導入させていただいて、
ふうこさま、takkyunさまに感謝感謝です^^

妄想、楽しいですね(笑)
どうも私の場合はイレギュラーなことばかりをやりたがる癖があるようで
なのに技術と知識が追いつかないものだから妄想は膨らむばかりで・・・
なのでちょっと便乗して、私の妄想もお披露目させていただいてよろしいでしょうか?^^;

★アーカイブ表示件数指定プラグイン
現在はアーカイブはページ表示をするかしないかの選択があり
するとしたら本記事のページ件数と連動することになっているわけですが
本記事とは別の件数を指定できたら便利だよなあと思っています。

今、作りかけのblogでは、本記事では1ページ1件だけ、
そしてアーカイブは目次ページ風にしたいと思い
記事タイトルと日付・コメント数・TB数だけのテンプレを作り
ページ表示を使用せずと設定しています。
おかげでカテゴリーによっては100件近い記事リストがずら~~~~っと…

あまり長すぎるのも見ずらいし
かといってページ表示を使用したら1ページにひとつだけの目次…
それって全然目次じゃないし・汗

というわけで、上記のような妄想は膨らむのでした♪
まあ、こんなヒトもいますよ程度に読み流していただけたらと思います。
長々と勝手な事を書きましてすみませんでしたm(_ _)m

コメントする

コメントフォーム
  • ブラウザの JavaScript 機能が有効でないとコメントできません。
  • URI は自動リンクされます。
  • HTML タグは使えません(実体参照化されます)。
  • 初めてコメントされる場合は、一度このサイトについてに目を通してください。

トラックバック

この記事のトラックバックURI
http://prairie.sweet-smile.org/tb.cgi/1

トラックバックはありません。