Módulo:IPA symbol: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
JMGM (discussão | contribs)
nova página: local p, __output, args, data = {}, {}, {}, mw.loadData("Module:IPA symbol/data") local id, output __output.name = function() return data.correspondences[id]["name"] end __output.w...
 
Nota aos reutilizadores: este módulo foi copiado de en:Module:IPA symbol
Linha 40: Linha 40:
return __output[args.output] and __output[args.output]() or html_error("No such output option")
return __output[args.output] and __output[args.output]() or html_error("No such output option")
end
end



return p
return p

Revisão das 17h19min de 29 de outubro de 2014

Documentação do módulo[ver] [editar] [histórico] [purgar]

Este módulo é usado por {{IPA symbol}} e {{IPA link}}. Seus dados são encontrados no Módulo:IPA symbol/data.

local p, __output, args, data = {}, {}, {}, mw.loadData("Module:IPA symbol/data")
local id, output

__output.name = function() return data.correspondences[id]["name"] end
__output.wikipage = function() return data.correspondences[id]["wikipage"] end
__output.soundfile = function() return data.correspondences[id]["soundfile"] end
__output.type = function() return data.correspondences[id]["type"] end

local function html_error(message)
  if args[2] then
    return args[2]
  else
    return mw.ustring.format(
      '<strong class="error">Error using {{[[Template:IPA symbol|IPA symbol]]}}: %s%s</strong>'
      ,message
      ,mw.title.getCurrentTitle().isContentPage and ("[[Category:International Phonetic Alphabet pages needing attention|" .. (args[1] or "") .. "]]") or ""
     )
  end
end

function p.main(frame)
  -- all input is trimmed; accepted parameters are:
  --   name              description
  --   ====              ===========
  --   (1)               the input
  --   (2)               overwrite the error message
  --   (3)               overwrite the output when input is empty
  --   output            the output, one of: input; name; wikipage; soundfile; type

  for k, v in pairs(frame:getParent().args) do
    args[k] = v and mw.text.trim(v)
  end
  args.output = args.output or 'wikipage'

  if not args[1] or args[1] == "" then return args[3] or "" end

  id = data.symbols[args[1]]
  if not id then return html_error('"' .. args[1] .. '" not found in list') end

  return  __output[args.output] and __output[args.output]() or html_error("No such output option")
end


return p