Top/PukiWiki/1.4/ちょっと便利に/同一内容の注釈を一つにまとめる

同一内容の注釈を一つにまとめる

タイトル通りです。
副作用として注釈の中の注釈も同じ内容なら本文から直リンクされます。
インクルードしたページ内に同じ注釈があった場合、元ページ依存の情報を含ませるインライン要素があるときはまとめません。

差分*1

--- make_link.php	Sat Feb 05 03:40:14 2005
+++ make_link.test.php	Fri Jul 01 06:44:54 2005
@@ -296,6 +296,7 @@
 	{
 		global $foot_explain, $script, $vars;
 		static $note_id = 0;
+		static $ids = array();
 
 		list(, $body) = $this->splice($arr);
 
@@ -303,12 +304,17 @@
 		$note = make_link($body);
 		$page = isset($vars['page']) ? rawurlencode($vars['page']) : '';
 
+		if(isset($ids[$note]) && isset($foot_explain[$ids[$note]])){
+			$note_id--;
+			$id = $ids[$note];
+		}else{
+			$ids[$note] = $id;
 		// Footnote
 		$foot_explain[$id] = '<a id="notefoot_' . $id . '" href="' .
 			$script . '?' . $page . '#notetext_' . $id .
 			'" class="note_super">*' . $id . '</a>' . "\n" .
 			'<span class="small">' . $note . '</span><br />';
-
+		}
 		// A hyperlink, content-body to footnote
 		$name = '<a id="notetext_' . $id . '" href="' . $script . '?' . $page .
 			'#notefoot_' . $id . '" class="note_super" title="' .

コメント

  • ここって部外者がページ作ってもよかったのか不安だったりします。まずかったら消してください。 -- Cue 2005-06-29 (水) 23:12:10
    • こんにちは :) 特に制限はありませんよ~ -- henoheno 2005-07-02 (土) 22:46:34
    • わざわざありがとうございます。かなり不安だったので助かりました。 -- Cue 2005-07-03 (日) 04:01:01
  • これって注釈が多くなると同一内容の注釈を検索する処理が結構ボトルネックになる気が・・・ -- 2005-06-30 (木) 11:47:50
    • 検索しないようにするには、同一内容であることを明示的に指定するようにした方がいいのかもしれません。ただインクルードした時の処理が面倒になるんですが。 -- Cue 2005-06-30 (木) 18:34:00
      検索がいる(今の書式仕様です。3つの注釈が1つに纏ります。検索無しの方法には変えました)
        こんな((注釈))文章((注釈))があったとします((注釈))
      明示的に指定(この書式は使えません。考えがまとまらないのに書いてしまいました)
        こんな((注釈))文章((*1))があったとします((*1))
    • あ、もしかしてforeach使わない方が…という意味だったのかも(汗 -- Cue 2005-06-30 (木) 19:51:42
    • 指定しなくても検索使わないでいけました…。ということで差し替えます。 -- Cue 2005-07-01 (金) 06:59:22
    • 番号管理だと文章の編集していく中でズレが発生しませんか? 手前味噌ですが、official:自作プラグイン/note.inc.php では同一内容の明示的な指定に番号ではなくキーワードを宣言させて処理しています。参考になれば幸いです。 -- にぶんのに 2005-07-03 (日) 02:53:20
    • note.inc.php拝見しました。車輪の再発明になってしまったようですね(にぶんのにさんのよりずっと低機能ですし)。それから、番号管理の書式は使えないのに誤解を生む書き方だったので修正しました。 -- Cue 2005-07-03 (日) 04:27:00
    • あぶない、私も同じものを作るところでした (^^;; -- teanan 2005-07-03 (日) 08:57:39
  • official:自作プラグイン/shiftnote.inc.php絡みで修正。
    より高機能な注釈は、にぶんのにさんのofficial:自作プラグイン/note.inc.phpをお使いください。 -- Cue 2005-07-25 (月) 17:16:52


*1 1.4.5_1ベース

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-01-20 (火) 15:49:35
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.209 sec.

OSDN