モジュール:Asbox stubtreeのソースを表示
←
モジュール:Asbox stubtree
ナビゲーションに移動
検索に移動
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
local i = {} function i.exists(pagename) local t = mw.title.new(pagename, "Template") return t.exists end function i.pcase(word) return mw.ustring.upper(mw.ustring.sub(word,1,1)) .. mw.ustring.sub(word,2) end function i._subtree(pagename) local finalresult local out = {"",pagename} local tt local temppage local temppageexists local r = 0 local t = {} local removeditem1 = "" local removeditem2 = "" -- split items on dash into table for token in mw.ustring.gmatch(pagename, "[^-]+") do -- don't add numbered items to list if tonumber(mw.ustring.sub(token,1,1)) == nil then table.insert(t,token) else r = 1 end end table.remove(t, #t) while (#t > 1) do if r == 1 then r = 0 else -- Remove 1st item from list removeditem1 = t[1] table.remove(t, 1) end temppage = table.concat(t, "-") .. "-stub" temppageexists = i.exists(temppage) if temppageexists == true then table.insert(out,"[[Template:" .. temppage .. "|" .. i.pcase(temppage) .. "]]") else -- If template with first item does not exist, try removing last item removeditem2 = t[#t] table.remove(t, #t) temppage = removeditem1 .. "-" .. table.concat(t, "-") .. "-stub" if #t == 0 then temppage = removeditem1 .. "-stub" end temppageexists = i.exists(temppage) if temppageexists == true then -- if exists then add first item back to list table.insert(t,1,removeditem1) table.insert(out,"[[Template:" .. temppage .. "|" .. i.pcase(temppage) .. "]]") else -- if exists then add last item back to list table.insert(t,removeditem2) end end end finalresult = '<div style="float:right; border-style:dotted; border-width:2px; padding:5px; margin:5px;">' finalresult = finalresult .. '<span title="This shows the hierarchy of the stub template in relation to other templates." style="font-size:125%; font-weight:bold;">Stub hierarchy</span>' finalresult = finalresult .. table.concat(out, "\n* ") finalresult = finalresult .. '\n* [[Template:Stub|Stub]]' finalresult = finalresult .. '\n</div>' return finalresult end function i.subtree(frame) return i._subtree(frame.args["pagename"]) end return i
モジュール:Asbox stubtree
に戻る。
ナビゲーション メニュー
個人用ツール
ログイン
名前空間
モジュール
議論
English
表示
閲覧
履歴表示
その他
検索
案内
索引
脳科学辞典について
最近完成した項目
編集履歴
執筆にあたって
引用の仕方
著作権について
免責事項
問い合わせ
各学会編集のオンライン用語辞典
About us (in English)
Twitter (BrainScienceBot)
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
他のプロジェクト