Permanently protected module

모듈:웹 아카이브

Module

--[[ ----------------------------------  {{webarchive}} 템플릿을 구현하는 Lua 모듈입니다.  {{wayback}, {{webcite}}, {{cite archives}의 세 가지 템플릿 기능 통합   ]]   --[--------------------------< DEP END IES >-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ]]  요구하다('''비공식'''); 현지의 args를 얻다 = 요구하다 ('모듈:인수').args를 얻다;   --[------------------------------------------------------------------------------------------------------------------------------------------------------------- ]]  현지의 분류 = {};               범주 이름 현지의 설정 = {};                글로벌 구성 설정 현지의 숫자들 = {};                i18n의 경우; 로컬-슬롯 숫자를 서부 숫자로 변환하는 테이블 현지의 err_messages_msgs = {};              오류 및 경고 메시지 현지의 excepted_페이지 = {}; 현지의 month_num = {};               i18n의 경우, 로컬로 지정된 월 이름을 서부 숫자로 변환하는 테이블 현지의 접두사 = {};               서비스 제공자 꼬리 문자열 접두사 현지의 서비스 = {};               서비스 공급자 데이터 아카이브 현지의 s_text = {};                최종 렌더링을 작성하는 데 사용되는 정적 텍스트 문자열 표 현지의 분류되지 않은_이름 공간 = {};           분류하지 말아야 할 네임스페이스 목록 현지의 분류되지 않은_하위 페이지 = {};            분류해서는 안 되는 하위 페이지 목록   --[------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ]]  현지의 비서구적인;              data.boolean.enable이 true인 경우 true로 설정된 부울 플래그 현지의 이 페이지 = mw.제목.현재 제목 가져오기();  현지의 추적하다 = {};                추적 범주를 보유하는 연관 배열 현지의 ulx = {};                 템플릿 데이터를 보관할 연관 배열   --[--------------------------< SUB SIT TUT T >------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  인수 테이블을 사용하여 메시지 문자열에 번호가 매겨진 인수를 채웁니다.  ]]  현지의 기능. 대체물 (메시지, 논병아리)  돌아가다 논병아리 그리고. mw.메세지.새 원시 메시지 (메시지, 논병아리):평지() 또는 메시지; 끝.   --[--------------------------< tableLength >---------------------------  1-D 표가 주어지면 원소 수를 반환합니다.  ]]  현지의 기능. tableLength(T)  현지의 세어보세요 = 0  위해서 _  쌍들(T) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 세어보세요 = 세어보세요 + 1 끝.  돌아가다 세어보세요 끝.   --[=[----------------------------------< MAKE _ WI K I LI NK >---------------------------------------------------------------------------  Wikilink를 만듭니다. 링크 및 표시 텍스트가 모두 제공되면 LDAP 형식으로 Wikilink를 반환합니다. 링크가 제공된 경우, [L] 형식의 위키링크를 반환합니다. 둘 다 제공되지 않았거나 링크가 생략된 경우, 빈 문자열  ]=]  현지의 기능. make_smilink (링크, 과시하는, no_link)  한다면 영의 == no_link 그리고나서   한다면 링크 그리고. ('' ~= 링크) 그리고나서    한다면 과시하는 그리고. ('' ~= 과시하는) 그리고나서     돌아가다 테이블.콘캣 ({'[[', 링크, ' ', 과시하는, ']]'});    또 다른     돌아가다 테이블.콘캣 ({'[[', 링크, ']]'});    끝.   끝.   돌아가다 과시하는 또는 '';             링크가 설정되지 않았으므로 표시 텍스트를 반환합니다.   또 다른                  no_link   한다면 과시하는 그리고. ('' ~= 과시하는) 그리고나서          표시 텍스트가 있는 경우    돌아가다 과시하는;              돌려주다, 돌려주다   또 다른    돌아가다 링크 또는 '';             대상 아티클 이름 또는 빈 문자열을 반환합니다.   끝.  끝. 끝.   --[---------------------------------------------------------------------------------------------------------------------------  트랙[], 즉 추적 범주의 데이터 반환  ]]  현지의 기능. 추적 작성()  한다면 것은 아니다. excepted_페이지[이 페이지.전체 텍스트] 그리고나서        네임스페이스: 이름 공간/이름 공간을 범주화할 수 있습니다(일반적으로 이 모듈의 / 템플릿의 테스트 사례 페이지).   한다면 분류되지 않은_이름 공간[이 페이지.ns텍스트] 그리고나서    돌아가다 '';               이 페이지는 분류되지 않으므로 빈 문자열을 반환합니다.   끝.   위해서 _,v  짝을 짓다 (분류되지 않은_하위 페이지) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다       페이지 이름 패턴을 순환합니다.    한다면 이 페이지.본문:경기 (v) 그리고나서         각 패턴에 대해 페이지 이름 테스트     돌아가다 '';              이 하위 페이지 유형은 분류되지 않으므로 빈 문자열을 반환합니다.    끝.   끝.  끝.   현지의 나가. = {};  한다면 tableLength(추적하다) > 0 그리고나서   위해서 열쇠, _  쌍들(추적하다) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다           테이블을 차례로 넘기다    표.삽입 (나가., make_smilink (열쇠));       카테고리 이름을 링크로 변환합니다.   끝.  끝.  돌아가다 테이블.콘캣 (나가.);             하나의 큰 문자열로 축소; 테이블이 비어 있으면 빈 문자열  끝.   --[--------------------------< 인라인 오류 >-------------------------------  심각한 오류입니다.출력을 완전히 빨간색으로 렌더링합니다.추적 범주에 추가합니다.  이 기능은 이 모듈을 포기하기 전에 마지막으로 호출됩니다.  ]]  현지의 기능. 인라인 오류 (메시지, 논병아리)  추적하다[분류.오류] = 1  돌아가다 테이블.콘캣 ({   '<span style="flash-size:100%" class="오류 인용-댓글">의 오류, 오류 메시지 범위 열기   설정.tname,               로컬 언어 템플릿 이름 삽입   템플릿: ',   대체물 (메시지, 논병아리),             포맷된 오류 메시지 삽입   '.</span>,                수명을 다함   추적 작성()              카테고리를 추가합니다.   }) 끝.   --[--------------------------< inlineRed >------------------------------------------------------------------------------------  경고와 같이 텍스트 조각을 빨간색으로 렌더링합니다. 추적 범주를 추가합니다.  ]]  현지의 기능. 인라인레드(메시지, trackmsg)  한다면 trackmsg == "경고" 그리고나서   추적하다[분류.경고문] = 1;  그렇지 않으면 trackmsg == "오류" 그리고나서   추적하다[분류.오류] = 1;  끝.   돌아가다 '<span style="flash-size:100%" 클래스="오류 인용-수정"> .. 메시지 .. '/span' 끝.   --[------------------------< base62 >------------------------------------------------------------------------------------  base-62를 base-10으로 변환 신용: https://de.wikipedia.org/wiki/Modul:Expr  ]]  현지의 기능. 베이스62( 가치 )  현지의 r = 1                 기본 반환 값은 입력 값의 형식이 잘못되었습니다.   한다면 가치:경기 ('%W') 그리고나서             값은 집합 [0-9a-zA-Z]에만 있어야 합니다.   돌아가다;                 값에 관련 없는 문자가 포함된 경우 0 반환  끝.   현지의 n = #가치               값의 문자 수  현지의 k = 1  현지의 c  r = 0  위해서 i = n, 1, -1 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다               ls자리에서 ms자리까지 값의 모든 문자를 반복합니다.   c = 가치:바이트( i, i )   한다면 c >= 48 그리고. c <= 57 그리고나서            문자는 0-9자리입니다.    c = c - 48   그렇지 않으면 c >= 65 그리고. c <= 90 그리고나서           문자는 ascii a-z입니다.    c = c - 55   또 다른                 ASCII A-Z여야 합니다.    c = c - 61   끝.   r = r + c * k               이 base62 문자의 값을 누적합니다.   k = k * 62                다음을 향해 달려가다  끝. 나를 위하여   돌아가다 r 끝.    --[----------------------------< DECODE _ DA TE >--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  날짜 문자열이 지정되면 날짜 형식 표시기와 함께 iso 형식으로 반환합니다.해당 월 이름을 제외하고는 올바른 대문자를 가진 합법적인 월 이름으로 인식할 수 있어야 하며 날짜 문자열이 하나와 일치해야 합니다. 인식된 날짜 형식 중 오류 검사는 여기서 수행되지 않습니다. 그렇지 않으면 0을 반환합니다.  ]]  현지의 기능. decode_date (date_str)  현지의 패턴 = {   ['dmy'] = {'^(%d%d?) +([^%s%d]+) +(%d%d%d)
                
, 'd, 'm', 'y'}, 일부 언어에서 사용하는 문자를 결합한 유니코드를 %a가 인식하지 못합니다. ['mdy'] = {'^([^%s%d]+)(%d%d?), +(%d%d%d)
$$SIDE_BOTTOM$$
    $$BOTTOM$$