Comment:Old/Plugin/contents2_1.inc.php

Top > Note > Old > Plugin > contents2_1.inc.php
  • もはや更新する気はありません。 -- sonots 2006-02-06 (Mon) 02:54:05

コメント

バグ、リクエストなどがあったら教えてください。リクエストは詳細な仕様も書いてくれたりするとうれしいです。

  • include ページタイトルへのジャンプがうまくいきません。#include プラグインがアンカーをつけてくれないので。とりあえず #content_2 のようにリンクを作っているので、#include のタイトルにそのようなアンカーを作る改造をすれば利用できます。 -- sonots 2005-02-07 (月) 15:11:12
  • アンケート。include=true のときは include ページ名タイトルがレベル1になって、見出しはレベル2以降になります。include=false のときはページタイトルがでてくることはないので、見出しがレベル1以降ということにしています。なので、depth オプション指定時に include を切り替えるたびに値をかえないといけなくなっています。どちらがよいでしょうか?
    Selection Vote
    現状(include=true 時は見出しレベルが2以降、include=false 時は見出しレベルが1以降) 1  
    include=true 時は見出しレベルが2以降、include=false でも見出しはレベル2以降 0  
    include=true 時は見出しレベルが2以降
    include=false の時は見出しのリスト表示レベルは1以降、でも depth では2以降(include=true時と同じになる)
    0  
    include=true の時は見出しのリスト表示レベルが2以降、でも、depth では1以降
    include=false 時は見出しレベルが1以降(アンケート3とほぼ同じ。depth が -1)
    1  
    compact=false のときの表示でレベル1がない場合がでてくるのが変かと思ったのです。compact=true にしておけばどちらでも結局詰まって同じように見えます。よって、常に compact=true (デフォルトです)の人には include=false でも見出しのレベルが変わらないのほうがうれしいかもしれません。しかし、compact=false を使いたくなったときに表示がやっぱり変なので。しかし・・・。 あ、もう一つ選択の余地がありました。depth オプションでの見出しの指定は常に2以降、つまり include オプションによらないが、表示は現状のように include オプションによって変わる。選択肢4になりました。ご協力ありがとうございました。-- sonots 2005-02-08 (火) 07:03:55
  • 試してみました。デフォルトでオンになっているfromhere機能が地味に便利ですね。私の場合 *見出しの後の行で #contents を使うことが多く、最初の *見出しがリストされるのは意味がないなぁと思っていたので重宝しそうです。
    includeオプションの説明ですがちょっと分かりにくいと思ったので、勝手に補足してみました。 [smile] -- sagen? 2005-02-08 (火) 10:31:45
  • あ、それから何かリストとリンク先がずれるなぁと思って、プラグインを眺めて今気づいたのですが、
    55: //見出しアンカーの開始番号
    56: define('PLUGIN_CONTENTS2_1_ANCHOR_ORIGIN',0);
    57: define('PLUGIN_CONTENTS2_1_PAGE_ANCHOR_ORIGIN',1);
    実際に使われているのは「PLUGIN_CONTENTS2_1_ANCHOR_ORIGIN」で「PLUGIN_CONTENTS2_1_PAGE_ANCHOR_ORIGIN」は使われていませんよね。57行目は削除して56行目の0を1にした方がいいのではないでしょうか。 -- sagen? 2005-02-08 (火) 11:02:08
  • すいません。使用例のほうの include の説明が間違ってました。というわけで、include オプションの説明の修正はちょっと意味が違っちゃっていたのでまた修正しました。
    PLUGIN_CONTENTS2_1_PAGE_ANCHOR_ORIGIN は contents_1_0 などの 1 のほうで PLUGIN_CONTENTS2_1_ANCHOR_ORIGIN は 0 のほうを意味します。が、設定しておいて使いわすれていました。じかに = 1 とか書いちゃってました。ずれるのはそこではなくて、depth オプションなどで削ったときに +1 しそこなっちゃっているみたいです。修正しました。ありがとうございます。-- sonots 2005-02-08 (火) 16:46:01
  • ああ、つまりinclude=true(デフォルト)では、ページをincludeしていようがいまいが、depthオプションで見出しはレベル2以降になる、ということですか。勘違いしていました。 [worried] それならいっそのこと、includeで取り込むページはレベル0として扱った方が、見出しのレベルがずれないので良いような気がします。-- sagen? 2005-02-08 (火) 19:36:13
    • レベル0になってしまうと、<ul> が0個という意味になってしまいます。depth で使用するレベルとリスト表示で使用するレベルは同じですので。そこで、depth で使用するレベルとリスト表示で使用するレベルを分けて考えたのがアンケート3です。おそらく意図しているのは新たに追加のアンケート4でいいですよね?なんだかぐちゃぐちゃになってきました [worried]-- sonots 2005-02-08 (火) 21:25:28
  • v1.03をそのまま入れてみましたが、やはりリンクがずれます(depthオプションは未使用)。htmlを保存して見てみると、どうやら#contents2_1の前にある見出しにもアンカーが埋め込まれているのに、リストの方はそれを考慮せずにリンクを生成しているのでずれが生じるようです。 -- sagen? 2005-02-08 (火) 19:36:13
    • 申し訳ない。一番利用頻度の高い使用方法がテスト漏れしていたなんて不覚です。ありがとうございました。 -- sonots 2005-02-08 (火) 21:25:28
  • include されるページ内に #contents2_1 がある場合その #contents2_1 のアンカーリンクの番号がいまのところうまくいきません(また content_1_0 から始まる)。#contents のほうは本体組み込みなので include されているということがわかって処理、もしくはわからなくても処理できているのかもしれません。なにかその判断に利用できる変数があるといいんですが。後で探しますが、ご存知の方いたらぜひ [smile] (convert_html の static $contents_id が global だったら終了みたいですね・・・)-- sonots 2005-02-09 (水) 06:50:52
  • v1.05にしてみましたが、まだずれます。 [worried] とりあえず*見出しの直後に#contetns2_1を使っているので、define('PLUGIN_CONTENTS2_1_ANCHOR_ORIGIN',1); にしておいて事なきを得ていますが、これだと別の場所に書いた時はずれるんですよね……うーむ。#contents2_1(fromhere)が見つかった時点での$anchorを記録しておいて、279行目のリスト作成時にその値から始めないと駄目なような気がします。……勘違いだったらすみません。 -- sagen? 2005-02-09 (水) 11:01:17
  • あぁ orz。 ver1.04 で修正して安心してしまって ver1.05 でいじっていたら再発しちゃったみたいです。今度こそ大丈夫(なはず)。 $anchor の記録というかカウント(++$anchor)する前に抜けちゃってるってかんじですね。-- sonots 2005-02-09 (水) 15:59:26
  • v1.07にしてアンカーとリンクが正しい対応関係になっているのを確認しました。 [smile] お疲れ様でした。 -- sagen? 2005-02-09 (水) 23:07:43
  • やはり contents のプラグイン化は無理があるっぽいです・・・ orz。convert_html の改造、また改造できたとしても・・・既知の問題点 -- sonots 2005-02-11 (金) 17:49:35
  • リクエストです。しかし、できればという感じです。contentプラグインは基本的に目次を縦方向にならべますが、横方向にならべるようにしたらまた別の便利さがでてくると思います。たとえば、レベル1のタイトルがすべて、「目次→|AA|B|CC|DDDD|E|」というように並んでくれて、各項目にリンクが貼られていたら便利です。 -- よう? 2005-02-12 (土) 09:46:00
    • レベル2、3も許可するとどういう挙動になるといいですか?include ページも許可するとどういう挙動になるといいですか?一番簡単にできそうと思われる方法は hierarchy=false の表示に対してスタイルシートで inline 化して横並びにさせることです。そして depth=1 となればお望みの挙動にはなると思います。デフォルトでは depth 制限しないので、レベル2、3, include ページに対してもレベルに区別なく出たもの順で全部横並びになるでしょう。これで OK ですかね?-- sonots 2005-02-12 (土) 12:14:56
      • 具体的にどのように作業をすればよろしいのでしょうか。是非、教えてください。レベル2、レベル3についての挙動はあんまり考えていないです。 -- よう? 2005-02-14 (月) 09:36:28
    • いや、仕様が決まれば作業は私がやります。ではレベル2、レベル3については上の記述のとおりでいいですかね。 -- sonots 2005-02-14 (月) 10:36:22
      • レベル2とレベル3について上の記述のとおりでいいと思います。楽しみにまってまーす。 -- よう? 2005-02-14 (月) 11:05:03
    • あ、これはインラインプラグインとして使いたいですか? &contents2_1 のような。行中にでも書けるという感じです。そうなると ul タグじゃ W3C 的にうまくないんですよね。また、インラインプラグインとしてよびだすときは、この表示形式だけ許可、現状のリスト表示はだめ、みたいな処理もいれないといけないかも。まぁこの辺は考えずにインラインとして使いたいか、別に現状的にブロックとして使えればいいのかだけ要望をください。 -- sonots 2005-02-14 (月) 11:22:44
    • &ref(): File not found: "contents2_1.inc.php.10.alpha" at page "Note/Old/Plugin/contents2_1.inc.php"; アルファ版です。例のリストタグを inline 化して横並びにさせる方法です。イメージ的にはこれでいいでしょうか?あとは上のインラインプラグイン関係をやるかやらないかですね。display=inline とオプションをつけてください。区切り文字はファイル中で設定できます。現状デフォルトの区切り文字は [lol][111] のようになっています。最初は [lol|111] としようとしたのですが、1, l, | が見分けづらいなぁと思いまして。 hierarchy=true|false は display オプションにとりこまれて、display=hierarchy|flat|inline という指定方法になっています。見出しレベル1にしぼる場合は depth でしぼってください。depth で指定する数字が気に入らなければ上のアンケートに投票してください。 -- sonots 2005-02-14 (月) 13:19:49
      • 早速試してみました。対応、ありがとうございます。なかなかいい具合です。欲をだすと、インラインプラグインとしても使ってみたいです。けど、対応できたらということです。本当にどうもありがとうございました。 -- よう? 2005-02-16 (水) 22:53:06
  • v1.10 になって仕様が結構変わってしまったので注意してください。 -- sonots 2005-02-19 (土) 12:12:44
  • 既知の問題点の解決のめどが立つまで*1、開発を中止します。試みは失敗しましたorz -- sonots 2005-02-21 (月) 16:55:18
  • 固定アンカーで解決したことにします。開発を再開します。 -- sonots 2005-02-26 (土) 15:29:42


URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White

*1 PukiWikiの設計上、解決できるとしてもきっとめんどくさすぎる