모듈:NAMESPACE: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
백괴게임>Gustmd7410
(새 문서: local p = {} function p.type(frame) local ns = frame.args[1] local iwp = mw.site.interwikiMap()[ns] if mw.site.namespaces[ns] then return 0 elseif iwp then if mw.language.isK...)
 
백괴게임>Gustmd7410
편집 요약 없음
2번째 줄: 2번째 줄:


function p.type(frame)
function p.type(frame)
local ns = frame.args[1]
local title = mw.title.new(frame.args[1])
local ns = ''
if title then
if (title.interwiki ~= '') then ns = title.interwiki
else ns = title.nsText
end
else ns = frame.args[1]:sub(1, frame.args[1]:find(':') - 1)
end
local iwp = mw.site.interwikiMap()[ns]
local iwp = mw.site.interwikiMap()[ns]

2018년 9월 26일 (수) 00:31 판


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

type 

문서 제목에서 이름공간이나 인터위키를 추출해 이름공간의 종류번호를 출력합니다.

사용법

{{#invoke:NAMESPACE|type|(문서명)}}

만약 이름공간만 입력하고 싶으시면 다음과 같이 입력하세요.

{{#invoke:NAMESPACE|type|(이름공간):}}

이 틀에서 출력되는 이름공간 종류번호는 다음과 같습니다.

번호 종류 전달 끼워넣기
0 내부
1 언어
2 아니오
3 아니오 아니오
4 외부
5 아니오
6 아니오 아니오


local p = {}

function p.type(frame)
	local title = mw.title.new(frame.args[1])
	local ns = ''
	
	if title then
		if (title.interwiki ~= '') then ns = title.interwiki
		else ns = title.nsText
		end
	else ns = frame.args[1]:sub(1, frame.args[1]:find(':') - 1)
	end
	
	local iwp = mw.site.interwikiMap()[ns]
	
	if mw.site.namespaces[ns] then return 0
	elseif iwp then
		if mw.language.isKnownLanguageTag(ns) then
			if iwp['local'] then
				if iwp.trans then return 1
				else return 2
				end
			else return 3
			end
		else
			if iwp['local'] then
				if iwp.trans then return 4
				else return 5
				end
			else return 6
			end
		end
	else return -1
	end
end

return p