-- This module converts support characters from half-width to full-width, and vice versa.-- See Halfwidth and fullwidth forms for an explanation of half- and full-width characters.
-- @todo FIXME: Needs more characters adding, needs support for diacritic marks.
local data = mw.loadData('Module:Convert character width/data')
local p =
-- Converts one half-width character to one full-width character.local function getFull(s) return data[s ] or send
-- Converts one full-width character to one half-width character.local function getHalf(s) for half, full in pairs(data) do if s
-- Converts multiple half-width characters to full-width characters.function p.full(frame) local s = type(frame)
'number' and tostring(s) or s if type(s) ~= 'string' then return end return (mw.ustring.gsub(s, '.', getFull))end
-- Converts multiple full-width characters to half-width characters.function p.half(frame) local s = type(frame)
'number' and tostring(s) or s if type(s) ~= 'string' then return end return (mw.ustring.gsub(s, '.', getHalf))end
return p