** linecounter.inc.php [#qa0c94df]
|RIGHT:100|LEFT:360|c
|~サマリ|正規表現により行数を数えるプラグイン|
|~リビジョン|1.0|
|~対応バージョン|1.4.7|
|~投稿者|[[NIKI]]|
|~投稿日|&new{2007-05-18 (金) 23:11:14};|
*** 解説 [#n20204f3]
PukiWiki空間を検索して、正規表現にマッチした行数を表示するプラグインです。~
コメントなどの特定のキーワードを埋め込んでおけばデータの数を数えることができます。~
特に、trackerとの組合せで活用できるのではないかと考えています。

*** 動機 [#pfbc68ad]
PukiWiki.orgの「[[欲しいプラグイン/298]]」を読んでいて、同感したので自作してみました。

*** ダウンロード [#d93ff9df]
プラグインを以下の所からダウンロードしてください。~
|更新日|バージョン|修正点・変更点など|h
|~更新日|~バージョン|~修正点・変更点など|h
|2007/05/20|[[1.2>http://www.geocities.jp/i_niki025/linecounter.inc.php.1.2.tar.gz]]|・結果の数値を補正する機能を追加しました。|
|2007/05/19|[[1.1>http://www.geocities.jp/i_niki025/linecounter.inc.php.1.1.tar.gz]]|・pukiwiki.ini.phpのModified page list($whatsnew)を検索対象から除外するように変更しました。&br;・pukiwiki.ini.phpのIgnore list($search_non_list, $non_list)の設定を考慮するようにしました。|
|2007/05/18|[[1.0>http://www.geocities.jp/i_niki025/linecounter.inc.php.1.0.tar.gz]]|初版|

***インストール方法 [#t7e79bd8]
+ ダウンロードしたファイルを解凍してファイルを取り出してください。
+ 取り出したファイルをlinecounter.inc.phpにリネームしたください。
+ linecounter.inc.phpをpukiwiki/pluginに追加してください。

*** 使用法 [#l39b49c7]
行数を表示したい部分に
 &linecounter(ページ名,正規表現); または、 &linecounter(ページ名,正規表現,補正の数値);
 &linecounter(ページ名,正規表現[,補正の数値]);
と書き込みます。

- ページ名

 検索を行うページの親階層となるページ名を指定します。
 省略時には設置したページとなります。
 ''を指定した場合は、PukiWikiの全ページが対象となります。

- 正規表現
 検索の条件を正規表現で指定します。

-- 例
|~正規表現|~意味|h
|/^.*(ABC).*/i|文字列ABCが含まれるもの|
|/^(\/\/).*(ABC).*/i|コメント行の中に文字列ABCが含まれるもの|

 正規表現は、プラグインの内部でpreg_matchのパラメタになります。

- 補正の数値
 結果の数を調整する数値を指定します。
 -1と設定すると、行数が3行の場合、結果が2となります。

*** 使用例 [#z58ba35d]
*** 使用例1 [#z58ba35d]

 ページ毎に特定のコメント(//店舗)を埋め込んで、そのコメントの行数をカウントする例

- 使用例
 登録されている店舗は、&linecounter(,/^(\/\/).*(店舗).*/i);件です。
 登録されている店舗は、&linecounter(,/^(\/\/).*(店舗).*/i,-1);件です。
- 表示例
 登録されている店舗は、2件です。
 登録されている店舗は、1件です。
- ページの構成
|~ページ名|~説明|h
|店舗|使用例のページ|
|店舗/1| //店舗 を埋め込んでいるページ|
|店舗/2| //店舗 を埋め込んでいるページ|

*** 使用例2 [#z58ba35d]

 #tracker()で生成されるページの内容の優先順位の行をカウントする例

- 使用例
 #tracker()
 |~優先順位|~件数|h
 |緊急|RIGHT:&linecounter(,/^(-優先順位:).*(緊急).*/i);件|
 |重要|RIGHT:&linecounter(,/^(-優先順位:).*(重要).*/i);件|
 |普通|RIGHT:&linecounter(,/^(-優先順位:).*(普通).*/i);件|
 |低|RIGHT:&linecounter(,/^(-優先順位:).*(低).*/i);件|
 #tracker_list()
- 表示例

 #tracker()の表示
  :

|~優先順位|~件数|h
|緊急|RIGHT:1件|
|重要|RIGHT:2件|
|普通|RIGHT:3件|
|低|RIGHT:4件|

 #tracker_list()の表示
  :

- ページの構成
|~ページ名|~説明|h
|デバッグ|使用例のページ|
|デバッグ/1|#trackerの入力で生成されたページ|
|デバッグ/2|#trackerの入力で生成されたページ|

*** ライセンス [#md315045]
[[GNU GPL 2:http://www.opensource.jp/gpl/gpl.ja.html]]

*** コメント [#j9179b38]
- これはいいですね。 向こうにも書きましたが、あと微調整できる数字とかあったらなおいいと思います。 -- [[ラム]] &new{2007-05-19 (土) 00:44:13};
- ばっちりです ほんと至れり尽くせりで恩にきります ありがとうございました ちなみにここで使っています http://shooter.wiki.cmssquare.com/ -- [[ラム]] &new{2007-05-20 (日) 10:38:26};
- $search_non_list をglobal で呼び出してないので、設定にかかわらず常に$non_list のチェックをしてしまう気が・・・ --  &new{2010-03-07 (日) 22:56:25};

#comment
//#comment


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.049 sec.

OSDN