置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:Sandbox/红石小蝈/LaTeX

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [创建] [刷新]
local ret = {}
local function convert(tex, it)
	if (mw.ustring.sub(tex, it.it, it.it) ~= '{') then
		local res = mw.ustring.sub(tex, it.it, it.it)
		it.it = it.it + 1
		return res
	end
	it.it = it.it + 1
	local part = ""
	while(true) do
		local char = mw.ustring.sub(tex, it.it, it.it)
		it.it = it.it + 1
		if (char == '_') then
			part = part.."<sub>"..convert(tex, it).."</sub>"
		elseif (char == '^') then
			part = part.."<sup>"..convert(tex, it).."</sup>"
		elseif (char == '}') then
			return part
		else
			part = part..char
		end
	end
end

function ret.conv(frame)
	return convert('{'..frame.args[1]..'}',{it = 1})
end
return ret