모듈:트랜스클러더
Module:Transcluder| 이 모듈은 베타 등급으로 평가되며 널리 사용할 준비가 되어 있다.이것은 여전히 새로운 것이며, 결과가 예상대로 나오도록 약간의 주의를 기울여 사용해야 한다. |
이 모듈은 범용 트랜스런션 엔진으로, 어떤 페이지의 어떤 부분도 초월할 수 있으며, 일반적인 트랜스런션이 제공하지 않는 많은 옵션을 가지고 있다.
사용법
모듈
모듈의 주요 진입점은get방법
get( 'Title' )— 요청된 페이지 가져오기(일반적인 전폐와 동일한 결과)get( 'Title#' )— 요청된 페이지의 리드 섹션 가져오기get( 'Title#Section' )— 요청된 섹션 또는 <섹션> 태그 가져오기(하위 섹션 포함)
<noinclude>와 < only include> 태그는 통상적인 방법으로 처리되며, 결과로부터 다양한 요소를 배제하기 위한 선택적인 두 번째 파라미터도 있다.
get( 'Title#Section', { files = 0 } )— 모든 파일 제외get( 'Title#Section', { files = 1 } )— 첫 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = 2 } )— 두 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = '1,2' } )— 첫 번째 및 두 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = '1-3' } )— 첫 번째, 두 번째 및 세 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = '1,3-5' } )— 첫 번째, 세 번째, 네 번째 및 다섯 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = -2 } )— 두 번째 파일 제외get( 'Title#Section', { files = '-2,3' } )— 두 번째 및 세 번째 파일 제외get( 'Title#Section', { files = '-1,3-5' } )— 첫 번째, 세 번째, 네 번째 및 다섯 번째 파일 제외get( 'Title#Section', { files = 'A.png' } )— A.png를 제외한 모든 파일 제외get( 'Title#Section', { files = '-A.png' } )— A.png 제외get( 'Title#Section', { files = 'A.png, B.jpg, C.gif' } )— A.png, B.jpg, C.gif를 제외한 모든 파일 제외get( 'Title#Section', { files = '-A.png, B.jpg, C.gif' } )— A.png, B.jpg 및 C.gif 제외get( 'Title#Section', { files = { [1] = true, [3] = true } } )— 첫 번째 및 세 번째 파일을 제외한 모든 파일 제외get( 'Title#Section', { files = { [1] = false, [3] = false } } )— 첫 번째 및 세 번째 파일 제외get( 'Title#Section', { files = { ['A.png'] = false, ['B.jpg'] = false } } )— A.png 및 B.jpg 제외get( 'Title#Section', { files = '.+%.png' } )— PNG 파일을 제외한 모든 파일 제외(Lua 패턴 참조)get( 'Title#Section', { files = '-.+%.png' } )— 모든 PNG 파일 제외
동일한 구문을 사용하여 다른 많은 요소를 제외할 수 있다.
get( 'Title#Section', { sections = 0 } )— 모든 하위 섹션 제외get( 'Title#Section', { sections = 'History, Causes' } )— 'History' 및 'Causes'를 제외한 모든 하위 섹션 제외get( 'Title#Section', { lists = 1 } )— 첫 번째 목록을 제외한 모든 목록 제외get( 'Title#Section', { tables = 'stats' } )— ID가 'stats'인 테이블을 제외한 모든 테이블 제외get( 'Title#Section', { paragraphs = '1-3' } )— 첫 번째 단락, 두 번째 단락, 세 번째 단락을 제외한 모든 단락 제외get( 'Title#Section', { references = 0 } )— 모든 참조 제외get( 'Title#Section', { categories = '0' } )— 모든 범주 제외get( 'Title#Section', { templates = '-.+infobox' } )— Infobox 템플릿 제외get( 'Title#Section', { parameters = 'image' } )— '이미지'라는 이름을 가진 매개 변수를 제외한 모든 템플릿에서 모든 매개 변수 제외
옵션은 마음대로 조합할 수 있다.예를 들면 다음과 같다.
get( 'Title#Section', { sections = 0, files = 1, paragraphs = '1-3' } )— 모든 하위 섹션, 첫 번째 단락을 제외한 모든 파일 및 처음 세 단락을 제외한 모든 단락 제외
또한 다음과 같은 요소만 얻을 수 있다.
get( 'Title#Section', { only = 'files' } )— 파일만 가져오기get( 'Title#Section', { only = 'lists', lists = 1 } )— 첫 번째 목록만 가져오기get( 'Title#Section', { only = 'tables', tables = 'stats' } )— ID가 'stats'인 테이블만 가져오기get( 'Title#Section', { only = 'paragraphs', paragraphs = '1,3-5' } )— 첫 번째, 세 번째, 네 번째, 다섯 번째 단락만 구하십시오.get( 'Title#Section', { only = 'templates', templates = 'Infobox' } )— Infobox만 가져오기
출력은 다음과 같은 몇 가지 특수 옵션으로 추가로 수정할 수 있다.
get( 'Title#Section', { noFollow = true } )— 리디렉션을 따르지 않음get( 'Title#Section', { linkBold = true } )— 텍스트 시작 부근에 굵게 표시된 제목 또는 동의어 연결get( 'Title#Section', { noBold = true } )— 굵게 표시된 텍스트 제거get( 'Title#Section', { noSelfLinks = true } )— 자체 링크 제거get( 'Title#Section', { noBehaviorSwitches = true } )— 다음과 같은 동작 스위치 제거__NOTOC__get( 'Title#Section', { fixReferences = true } )— 정의되지 않은 참조 오류를 방지하기 위해 요청된 섹션 외부에 정의된 참조를 혼용하고 복구하는 경우 이름 충돌을 방지하기 위해 참조 이름을 '제목'과 접두사 지정
그 외에get방법, 모듈은 위키텍스트의 특정 부분을 얻기 위해 몇 가지 다른 방법을 노출한다.이것은 다른 모듈들이 좀 더 발전된 방법으로 요소들을 결합할 수 있게 해준다.
템플릿
템플릿의 주요 진입점은main방법그것은 본질적으로 한 장의 포장지 입니다.get템플릿에 사용할 수 있도록 만드는 방법.의 설명서를 참조하십시오.get자세한 내용 및 옵션에 대한 방법.
{{#invoke:Transcluder main Title}}— 요청된 페이지를 건너뛰기{{#invoke:Transcluder main Title#}}— 요청된 페이지의 리드 섹션 건너뛰기{{#invoke:Transcluder main Title#Section}}— 요청된 섹션 또는 <섹션> 태그 가져오기(하위 섹션 포함){{#invoke:Transcluder main Title#Section sections=0}}— 하위 섹션을 제외하고 요청된 섹션의 내용을 옮겨쓰십시오.{{#invoke:Transcluder main Title only=files files=1}}— 페이지의 첫 번째 파일만 변환{{#invoke:Transcluder main Title#Section only=tables tables=2}}— 요청된 섹션의 두 번째 표만 변환{{#invoke:Transcluder main Title# only=paragraphs linkBold=yes}}— 리드 섹션의 단락만 필사하고 굵은 텍스트 연결
국부적 p = {} -- truthy 및 fasty 값을 테스트하는 도우미 기능 - @to도 어떻게든 국제화하다. 국부적 기능을 발휘하다 터벅터벅한(가치를 매기다) 만일 아닌 가치를 매기다 또는 가치를 매기다 == '' 또는 가치를 매기다 == 0 또는 가치를 매기다 == '0' 또는 가치를 매기다 == '거짓말' 또는 가치를 매기다 == '아니오' 또는 가치를 매기다 == '논' 그때 돌아오다 거짓의 종지부를 찍다 돌아오다 진실의 종지부를 찍다 --정규식 리스트에서 일치시킬 도우미 함수 예를 들어, 미리 일치시켜..목록[1]..게시하거나 미리..목록[2]우편 또는 ...을 부치다. 국부적 기능을 발휘하다 매칭애니(문자 메시지를 보내다, 미리, 리스트를 작성하다, 우편으로 부치다, 초기화하다) 국부적 짝을 맞추다 = {} 을 위해 i = 1, #리스트를 작성하다 하다 짝을 맞추다 = { mw.우스트링.짝을 맞추다(문자 메시지를 보내다, 미리 .. 리스트를 작성하다[i] .. 우편으로 부치다, 초기화하다) } 만일 짝을 맞추다[1] 그때 돌아오다 짐을 풀다(짝을 맞추다) 종지부를 찍다 종지부를 찍다 돌아오다 못을 박다 종지부를 찍다 -- MatchAnywhere(모든 항목 제외)를 제외하고 오버헤드가 적은 범주/파일 링크 국부적 기능을 발휘하다 매칭AnyLink(문자 메시지를 보내다, 리스트를 작성하다) 국부적 짝을 맞추다 을 위해 _, v 에 아이페어(리스트를 작성하다) 하다 짝을 맞추다 = 끈.매치(문자 메시지를 보내다, '%[%[%s*]' .. v .. '%s*:.*%]%') 만일 짝을 맞추다 그때 부숴뜨리다 종지부를 찍다 종지부를 찍다 돌아오다 짝을 맞추다 종지부를 찍다 -- regex에서 사용할 문자열을 이스케이프하는 도우미 기능 국부적 기능을 발휘하다 이스케이프스트링(발을 동동 구르다) 돌아오다 끈.gsub(발을 동동 구르다, '[%^%$%(%)%.%[%]%*%+%-%?%%]', '%%%0') 종지부를 찍다 -- 텍스트에서 문자열을 제거하는 도우미 기능 국부적 기능을 발휘하다 removeString(문자 메시지를 보내다, 발을 동동 구르다) 국부적 무늬를 넣다 = 이스케이프스트링(발을 동동 구르다) 만일 #무늬를 넣다 > 9999 그때 -- 10,000바이트를 초과하는 문자열은 regex에 넣을 수 없음 무늬를 넣다 = 이스케이프스트링(mw.우스트링.후보선수(발을 동동 구르다, 1, 999)) .. '.-' .. 이스케이프스트링(mw.우스트링.후보선수(발을 동동 구르다, -999)) 종지부를 찍다 돌아오다 끈.gsub(문자 메시지를 보내다, 무늬를 넣다, '') 종지부를 찍다 -- 쉼표로 구분된 숫자 목록 또는 최소-최대 범위를 술래 목록으로 변환하는 도우미 기능 -- @param 플래그 쉼표로 구분된 숫자 또는 최소-최대 범위 목록(예: '1,3-5') -- @return Map에서 술어로, 예를 들어 {1=true,2=false,3=true,4=true,5=true} - @return Boolean 깃발을 블랙리스트로 취급해야 하는지 여부를 표시 국부적 기능을 발휘하다 파스플래그(가치를 매기다) 국부적 깃발 = {} 국부적 블랙리스트에 올리다 = 거짓의 만일 아닌 가치를 매기다 그때 돌아오다 못을 박다, 거짓의 종지부를 찍다 만일 타자를 치다(가치를 매기다) == '숫자' 그때 만일 가치를 매기다 < 0 그때 가치를 매기다 = -가치를 매기다 블랙리스트에 올리다 = 진실의 종지부를 찍다 깃발 = { [가치를 매기다] = 진실의 } 그렇지 않으면 타자를 치다(가치를 매기다) == '끈' 그때 만일 끈.sub(가치를 매기다, 1, 1) == '-' 그때 블랙리스트에 올리다 = 진실의 가치를 매기다 = 끈.sub(가치를 매기다, 2) 종지부를 찍다 국부적 범위 = mw.문자 메시지를 보내다.갈라지다(가치를 매기다, ',') -- 분할 범위: '1,3-5' ~ {'1',3-5'} 을 위해 _, 범위 에 쌍들(범위) 하다 범위 = mw.문자 메시지를 보내다.다듬다(범위) 국부적 분, 맥스. = mw.우스트링.짝을 맞추다(범위, '^(%d+)%s*[----]%s*(%d+)