モジュールの解説[作成]

local p = {}  function p.GetLink(frame)     local link = frame.args[1]     local display = frame.args[2]      -- 第一引数の値が技術的に利用可能な記事名でない場合、     -- 第一引数の値をそのまま返す     local IsValidPageName = require('Module:IsValidPageName')     if IsValidPageName.isValidPageName(frame) == "" then         return link     end      if display == "" then         display = nil     end      return p._formatLink(link, display) end  function p._formatLink(link, display)     -- Remove the initial colon for links where it was specified manually.     link = link:match('^:?(.*)')      -- Find whether a faux display value has been added with the {{!}} magic     -- word.     if not display then         local prePipe, postPipe = link:match('^(.-)|(.*)$')         link = prePipe or link         display = postPipe     end      -- Assemble the link.     if display then         return string.format(             '[[:%s|%s]]',             string.gsub(link, '|(.*)$', ''), --display overwrites manual piping             display         )     else         return string.format('[[:%s]]', link)     end end  return p