模块:Terminal:修订间差异
来自Limbo Wiki Mirror
小无编辑摘要  | 
				小 sh*t colon  | 
				||
| 第3行: | 第3行: | ||
function p.run(frame)  | function p.run(frame)  | ||
	args = frame  | 	args = frame:getParent().args  | ||
	prompt = frame.args["prompt"]  | 	prompt = frame.args["prompt"]  | ||
	color = frame.args["color"]  | 	color = frame.args["color"]  | ||
2023年3月19日 (日) 17:44的版本
| 
 欢迎您参与完善本页面~ 
林泊百科祝您在像素塔度过愉快的时光。  | 
local out = require("Module:Out")
local p = {}
function p.run(frame)
	args = frame:getParent().args
	prompt = frame.args["prompt"]
	color = frame.args["color"]
	result = frame.args["result"]
	for i, cmd in ipairs(args) do
		if mw.ustring.sub(cmd, 1, 1) == "/" then
			-- 命令输入
			out.writeln(prompt .. out.color(mw.ustring.sub(a, 2), color))
		elseif mw.ustring.sub(cmd, 1, 1) == "@" then
			-- 控制命令 默认只有一个参数 忽略空格
			cut = mw.ustring.find(cmd, " ", 1, true)
			name = mw.ustring.sub(cmd, 1, cut - 1)
			arg = mw.ustring.sub(cmd, cut + 1)
			if name == "color" then
				color = arg
			elseif name == "result" then
				result = arg
			elseif name == "prompt" then
				prompt = arg
			end
		else
			-- 命令回显
			out.writeln(prompt .. out.color(cmd, result))
		end
	end
end
p.main = out.create_main(p.run)
return p
