查看“Module:Oldpuabox”的源代码
←
Module:Oldpuabox
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您必须确认您的电子邮件地址才能编辑页面。请通过
参数设置
设置并确认您的电子邮件地址。
您可以查看和复制此页面的源代码。
local p = {} local getArgs = require('Module:Arguments').getArgs function p.str2codelist(strin) --转换字符串到unicode码位构成的数组,仅支持第一平面字符 local listout={} local strk=1 local listk=1 while strk <= #strin do if(math.modf(string.byte(strin,strk)/16)==14)then listout[listk]=(string.byte(strin,strk)-224)*4096+(string.byte(strin,strk+1)-128)*64+(string.byte(strin,strk+2)-128) listk=listk+1 strk=strk+3 elseif(math.modf(string.byte(strin,strk)/32)==6)then listout[listk]=(string.byte(strin,strk)-192)*64+(string.byte(strin,strk+1)-128) listk=listk+1 strk=strk+2 else listout[listk]=string.byte(strin,strk) listk=listk+1 strk=strk+1 end end return listout end function p.code2str(codein) --转换unicode码位到对应字符,仅支持第一平面字符 if(codein>=2048)then return string.char(224+math.modf(codein/4096),128+math.modf((codein%4096)/64),128+codein%64) elseif(codein>=128)then return string.char(192+math.modf(codein/64),128+codein%64) else return string.char(codein) end end function p.addsprite(frame) --转换字符中旧pua的部分为sprite图 local args = getArgs(frame) local list = p.str2codelist(args[1]) local out = "" for k,v in ipairs(list)do if(v>=57344 and v<=60159)then --在sprite支持的范围 out=out.."{{Oldpuasim|"..p.code2str(v).."}}" else out=out..p.code2str(v) end end return frame:preprocess(out) --预处理包含的oldpua模板 end return p
本页使用的模板:
Module:Oldpuabox/doc
(
查看源代码
)
返回
Module:Oldpuabox
。
导航菜单
个人工具
创建账号
登录
命名空间
模块
讨论
English
查看
阅读
查看源代码
查看历史
更多
导航
首页
最近更改
随机页面
社群首页
帮助
返回主站
希顶翻译器
〇改希顶转写器
工具
链入页面
相关更改
特殊页面
页面信息