モジュール:kana-DEFAULTSORT
このモジュールについての説明文ページを モジュール:kana-DEFAULTSORT/doc に作成できます
local export = {}
export.kana_DEFAULTSORT = function(frame)
local arg = frame:getParent().args[1]
local pagename = mw.title.getCurrentTitle().text
local kana = arg or pagename
local tracking_categories_raw = {}
local non_kana_pattern = "[^ぁ-ゖァ-ヺーヽヾ%ー・=?!。、]"
if frame:getParent().args[2] then
error('引数 "2" は無効です。このテンプレートで指定できる読みは一つだけです。')
end
if arg == pagename then
-- TODO: モジュール:debugのtrackを使いたいが、仕様がちゃんと決まっていないので一時的に自前の処理を記述する。
pcall(frame.expandTemplate, frame, { title = 'kana-DEFAULTSORTで冗長な引数を渡しているページ' })
end
if kana ~= pagename and not mw.ustring.find(pagename, non_kana_pattern) then
table.insert(tracking_categories_raw, "[[カテゴリ:テンプレート:kana-DEFAULTSORTでタイトルと異なる読み仮名を指定しているページ]]")
end
if mw.ustring.find(kana, non_kana_pattern) then
table.insert(tracking_categories_raw, "[[カテゴリ:テンプレート:kana-DEFAULTSORTで仮名以外を渡しているページ]]")
end
local sort = require("モジュール:ja").jsort(kana)
return frame:callParserFunction("デフォルトソート", sort ) .. table.concat(tracking_categories_raw)
end
return export