모듈:연습장: 두 판 사이의 차이

리버티게임(개발), 모두가 만들어가는 자유로운 게임
둘러보기로 이동 검색으로 이동
백괴게임>Riemann
편집 요약 없음
>Hsl0
편집 요약 없음
 
(사용자 4명의 중간 판 32개는 보이지 않습니다)
1번째 줄: 1번째 줄:
-- 모듈 연습장입니다.
-- Module:RedirectHelper


local p = {}
local p = {}


p.josa = function(frame)
function p.redirect(frame)
local arg = frame.args
    local targetPage = frame.args[1]
return _josa(arg)
    if targetPage then
end
        return "#REDIRECT [[" .. targetPage .. "]]"
    end
    return ""
end


function _josa(args)
function p.args(frame)
local result = {{args[3] or true, args[4] or false, args[5] or nil}, {'은', '는', '은(는)'}, {'이', '가', '이(가)'}, {'을', '를', '을(를)'}, {'으로', '로', '(으)로'}, {'과', '와', '과(와)'}, {'아', '야', '아(야)'}, {'이', '', '(이)'}}
local args = {}
if args[1] == '은는' then
tp = 2
for key, value in pairs(frame.args) do
elseif args[1] == '이가' then
table.insert(args, {key, value})
tp = 3
elseif args[1] == '을를' then
tp = 4
elseif args[1] == '으로' then
tp = 5
elseif args[1] == '과와' then
tp = 6
elseif args[1] == '아야' then
tp = 7
elseif args[1] == '이' then
tp = 8
else tp = 1
end
local fin = mw.ustring.sub(mw.ustring.toNFD(args[2]), -1, -1)
local fnum = mw.ustring.codepoint(fin)
local code
if (fnum == 4527 or fnum == 12601) then
code = 10
elseif ((4520 <= fnum and fnum <= 4546) or (12593 <= fnum and fnum <= 12622)) then
code = 1
elseif ((4449 <= fnum and fnum <= 4469) or (12623 <= fnum and fnum <= 12643)) then
code = 2
else
code = 3
end
if tp == 5 then
if code == 1 then
josa = result[4][1]
elseif code == 2 or code == 10 then
josa = result[4][2]
else josa = result[4][3]
end
else
if code == 1 or code == 10 then
josa = result[tp][1]
elseif code == 2 then
josa = result[tp][2]
else josa = result[tp][3]
end
end
if tp == 1 or args[3] == '0' then
return josa
else
return table.concat({args[2], josa})
end
end
return mw.text.jsonEncode(args)
end
end
return p
return p

2023년 11월 25일 (토) 21:38 기준 최신판


모듈 설명문서[보기] [편집] [역사] [새로 고침]

자유롭게 모듈의 사용법을 익힐 수 있는 연습장입니다.

  1. 장기간에 걸쳐 수정이 필요한 경우 별도로 모듈페이지를 만드는 것을 추천합니다.
  2. 다음 문서가 도움이 될 수 있습니다.
  3. 다른 이름공간에 대한 연습은 아래에서 가능합니다.
  4. 낙서장을 비우려면 여기를 클릭하세요.


-- Module:RedirectHelper

local p = {}

function p.redirect(frame)
    local targetPage = frame.args[1]
    if targetPage then
        return "#REDIRECT [[" .. targetPage .. "]]"
    end
    return ""
end

function p.args(frame)
	local args = {}
	
	for key, value in pairs(frame.args) do
		table.insert(args, {key, value})
	end
	
	return mw.text.jsonEncode(args)
end

return p