Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Wiki TVenserio
Buscar
Buscar
Crear una cuenta
Acceder
Herramientas personales
Modo oscuro
Crear una cuenta
Acceder
Páginas para editores desconectados
más información
Contribuciones
Discusión
Edición de «
Módulo:Spellnum per MOS
»
Módulo
Discusión
English
Leer
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Páginas especiales
Información de la página
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
local p = {} local words = {"thousand", "million", "billion", "trillion"} -- We don't need to go higher than this, no-one knows what an octillion is. -- For use by other scripts. Takes arguments: -- - 1: string or number, value to convert -- - forcenum: string for Template:Yesno, forces a result in digits for all n ≥ 10. -- - formating options for spellnum: zero, adj, ord, us function p.spellnum(args) local frame = mw.getCurrentFrame() local numeral = tonumber(args[1]) local pass_zero = "zero" if args['zero'] ~= nil and args['zero'] ~= '' then pass_zero = args['zero'] end -- Always return numerals for negative numbers, non-integers, and if (forcenum and numeral >= 10). if numeral < 0 or math.fmod(numeral, 1) ~= 0 or (numeral >= 10 and frame:expandTemplate{ title = 'yesno', args = {args['forcenum']} } == 'yes') then return mw.language.getContentLanguage():formatNum(numeral) end -- Convert numeral to words local spelled = frame:expandTemplate{ title = 'spellnum', args = { numeral, zero = pass_zero, adj = args['adj'], ord = args['ord'], us = args['us']}} -- Return numerals if more than two words would be needed, else return words if mw.ustring.find(spelled,'%a+[ %-]%a+[ %-]%a+') then -- Handle numbers larger than one million if numeral >= 1000000 and numeral <= 1000000000000000 then local size = math.min(4, math.floor(math.log10(numeral) / 3)) numeral = numeral / 1000^size return ({"%.1f ", "%d ", "%d "})[1 + math.floor(math.log10(numeral))]:format(numeral) .. words[size] end return mw.language.getContentLanguage():formatNum(numeral) else return spelled end end function p.main(frame) return p.spellnum(frame.args) end return p
Resumen:
Ten en cuenta que todas las contribuciones a Wiki TVenserio pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase
Wiki TVenserio:Derechos de autor
para más detalles).
¡No uses textos con copyright sin permiso!
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Plantilla usada en esta página:
Módulo:Spellnum per MOS/doc
(
editar
)
Activar o desactivar el límite de anchura del contenido