よりインデントされた箇条書きを使用してサブページをフォーマットすることになっている Scribunto モジュールがあります。
local p = {} --p stands for package
function p.subpage_bullets( frame )
local page = frame.args.page
local parts = mw.text.split( page, "/", true )
return string.rep("*", #parts) .. " " .. parts[#parts]
end
return p
これは、デバッグ コンソールで期待どおりに機能します。
=p.subpage_bullets(mw.getCurrentFrame():newChild{title="whatever",args={["page"]="Foo/Bar"}})
** Bar
私はDPLから次のように使用しています:
{{#dpl:
format=,{{#invoke:Helpers|subpage_bullets|page=%PAGE%}},<br />
|ordermethod=none
|namespace= {{NAMESPACE}}
}}
その結果、ページはインデントされません。したがって、ページ Foo/Bar が* Foo/Bar
期待される代わりに返され** Bar
ます。
なぜ機能しないのですか?"/"
スプリットを"%2f"
/に置き換えてみました"%2F"
が、結果は変わりませんでした。
別の関連する質問は、箇条書きがウィキテキストとしてレンダリングされ*
、解釈されないため、実際の箇条書きとしてレンダリングされないことです。