多機能ページ一覧表示プラグイン。

概要

様々な条件で、ページをリストアップするプラグイン。独自の構文を使って柔軟な指定が可能。

使い方

#listing(ページ集合構文,出力方法1,出力方法2...)

ダウンロード

  • PukiWiki1.4.5にて動作確認(1.4.xでも動くでしょう)
  • listing.3 以前のバージョンは他のプラグインを動かなくするのでこちらを使って下さい
  • ベータ版:&ref(): File not found: "listing.4.1.zip" at page "listing";
    • 出力方法の追加:title,headline,headlinea,bloglist
  • 通常版:&ref(): File not found: "listing.3.zip" at page "listing";

使い方の例/どんなことができるか

  • あるページがリンクしているページ群の更新履歴
    #listing(link(Page),link,recent)
  • あるページがリンクしているページ群の人気順一覧
    #listing(link(Page),popular,link)
  • TopPage?リンクしているページがリンクしているページ(TopPage?から2ステップでいけるページ)
    #listing(link(link(TopPage)),link)
  • 人気ページ10件の更新履歴
    #listing(sort(all() popular desc 10),popular,link,recent)
  • ページのソースまたはページ名に"wiki"と"java"を含むページの人気順
    #listing(sort(search((wiki java) AND) popular),popular,link)
  • AとBにリンクされていて、Cにリンクしていて、Dからはリンクされていないページ
    #listing(ref(A) and ref(B) and link(C) and not(ref(D)))

ページ集合構文

Expression = Expression Operation Expression
Expression = List
Expression = ( Expression )
Expression = Function ( Expression )
Expression = ArgFunction ( List )
List = Expression Expression+
Operation = and,or,xor
Function = not,link,ref,ls,reg
ArgFunction = sort,search
Expression = Page

Operation

Operationは以下の3つで、左項と右項に対して演算を行います

and
どちらの集合にも含まれているものを返す
or
どちらかの集合に含まれているものを返す
xor
どちらか一方だけに含まれているものを返す

Function

Functionは括弧内のExpression(引数)の集合に対して演算を行います

not
全ページからExpressionにないページを返す
all
全てのページを返す
link
Expressionがリンクしているページを返す
もしExpressionが複数ページの集合ならば全ての結果の論理和として返します
ref
Expressionにリンクしている(Expressionがリンクされている)ページを返す
もしExpressionが複数ページの集合ならば全ての結果の論理和として返します
ls
Expressionの階層下にあるページを返す
もしExpressionが複数ページの集合ならば全ての結果の論理和として返します
reg
正規表現を指定して一致したページ名のページを返します
search
ページ名とwikiソースを検索して、一致したページを返します
第0引数 必須。検索語を指定。複数指定する場合は「(A B C)」のようにList形式を()で囲みます。
第1引数 ANDかORを指定します。(大文字で)
sort
ページ集合を指定方法で整列します。
第0引数 必須。ページ集合を指定
第1引数 ソートタイプ(alphabet:文字列順, popular:人気順, date:日付順, link:リンク数, ref:被リンク数, size:wikiソースのページサイズ)
第2引数 ソート方法(asc:昇順, desc:降順)
第3引数 指定数字以上の結果を切り捨てる

出力方法

書いた順に処理されます。

ページに関わる出力

ページ名を飾りつけします。書いた順に処理され、複数指定できます。

link
リンクをつけます
popular
カウンタをつけます
date
最終更新の日付、時間、曜日をつけます
time
最終更新時間をつけます
diff
差分を表示します
title[v.4]
ページをh1として出力します
headline[v.4]
ページ名の代わりにそのページの最初に現れる見出しを上書きして出力します。全ての"ページに関する出力"よりも前に指定してください。
headlinea[v.4.1]
見出しを追加して出力します

全体に関わる出力

以下は一番最後にしか指定できない出力方法です。一つしか指定できません。

recent
recentプラグインのように、日ごとに分けて表示します。オプションで以下の引数を指定できます。
第1引数 表示数
第2引数 何日前まで更新されたものを表示
最新の5件をリンクつきで表示する場合→#listing(expression,link,recent,5)
include
includeして表示します
bloglist[v.4]
指定文字列までをincludeして、全文へのリンクを表示します。指定文字列は以下の文字列です。
//---- more ----
変更したい場合はソースの以下の変数を参照してください
var $smart_splitter = "//---- more ----\n";
var $label_read_more = '>>続きを読む';

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-04-09 (火) 10:18:25