모듈:Wikidata 좌표/샌드박스
Module| 모듈에 대한 모듈 샌드박스 페이지입니다.Wikidata Coord(diff)입니다. |
| 이 Lua 모듈은 약 7,700페이지에서 사용되며 변경사항이 널리 인식될 수 있습니다.모듈의 /sandbox 또는 /test case 하위 페이지 또는 사용자 자신의 모듈 샌드박스에서 변경 사항을 테스트합니다.변경사항을 구현하기 전에 대화 페이지에서 변경사항에 대해 논의하는 것을 고려합니다. |
이 모듈은 Wikidata에서 반환하거나 일반 텍스트로 반환하는 형식의 위도 및 경도 문자열을 첫 번째 이름 없는 매개 변수 또는 위치 매개 변수로 사용합니다.lat/long은 다음 템플릿 호출에 사용되는 숫자 값을 제외한 모든 값이 제거됩니다.적절한 시각적 렌더링을 위한 조정 및 GeoHack에 대한 링크.
Wikidata는 분 및 두 번째 기호가 단일 따옴표 및 이중 따옴표에 대한 HTML 숫자 문자 참조인 다음 형식으로 텍스트 문자열을 반환합니다.
{{#property:P625 from=Q218501}}47°34'12"N, 52°40'55"W- 47°34'12"N, 52°40'55"w
모듈은 다음 형식의 일반 텍스트 문자열을 허용합니다.
47°34'12"N, 52°40'55"W
여기서 분 및 초 표시기는 단일 및 이중 따옴표 또는 단일 및 이중 소수 기호(', ″; U+2032, U+2033)입니다.
10진수 형식의 위도 및 경도도 사용할 수 있습니다.
53.67667°N 112.82861°W
템플릿 때문:좌표는 다양한 좌표 및 템플릿 매개 변수를 지원하며, 이 모듈은 템플릿 호출에서 매개 변수를 전달하는 것을 제외하고는 이러한 매개 변수를 수락하지만 이 매개 변수에 대해 작용하지 않습니다.좌표. 모듈에서{{#invoke:}}좌표 매개변수가 제공된 경우 이름이 지정되지 않은 두 번째 매개변수 또는 위치 매개변수여야 합니다.템플릿 매개 변수의 이름이 지정되어 다음과 같은 순서로 정렬됩니다.{{#invoke:}}중요하지 않습니다.
사용.
Wikidata에서 위도/경도를 그리는 일반적인 템플릿 사용은 다음과 같습니다.
{{#invoke:WikidataCoord main {{#property:P625 from={{{1 }}}}} {{{2 }}} display={{{display }}} format={{{format }}} name={{{name }}} notes={{{notes }}}}}
요구하다('''비공식''') 현지의 args를 얻다 = 요구하다('모듈:인수').args를 얻다 현지의 p = {} --[--------------------------< IS _ SE T >------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 변수가 설정되었는지 여부입니다.변수는 0이 아니거나 비어 있지 않을 때 설정됩니다. ]] 현지의 기능. is_set( 넝쿨 ) 돌아가다 것은 아니다. (넝쿨 == 영의 또는 넝쿨 == ''); 끝. --[----------------------< MA IN >---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 템플릿 진입점입니다.이 함수는 최대 두 개의 명명되지 않은 위치 매개 변수를 사용합니다. 1 = 일반적으로 Wikidata에 대한 호출에서 다음과 같은 문자열을 좌표로 지정합니다. {{#continue:=Q에서 P625...}} 2 = 좌표 매개변수, 템플릿 참조:좌표 지정된 매개 변수 display=, format=, name=, note=도 가져갑니다. 이 매개 변수는 {cord}에 전달됩니다. {{cord}에 대해 Wikidata 좌표 문자열을 명명되지 않은 매개 변수로 다시 포맷합니다. {{#선택사항:WikdataCoord 기본 {{#} 속성:P625 from =premat{1}}}{{2}}표시=premat{format}}형식=premat{form}}이름=premat{name}}{note=remat{notes}}}}{note}}}} ]] 기능. p.주된 (틀) 현지의 논병아리 = args를 얻다(틀); 현지의 늦깎이 = {}; 위키데이터 반환에서 추출한 위도/장도 좌표 표 한다면 것은 아니다. is_set (논병아리[1]) 그리고나서 Wikidata가 아무것도 반환하지 않는 경우(Q...일 때 발생)잘못됨) 돌아가다 '<span style="filename-size:100%" class="error">{{WikidataCord}} – 좌표 데이터 누락'; 오류 메시지 및 종료 그렇지 않으면 mw.ustring.경기 (논병아리[1], '%d+°%d+'[%d%]+"[NS], %s*%d+°%d+'[%d%]+"[EW]') 그리고나서 반환된 데이터가 55°1인 경우3'12"N, 23°17'17"e 늦깎이[1], 늦깎이[2], 늦깎이[3], 늦깎이[4], 늦깎이[5], 늦깎이[6], 늦깎이[7], 늦깎이[8] = 그것을 테이블에 구문 분석합니다. mw.ustring.경기 (논병아리[1], '(%d+)°(%d+)'([%d%]+)"([NS]),%s*(%d+)°(%d+)'([%d%]+)"([EW])')') 그렇지 않으면 mw.ustring.경기 (논병아리[1], '%d+°%d+'[NS], %s*%d+°%d+'[EW]') 그리고나서 반환된 데이터가 54°2처럼 보일 경우4'N, 25°25'e 늦깎이[1], 늦깎이[2], 늦깎이[3], 늦깎이[4], 늦깎이[5], 늦깎이[6] = 그것을 테이블에 구문 분석합니다. mw.ustring.경기 (논병아리[1], '(%d+)°(%d+)'([NS]), %s*(%d+)°(%d+)'([EW])')') 그렇지 않으면 mw.ustring.경기 (논병아리[1], '%d+°%d+['\'][%d%]+[계속]\"][NS],?%s*%d+°%d+['\'][%d%]+[계속]\"][EW]') 그리고나서 args[1]이 따옴표 또는 소수를 사용하는 adms 문자열인 경우 늦깎이[1], 늦깎이[2], 늦깎이[3], 늦깎이[4], 늦깎이[5], 늦깎이[6], 늦깎이[7], 늦깎이[8] = 그것을 테이블에 구문 분석합니다. mw.ustring.경기 (논병아리[1], '(%d+)°(%d+)['\']([%d%]+)[계속]\"]]([NS]),?%s*(%d+)°(%d+)['\']([%d%]+)[계속]\"]([EW])") 그렇지 않으면 mw.ustring.경기 (논병아리[1], '%d+°%d+['\'][NS],?%s*%d+°%d+['\'][EW]') 그리고나서 args[1]이 따옴표 또는 소수를 사용하는 adms 문자열인 경우 비트 단축 형식 늦깎이[1], 늦깎이[2], 늦깎이[3], 늦깎이[4], 늦깎이[5], 늦깎이[6] = 그것을 테이블에 구문 분석합니다. mw.ustring.경기 (논병아리[1], '(%d+)°(%d+)['\']]([NS]),?%s*(%d+)°(%d+)['\']([EW])") 그렇지 않으면 mw.ustring.경기 (논병아리[1], '%d+%?%d*°[NS],?%s*%d+%?%d*°[EW]') 그리고나서 args[1]이(가) 십진법 문자열인 경우 늦깎이[1], 늦깎이[2], 늦깎이[3], 늦깎이[4] = 그것을 테이블에 구문 분석합니다. mw.ustring.경기 (논병아리[1], '(%d+%)?%d*)°([NS]),?%s*(%d+%)?%d*)°([EW])") 또 다른 돌아가다 '<span style="filename-size:100%" class="error">{{WikidataCord}} – 잘못된 형식의 좌표 데이터'; Wikidata가 다른 것을 반환했습니다. 끝. 한다면 is_set (논병아리[2]) 그리고나서 좌표 매개변수가 이름이 지정되지 않은 두 번째 위치 매개변수에 있습니다. 한다면 is_set (늦깎이[5]) 그리고나서 args[1] 형식이 dms일 때 설정됩니다. 늦깎이[9] = 논병아리[2]; 또 다른 늦깎이[5] = 논병아리[2]; args[1]이 십진법 형식인 경우의 이것. 끝. 끝. 한다면 is_set (논병아리.과시하는) 그리고나서 늦깎이.과시하는 = 논병아리.과시하는; 끝. 한다면 is_set (논병아리.서식을) 그리고나서 늦깎이.서식을 = 논병아리.서식을; 끝. 한다면 is_set (논병아리.이름.) 그리고나서 늦깎이.이름. = 논병아리.이름.; 끝. 한다면 is_set (논병아리.메모들) 그리고나서 늦깎이.메모들 = 논병아리.메모들; 끝. 돌아가다 틀:확장템플릿{제목 = '코디', 논병아리 = 늦깎이} wikidata lat/long을 사용하여 템플릿 {{cord} 호출 끝. 돌아가다 p;