** shiftnote.inc.php [#d5ff4f2d]
|RIGHT:100|LEFT:360|c
|~サマリ|ページ内の任意の場所で、そこまでの注釈を表示|
|~リビジョン|0.02|
|~対応バージョン|1.4.4-1.4.6rc|
|~投稿者|[[Cue]]|
|~投稿日|&new{2005-07-23 (土) 00:52:55};|
**概要 [#c101ba9b]
ページ内の区切りの良い場所に注釈を表示できないかと思って作ってみました。
**使い方 [#c3fde983]
以下のようなケースを想定しています。
*見出し1
注釈1を含む文章
&shiftnote();
*見出し2
注釈2を含む文章
&shiftnote();
*見出し3
注釈3を含む文章
注釈1は見出し2の直前、注釈2は見出し3の直前のshiftnoteでそれぞれ表示され、残る注釈3はページ末に従来通り表示されます。
:書式|~
&shiftnote([nohr]);
:nohr|注釈の前に付く水平線を出力しなくなります。
**ライセンス [#s0d63e24]
GPLでお願いします。
**インストール [#ca144968]
+このページの下の方にあるソースコードを[shiftnote.inc.php]という名前で保存。
+保存したファイルを plugin ディレクトリに配置
**仕様 [#g5ee249b]
+インラインプラグインなのでどの位置にも置く事ができますが、ブロックプラグインと同じように扱ってください。表示が意図しない物になる恐れがあります。((ブロックプラグインにしていないのはプラグインの呼び出しタイミングをうまくHackできないためです。))
+shiftnoteを記述した位置以前に注釈が存在しない場合は何も表示されませんが、記述した位置によってはパラグラフ扱いとなって余分な空行が出る事があります。
**コメント [#dff912d3]
-毎度怪しげなプラグインですいません。でも使い所はあると思います。 -- [[Cue]] &new{2005-07-23 (土) 00:57:37};
- 使い道ありまくります! -- [[satchmo]] &new{2006-03-08 (水) 10:56:09};
#comment
**ソースコード [#u0034abf]
添付できませんのでソースコード張ります。
<?php
// PukiWiki - Yet another WikiWikiWeb clone.
//
// shiftnote.inc.php Copyright Cue 2005
//
// 2005/07/22 v0.01
// とりあえず作る
//
// 2005/09/14 v0.02
// BugTrack2/106対策
function plugin_shiftnote_inline()
{
global $foot_explain, $note_hr;
if(empty($foot_explain))
return '';
$args = func_get_args();
$nohr = $args[0] == 'nohr';
ksort($foot_explain);
for($msg = '<div class="shiftnote">' . ($nohr ? '' : $note_hr);
!empty($foot_explain);
$msg .= array_shift($foot_explain)
);
$msg .= '</div>';
return $msg;
}
?>