모듈:스포츠 테이블
Module| 이 Lua 모듈은 약 57,000페이지에서 사용되며 변화를 널리 알 수 있습니다.모듈의 /sandbox 또는 /test case 하위 페이지 또는 사용자 자신의 모듈 샌드박스에서 변경 사항을 테스트합니다.변경사항을 구현하기 전에 대화 페이지에서 변경사항에 대해 논의하는 것을 고려합니다. |
| 이 모듈은 일반적으로 사용할 수 있는 것으로 평가됩니다.그것은 성숙한 형태에 도달했고, 상대적으로 버그가 없으며 적절한 곳이라면 어디서나 사용할 수 있는 것으로 생각됩니다.새로운 사용자가 학습할 수 있는 옵션으로 도움말 페이지 및 기타 위키백과 자료에 언급할 준비가 되어 있습니다.서버 로드 및 불량 출력을 줄이려면 반복적인 시행착오 편집보다 샌드박스 테스트를 통해 개선해야 합니다. |
| 이 모듈은 페이지 보호 대상입니다.매우 많은 페이지에서 사용 중이거나 매우 자주 교체되는 가시성이 높은 모듈입니다.파괴 행위나 실수는 많은 페이지에 영향을 미치고 사소한 편집도 서버에 상당한 부하를 줄 수 있으므로 편집으로부터 보호됩니다. |
| 이 모듈은 다음과 같은 다른 모듈에 따라 달라집니다. |
| 이 모듈은 TemplateStyle을 사용합니다. |
모듈: 스포츠 테이블은 스포츠를 위한 그룹 및 리그 테이블도 구축하기 위한 것입니다.이 모듈은 광범위하게 사용되므로 샌드박스에서 잠재적인 변경 사항을 엄격하게 테스트하고 주요 변경 사항을 구현하기 전에 합의가 있는지 확인하십시오.이 설명서의 나머지 부분에서는 모듈 설정 방법을 설명합니다.자세한 사용 지침은 개별 스타일 페이지를 참조하십시오.
Wikitext 테스트 사례는 다음 모듈에 있습니다.스포츠 테이블/테스트 사례 위키텍스트.
사용.
기본 명령은 다음과 같습니다.{{#invoke:Sports table main style=XXX}}
스타일.
그XXX에style=XXX사용 가능한 다음 스타일 중 하나로 대체됩니다.
일반 스타일
- WDL – 윈-드로-로스 시스템이 있는 테이블의 경우
- WL – 윈-로스 시스템이 있는 테이블의 경우
- WL PK – 승부차기에서 승패에 가중치를 다르게 부여하는 승패 시스템이 있는 테이블용
- WLOT – 연장전 승리에 서로 다른 가중치를 부여하는 승패 시스템이 있는 테이블의 경우
- WL OTL 타이브레이크 – 승패 OT 손실 시스템과 별도의 타이브레이크 열이 있는 테이블의 경우
- WDLHA – 홈 및 원정 승리-추첨-손실 회계가 별도인 경우
- WLHA – 홈 및 어웨이 윈-로스 회계가 분리된 테이블용
- WDLOT – 특정 상황에서 무승부 또는 연장전 승리가 가능한 승패 시스템이 있는 테이블용
- PP – 플레이된 게임과 포인트 수만 표시하는 간단한 표
- 사용자 정의 – 더 큰 사용자 정의를 위해 열 수와 모든 열 헤더가 입력으로 지정된 테이블의 경우
스포츠 또는 리그별 스타일
- 배구 – 배구 시스템이 있는 테이블의 경우, 세트, 세트 포인트, 다양한 유형의 우승 포인트를 포함
- 다트
- 배드민턴 개인전
- 배드민턴 팀
- 체스
- 크리켓 RR – 순런율이 적용된 크리켓 테이블
- 크리켓 CC – 카운티 챔피언십 크리켓 테이블(배팅 및 볼링 보너스 포인트 포함)
- 크리켓 RT – 타격, 볼링 보너스 포인트 및 위켓당 득점 비율이 포함된 란지 트로피용 크리켓 테이블.
- 펜싱
- 대학 – 별도의 회의 및 전체 기록이 있는 테이블.
- 럭비 – 포인트, 트라이, 보너스 포인트가 있는 럭비 테이블.
- 축구는 최초의 창조물이었습니다.이 스타일의 이름이 WDL로 변경되었습니다.
더 많은 스타일
모듈은 Lua를 사용하여 테이블을 만듭니다.대부분의 기능은 기본 모듈에서 제공되지만 특정 열 형식은 스타일 하위 모듈에서 제공됩니다.기존 스타일은 다양한 옵션을 처리할 수 있습니다.추가 옵션이 필요한 경우 새로운 스타일을 만드는 것이 유용할 수 있습니다.기존 스타일의 일부 조정은 완전히 새로운 스타일을 만드는 대신 필요한 기능을 제공할 수 있습니다.새 스타일을 생성하는 경우 Lua 참조 매뉴얼을 참조하는 것이 좋습니다.
기타 옵션
다음과 같은 다른 옵션을 사용할 수 있습니다.{{#invoke:Sports table main style=WL OT sortable_table = yes source=ICC update=July 28, 2018
부분
같은 페이지에 두 개의 스포츠 테이블이 있을 때, 당신은 사용할 수 있습니다. section=테이블의 앵커 이름을 제공합니다.표를 제외한 페이지에는 "보기" 링크가 앵커를 가리키는 "VTE" 링크가 수정됩니다.표를 포함하지 않고 사용하는 페이지 transcludesection=일치하는 테이블만 표시합니다. section=모든 테이블은 아닙니다.
정렬 가능한_테이블
"yes테이블 열을 정렬할 수 있도록 합니다.
원천
테이블을 확인하거나 업데이트하기 위한 정보와 함께 웹 리소스를 가리키는 링크를 추가합니다.
갱신하다
테이블 정보가 마지막으로 업데이트된 날짜를 제공합니다.수동으로 설정해야 합니다. 다른 사용자가 테이블을 변경해도 자동으로 변경되지 않습니다.최종 테이블 세트의 경우 "complete".
흘러가다
페이지의 왼쪽 또는 오른쪽으로 테이블을 이동하려면 왼쪽 또는 오른쪽으로 설정
title_source
제목에 참조를 추가하고 표 하단에 원본이 필요하지 않도록 하려면 다음과 같이 하십시오.
추적 카테고리
- 범주:무시된 매개 변수가 있는 스포츠 테이블을 사용하는 페이지(562)
- 범주:스포츠 테이블을 사용하여 결과가 누락된 페이지 (17)
- 범주:빠진 팀이 있는 스포츠 테이블을 이용한 페이지 (445)
- 범주:스포츠 테이블과 고아 매치 노트를 사용한 페이지 (0)
- 범주:고아 이름이 있는 스포츠 테이블을 사용하는 페이지 (111)
- 범주:고아 노트가 있는 스포츠 테이블을 사용하는 페이지 (18)
- 범주:스포츠 테이블을 사용하여 고아 결과가 있는 페이지(914)
- 범주:스포츠 테이블을 사용하여 잘못된 우승 포인트가 있을 수 있는 페이지 (7)
- 범주:무시 가능성이 있는 매개 변수가 있는 스포츠 테이블을 사용하는 페이지(1,404)
- 범주:알 수 없는 매개변수가 있는 스포츠 테이블을 사용하는 페이지 (19)
스포츠의 순위표를 작성하기 위한 모듈 자세한 내용은 설명서 참조 요구하다('''비공식''') 현지의 p = {} 주함수 기능. p.주된(틀) 로컬 선언 현지의 args를 얻다 = 요구하다('모듈:인수').args를 얻다 현지의 아그스 = args를 얻다(틀, {부모 우선 = 진실의}) 현지의 ii_start, ii_끝, N_rows_res = 0 현지의 text_field_result 현지의 note_message = 거짓의 현지의 t = {} 현지의 t_skin의 = {} 현지의 t_리턴 = {} 현지의 팀_리스트 = {} 현지의 JJ, jjj 현지의 탁상_식탁자 = mw.ustring.gsub(아그스['섹션'] 그리고. '스포츠 테이블-' .. 아그스['섹션'] 또는 '', ' ', '_') 다른 섹션에 대해 섹션 변환을 사용하는 경우 조기 종료 현지의 t섹션 = 틀:상위 항목 가져오기().논병아리['섹션 포함'] 또는 틀:상위 항목 가져오기().논병아리['섹션'] 또는 '' 현지의 b섹션 = 틀.논병아리['섹션'] 또는 '' 한다면( t섹션 ~= '' 그리고. b섹션 ~= '' ) 그리고나서 한다면( t섹션 ~= b섹션 ) 그리고나서 돌아가다 '' 끝. 끝. 현지의 사원 양식 = 틀:확장 태그{ 이름. = '비공식적인 스타일, 논병아리 = { src = '모듈:스포츠 테이블/스타일.css' } } 요청할 경우 링크 편집 현지의 베이스 링크 = 틀:상위 항목 가져오기():제목 가져오기() 한다면 mw.제목.현재 제목 가져오기().본문 == 베이스 링크 그리고나서 베이스 링크 = '' 끝. 현지의 template_name = (베이스 링크 ~= '' 그리고. (':' .. 베이스 링크 .. (탁상_식탁자 ~= '' 그리고. '#' .. 탁상_식탁자 또는 ''))) 또는 '' 테이블의 사용자 지정 시작점을 가져옵니다(대부분이 기본적으로 1에서 시작됨). 현지의 top_pos = 수에 달하여(아그스['최고_pos']) 또는 1 테이블에 대한 사용자 지정 끝점을 가져옵니다(bottom_pos가 <top_pos인 경우 제한되지 않음). 현지의 bottom_pos = 수에 달하여(아그스['ssh_pos']) 또는 0 현지의 N_팀 = top_pos - 1 시작 시 기본값은 0이지만 특정 항목을 건너뛰려면 더 큰 숫자가 필요합니다. 모듈 로드 현지의 예 아니오 = 요구하다('모듈:'예스노') 로드 스타일 및 (하위) 모듈 현지의 style_def = 아그스['스타일'] 또는 'WDL' 과거에는 '축구'가 스타일로 존재했지만 현재는 WDL로 전달됩니다. 한다면 style_def == '''비공식''' 그리고나서 style_def = 'WDL' 끝. 현지의 p_스타일의 = 요구하다('모듈:스포츠 테이블/'..style_def) 현지의 p_sub = 요구하다('모듈:스포츠 테이블/서브') 고유성에 사용되는 랜덤 값 수학.채찍 종자( os.clock() * 10^8 ) 현지의 랜드발 = 수학, 수학,수학() 색상표 선언 현지의 result_col = {} result_col = {녹색1='#BBF3BB', 그린2='#CCF9CC', 그린3='#DDFCDD', 그린4='#EEFFE', 블루1='#BBF3FF', 블루2='#CCF9FF', 블루3='#DDFCFF', 블루4='#EEFFF', 옐로우1='#FFFFBB', 옐로우2='#FFFFCC', 옐로우3='#FFFDD', 옐로우4='#FFFE', 레드1='#FFBBB', 레드2='#FFCCCC', 레드3='#FFDDD', 레드4='#FFEE', 블랙1='#BBBBB', 블랙2='#CCCCC', 블랙3='#DDDDD', 블랙4='#EEEE', 오렌지1='#FEDCBA', 오렌지2='#FEED5', 화이트1='''비공식''',['']='''비공식''' } 테이블에 모든 통계 표시 또는 재생된 일치 항목과 포인트만 표시 현지의 만석의 = 진실의 현지의 숨바꼭질 = 예 아니오(아그스['숨김_잠금'] 또는 '아니오') 현지의 숨바꼭질 = 예 아니오(아그스['숨김_잠금'] 또는 '아니오') 현지의 pld_pts_val = 스트링.하의(아그스['only_pld_pts'] 또는 '아니오') 현지의 show_class_message = 예 아니오(아그스['show_class_message'] 또는 '예') 그리고. 진실의 또는 거짓의 par가 없으면 true이고 없으면 false입니다. 한다면 예 아니오(pld_pts_val) 그리고나서 만석의 = 거짓의 그렇지 않으면 pld_pts_val=='no_hide_class_message' 그리고나서 만석의 = 진실의 show_class_message = 거짓의 끝. 결과 선언 열 머리글 현지의 results_valides = {} results_valides = {Q='자격', QR='예선 또는 강등', P='승진', PQR='승진, 자격 또는 강등', 홍보='승진 또는 강등', p q.='승진 또는 자격', R='위임'} 현지의 결과_정의된 = 거짓의 이것이 필요한지 확인합니다. 결과 필드에 사용 가능한 접두사 현지의 숨을 쉬다 = (아그스['result_interval'] 또는 '') .. '_' 숨을 쉬다 = (숨을 쉬다 == '_') 그리고. '' 또는 숨을 쉬다 이제 열 머리글에 대한 선을 정의합니다(옵션 또는 사용자 지정). 현지의 local_res_message = results_valides[아그스[숨을 쉬다..'res_col_message']] 또는 아그스[숨을 쉬다..'res_col_message'] 또는 '' 노트가 포함되어 있는지 확인합니다. 현지의 res_head_note = 아그스['note_message_res'] 현지의 res_head_note_text = '' 한다면 만석의 그리고. res_head_note 그리고나서 note_message = 진실의 res_head_note_text = 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', res_head_note} } 끝. 현지의 results_message_txt = scope="col" '..local_res_message..res_head_note_text..'\n' 상태 가져오기 옵션 현지의 t_상태 = p_스타일의.상황(아그스) 팀 목록에 대한 대체 구문 한다면 아그스['팀_순서'] 그리고. 아그스['팀_순서'] ~= '' 그리고나서 현지의 팀_순서_순서_순서 = (수에 달하여(아그스['team_order_start']) 또는 1) - 1 현지의 tlist = mw.본문.분열되다(아그스['팀_순서'], '%s*[;,]%s*') 위해서 k, tname 에 짝을 짓다(tlist) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 한다면 tname ~= '' 그리고나서 아그스['팀' .. (k + 팀_순서_순서_순서)] = tname 끝. 끝. 끝. 연속 팀 수에서 읽기(스폿을 건너뛰고 엔트리 무시) 하는 동안에 아그스['팀'..N_팀+1] ~= 영의 그리고. (bottom_pos < top_pos 또는 N_팀 < bottom_pos) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 N_팀 = N_팀+1 team_list 매개 변수에 몰래 두 번 추가합니다. 한 번은 실제에 사용됩니다. 하위 항목에서 위치 조회를 위한 두 번째 순위 이것은 Lua가 숫자와 문자열을 모두 인덱스로 허용하기 때문에 가능합니다. 팀_리스트[N_팀] = 아그스['팀'..N_팀] i^번째 항목은 X팀입니다. 팀_리스트[아그스['팀'..N_팀]] = N_팀 X팀 엔트리는 위치 i입니다. 끝. 선택적 합계 현지의 total_row_name = 'SPORTS_TABLE_총계' 한다면 예 아니오(아그스['show_message'] 또는 '아니오') 그리고나서 N_팀 = N_팀+1 아그스['팀' .. N_팀] = total_row_name 아그스['이름_' .. total_row_name] = '합계' 아그스['결과' .. N_팀] = total_row_name 아그스['col_' .. total_row_name] = '#ee' 팀_리스트[N_팀] = 아그스['팀' .. N_팀] 팀_리스트[아그스['팀'..N_팀]] = N_팀 끝. 위치 표시 현지의 위치_콜 = 예 아니오(아그스['show_message'] 또는 '예') 그리고. 진실의 또는 거짓의 그룹 또는 노트 표시 현지의 group_col = 예 아니오(아그스['show_groups'] 또는 '아니오') 그리고. 진실의 또는 거짓의 match_table 표시 여부 현지의 match_table = 예 아니오(아그스['show_message'] 또는 '아니오') 그리고. 진실의 또는 거짓의 현지의 p_sship = match_table 그리고. (style_def == '체스' 그리고. 요구하다('모듈:스포츠 결과/'..style_def) 또는 요구하다('모듈:스포츠 경기 결과')) 사용자 지정 위치 열 레이블 또는 참고 현지의 pos_label = 아그스['우편 제목'] 또는 '<abbr title="위치">Pos </abbr> 한다면 위치_콜 == 거짓의 그리고나서 pos_label = 영의 끝. 상태 표시 여부 현지의 show_status = 예 아니오(아그스['show_status'] 또는 '예') 그리고. 진실의 또는 거짓의 VTE 단추 텍스트 가져오기(공백이 아닌 텍스트에만 해당) 현지의 VTE_text = '' 한다면 (template_name ~= '') 그리고나서 VTE_text = 요구하다('모듈:'내브바')._navbar({ template_name, 미니의=1, 스타일.='prefix:right', 대괄호=1 }) https://en.wikipedia.org/w/index.php?oldid=832717047#Sortable_link_disables_navbar_links 의 경우 다음 부분을 제거하시겠습니까? 항상 고정됨 한다면 예 아니오(아그스['table_table'] 또는 '아니오') 그리고나서 VTE_text = mw.ustring.gsub(VTE_text, '<%/?abbr[^<>*>', ' ') 끝. 끝. 지정되고 가능한 경우 제목에 원본 추가 현지의 title_source = 거짓의 한다면 아그스['''비공식'''] 그리고. 아그스['source_source'] 그리고나서 아그스['''비공식'''] = 아그스['''비공식'''] .. 아그스['source_source'] title_source = 진실의 그렇지 않으면 아그스['테이블_테이블'] 그리고. 아그스['table_vmdk_source'] 그리고나서 아그스['테이블_테이블'] = 아그스['테이블_테이블'] .. 아그스['table_vmdk_source'] title_source = 진실의 끝. 테이블 앵커 추가 한다면 탁상_식탁자 ~= '' 그리고나서 표.삽입(t, '<span class="message" id=" .. 탁상_식탁자 .. '''>></span>\n') 끝. 열 머리글 쓰기 t_리턴 = p_스타일의.머리말(t,아그스,p_sub,pos_label,group_col,VTE_text,만석의,results_message_txt) 한다면 match_table 그리고나서 빈 열 머리글 추가 t_리턴.세어보세요 = t_리턴.세어보세요+1 표.삽입(t_리턴.tab_text,스코프="행" 클래스="분류할 수 없는" 스타일="배경-색:흰색, 테두리-위쪽:흰색, 테두리-아래쪽:흰색, 선폭:3pt;"\n') 나머지 헤더 추가 t_리턴 = p_sship.머리말(t_리턴,아그스,p_sub,N_팀,팀_리스트,수에 달하여(아그스['''비공식''']) 또는 1) 끝. t = t_리턴.tab_text 현지의 N_cols = t_리턴.세어보세요 테이블에 들어갈 항목 결정 어떤 팀을 보여줄 것인지 확인합니다(있는 경우). 현지의 ii_show = 팀_리스트[아그스['쇼 팀'] 또는 영의] 유의하지 않은 경우 0인 표시할 시작 및 종료 위치 현지의 n_to_show = 수에 달하여(아그스['show_limit']) 또는 N_팀 합법적이지 않거나 선언되지 않은 경우 "법적 가치"를 확인한 다음 모두 표시 현지의 체크_n = ((n_to_show>=(N_팀-top_pos+1)) 또는 (n_to_show<=1) 또는 (n_to_show~=수학.플로어(n_to_show))) 유효한 ii_show가 있는지도 확인합니다. 한다면 체크_n 또는 (것은 아니다. ii_show) 그리고나서 ii_start = top_pos ii_끝 = N_팀 또 다른 top_pos+1과 N_teams-1 사이의 적절한 정수입니다. 중간에 있으면 위와 아래가 같은 번호를 표시합니다. 상단 또는 하단에 있는 경우 정확한 숫자 표시 옆에 보여줄 사람이 몇 명입니까? 현지의 n_show_side = 수학.플로어(n_to_show/2) 한다면 (ii_show-top_pos+1)<=n_show_side 그리고나서 탑팀 ii_start = top_pos ii_끝 = top_pos+n_to_show-1 그렇지 않으면 ii_show>=(N_팀+1-n_show_side) 그리고나서 하위팀 ii_start = N_팀+1-n_to_show ii_끝 = N_팀 또 다른 정상적인 경우 ii_start = ii_show-n_show_side ii_끝 = ii_show+n_show_side 끝. 끝. 결과 열 현지의 new_res_ii = ii_start 열 유무 사전 확인 한다면 것은 아니다. 숨바꼭질 그리고나서 위해서 ii = ii_start, ii_끝 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 한다면 아그스[숨을 쉬다..'결과'..ii] 그리고. 아그스[숨을 쉬다..'text_' .. 아그스[숨을 쉬다..'결과'..ii]] 그리고나서 결과_정의된 = 진실의 끝. 끝. 끝. 사용하지 않는 경우 결과 헤더 제거 한다면 만석의 그리고. 것은 아니다. 결과_정의된 그리고나서 먼저 하나의 문자열로 가져온 다음 문자열 바꾸기를 사용하여 해당 헤더를 빈 문자열로 바꿉니다. 현지의 t_str = 끈으로 묶는(테이블.콘캣(t)) t_str = mw.ustring.gsub( t_str, results_message_txt, '' ) N_cols = N_cols-1 실제로 하나의 열이 더 적습니다. t = {} 표.삽입(t, t_str) 끝. 행 쓰기 현지의 team_name, team_code_ii, team_code_jj, pos_num, group_txt, note_local 현지의 note_string, note_local, note_local_num, note_id 현지의 note_id_list = {} 현지의 hth_id_list = {} 위해서 ii = ii_start, ii_끝 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 먼저 코드 가져오기 team_code_ii = 팀_리스트[ii] 이제 값 읽기 pos_num = 아그스['pos_'..team_code_ii] 또는 ii group_txt = 아그스['group_'..team_code_ii] 또는 ' ' team_name = 아그스['이름_'..team_code_ii] 또는 team_code_ii note_local = 아그스['참고_'..team_code_ii] 또는 영의 승진/자격/위임 태그가 필요합니까? 현지의 result_local = 아그스[숨을 쉬다..'결과'..ii] 또는 영의 현지의 bg_col = 영의 로컬 배경색 가져오기 한다면 result_local 그리고나서 bg_col = result_col[아그스[숨을 쉬다..'col_'..result_local]] 또는 아그스[숨을 쉬다..'col_'..result_local] 또는 '''비공식''' bg_col = '배경색:'..bg_col..';' 전체 스타일 태그 끝. 한다면 것은 아니다. bg_col 그리고나서 bg_col = 'background-color:투명;' 끝. 정의되지 않은 경우 기본값이 됩니다. 이 줄을 굵게 표시할지 여부 현지의 ii_fw = ii == ii_show 그리고. '볼드급: 굵은 글씨;' 또는 '중량: 정상;' 한다면 예 아니오(아그스['show_message'] 또는 '아니오') 그리고. team_code_ii == total_row_name 그리고나서 ii_fw = '볼드급: 굵은 글씨;' 끝. 메모가 있는지 확인하고, 있다면 텍스트를 준비합니다. 한다면 note_local 그리고. 만석의 그리고나서 노트에 대한 전역 검사를 true로 설정 note_message = 진실의 이제 노트에 대한 세 가지 옵션이 있습니다. 1) 전체 노트입니다. 2) 다른 노트에 대한 참조입니다(예: 팀 코드일 뿐입니다. 예: 노트_).AAA=텍스트, 참고_BBBB에 대한 노트가 AAA와 동일한 각주에 링크되어야 하는 BB=RADIUS). 2a) 다른 링크된 노트가 표에 표시된 부분에 있습니다. 2b) 노트의 부분이 표에 표시된 부분에 존재하지 않습니다. 한다면 것은 아니다. 아그스['참고_'..note_local] 그리고나서 옵션 1 이제 이에 대한 식별자를 정의합니다. note_id = 'table_note_'..team_code_ii..랜드발..'"' 문서에 더 많은 테이블이 있는 경우(그렇지 않으면 ID를 공유할 수 있음) 고유 ID에 대한 임의 끝 추가 note_id_list[team_code_ii] = note_id 호출 refn 템플릿 note_string = 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', 이름.=note_id, note_local} } 또 다른 옵션 2 메인 노트가 하위 테이블 내부에 있는 경우 두 옵션 중 하나의 옵션 2a입니다. 또는 해당 노트에 대한 다른 참조가 하위 테이블 내부에 있습니다. 기본적으로 정의되거나 메인 링크가 테이블에 있을 때 note_local_num = 팀_리스트[note_local] 한다면 note_id_list[note_local] 또는 ((note_local_num >= ii_start) 그리고. (note_local_num <= ii_끝)) 그리고나서 옵션 2a note_id = 'table_note_'..note_local..랜드발..'"' note_string = 틀:확장 태그{ 이름. = 'ref', 논병아리 = { 그룹. = '낮은 알파벳', 이름. = note_id} } 또 다른 옵션 2b 이제 이에 대한 식별자를 정의합니다. note_id = 'table_note_'..note_local..랜드발..'"' 고유 ID에 대한 임의 끝 추가 note_id_list[note_local] = note_id 호출 refn 템플릿 note_string = 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', 이름.=note_id, 아그스['참고_'..note_local]} } 끝. 끝. 또 다른 note_string = ''; 끝. 필요할 때 상태 삽입 현지의 status_string = '' 현지의 status_local = show_status 그리고. 아그스[숨을 쉬다 .. '상태_'..team_code_ii] 또는 영의 현지의 status_let_first = 진실의 현지의 curr_letter 정의된 경우에만 한다면 status_local 그리고나서 편지로 받아가세요. 위해서 jjj = 1,mw.ustring.렌(status_local) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 curr_letter = mw.ustring.위쪽의(mw.ustring.후보선수(status_local,jjj,jjj)) 존재 여부 확인 한다면 t_상태.코드[curr_letter] 그리고나서 첫 번째 편지인지 아닌지에 따라. 한다면 status_let_first 그리고나서 status_string = curr_letter t_상태.불렀다[curr_letter] = 진실의 status_let_first = 거짓의 또 다른 status_string = status_string..', '..curr_letter t_상태.불렀다[curr_letter] = 진실의 끝. 끝. 끝. 괄호/대시 및 굵게 표시(존재하는 경우)만 추가 한다면 것은 아니다. status_let_first 그리고나서 한다면 t_상태.위치 == '이전' 그리고나서 status_string = '<span style="particle-weight:bold">..스트링.하의(status_string)..–</span> 또 다른 status_string = <span style="part-weight:bold">('..status_string..')</span> 끝. 끝. 끝. 이제 행을 작성합니다. 한다면 예 아니오(아그스['show_message'] 또는 '아니오') 그리고. team_code_ii == total_row_name 그리고나서 표.삽입(t,- class="최하부"\n') 새 행 또 다른 표.삽입(t,' -\n') 새 행 끝. 한다면 위치_콜 그리고나서 표.삽입(t,style="텍스트 정렬: 가운데;'..ii_fw..bg_col..'" '..pos_num..'\n') 직위번호 끝. 한다면 만석의 그리고. group_col 그리고나서 표.삽입(t,style="..ii_fw..bg_col..'" '..group_txt..'\n') 그룹번호/이름 끝. 상태 위치를 기준으로 팀 문자열 순서 작성 현지의 team_string 한다면 t_상태.위치 == '이전' 그리고나서 team_string = status_string..team_name..note_string 또 다른 team_string = team_name..note_string..status_string 끝. 표.삽입(t,scope="row" style="text-align: left; 공백: nowrap;'..ii_fw..bg_col..'" '..team_string..'\n')팀(가능한 메모 포함) 콜 투 서브 펑션 t_리턴 = p_스타일의.배를 젓다(틀,t,아그스,p_sub,note_message,hth_id_list,만석의,랜드발,팀_리스트,team_code_ii,ii_start,ii_끝,ii_fw,bg_col,N_팀,ii,ii_show) t = t_리턴.t note_message = t_리턴.note_message hth_id_list = t_리턴.hth_id_list 이제 결과 열에 추가해야 할 항목을 확인합니다. 한다면 만석의 그리고나서 현지의 res_jjj 한다면 ii == new_res_ii 그리고나서 먼저 이 작업에 필요한 행 수를 확인합니다. N_rows_res = 1 jjj = ii+1 result_local = 아그스[숨을 쉬다..'결과'..ii] 또는 '' 현지의 cont_loop = 진실의 하는 동안에 (jjj<=ii_끝) 그리고. cont_loop 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 한다면 아그스['''비공식'''..끈으로 묶는(jjj-1)] 그리고나서 cont_loop = 거짓의 new_res_ii = jjj 또 다른 res_jjj = 아그스[숨을 쉬다..'결과'..jjj] 또는 '' 한다면 result_local == res_jjj 그리고나서 N_rows_res = N_rows_res+1 또 다른 cont_loop = 거짓의 new_res_ii = jjj 끝. 끝. jjj = jjj+1 끝. 이제 이 필드를 만듭니다(reuse ii_fw 및 bg_col). 굵게 표시(범위 내인 경우) 또는 표시되지 않음 한다면 ii_show 그리고. (ii_show>=ii) 그리고. (ii_show<=(ii+N_rows_res-1)) 그리고나서 ii_fw = '볼드급: 굵은 글씨;' 또 다른 ii_fw = '중량: 정상;' 끝. 배경색 가져오기 bg_col = 영의 한다면 아그스[숨을 쉬다..'결과'..ii] 그리고나서 bg_col = result_col[아그스[숨을 쉬다..'col_'..result_local]] 또는 아그스[숨을 쉬다..'col_'..result_local] 또는 '''비공식''' bg_col = '배경색:'..bg_col..';' 전체 스타일 태그 끝. 한다면 것은 아니다. bg_col 그리고나서 bg_col = 'background-color:투명;' 끝. 정의되지 않은 경우 기본값이 됩니다. 노트 확인 현지의 note_res_string, note_ref, note_text = '', '', '' 한다면 아그스['note_res_'..result_local] 그리고나서 note_message = 진실의 현지의 note_res_local = 아그스['note_res_'..result_local] 모든 항목이 유효한 경우 note_res_local을 테이블로 분할합니다. 현지의 멀티레프 = 1 현지의 note_res_local_table = mw.본문.분열되다(note_res_local, '%s*,%s*') 한다면 (#note_res_local_table > 1) 그리고나서 위해서 k, note_res_loc 에 짝을 짓다(note_res_local_table) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 멀티레프 = 멀티레프 * (아그스['note_res_' .. note_res_loc] 그리고. 1 또는 0) 끝. 또 다른 멀티레프 = 0 끝. 분할에 실패했으므로 내부에 hth_local이 있는 단일 항목 테이블을 만듭니다. 한다면 멀티레프 < 1 그리고나서 note_res_local_table = { note_res_local } 끝. 위해서 k,note_res_local 에 짝을 짓다(note_res_local_table) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 한다면 것은 아니다. 아그스['note_res_'..note_res_local] 그리고나서 다른 결과 노트를 가리키지 않습니다. note_ref = 숨을 쉬다..'res_'..result_local note_id = 'table_note_res_'..result_local..랜드발..'"' 식별자 note_text = note_res_local 또 다른 다른 결과 노트를 가리킵니다. note_ref = 숨을 쉬다..'res_'..note_res_local note_id = 'table_note_res_'..note_res_local..랜드발..'"' 식별자 note_text = 아그스['note_res_'..note_res_local] 끝. 이미 인쇄되었는지 확인합니다. 한다면 것은 아니다. note_id_list[note_ref] 그리고나서 인쇄 note_id_list[note_ref] = note_id note_res_string = note_res_string .. 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', 이름.=note_id, note_text} } 또 다른 참조 note_res_string = note_res_string .. 틀:확장 태그{ 이름. = 'ref', 논병아리 = { 그룹. = '낮은 알파벳', 이름. = note_id} } 끝. 끝. 끝. 텍스트 가져오기 현지의 text_result = 아그스[숨을 쉬다..'text_'..result_local] 또는 '' 한다면 text_result:경기('fbmulticomp') 그리고나서 ii_fw = 'filename:0;' .. ii_fw 한다면 text_result:경기('fbmulticompefn') 그리고나서 note_message = 진실의 끝. 끝. text_field_result = style="..ii_fw..bg_col..rowspan="..끈으로 묶는(N_rows_res)..'" '..text_result..note_res_string..'\n' 필요한지 여부 확인(모든 항목에 대해 공백인 경우에만) 한다면 결과_정의된 그리고나서 표.삽입(t,text_field_result) 끝. 끝. 끝. 필요한 경우 일치 행 삽입 한다면 match_table 그리고나서 현지의 다리 = 수에 달하여(아그스['''비공식''']) 또는 1 빈 셀 추가 표.삽입(t,style="background-color:white; 테두리 맨 위:white; 테두리 맨 아래:white;"\n') 이제 필요한 경우 결과와 일치하는 노트를 포함합니다. 위해서 JJ=top_pos,N_팀 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 team_code_jj = 팀_리스트[JJ] 한다면 ii == JJ 그리고나서 아무것도 또 다른 위해서 l=1,다리 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 현지의 m = (다리 == 1) 그리고. 'match_' 또는 '성냥' .. l .. '_' 현지의 match_note = 아그스[m..team_code_ii..'_'..team_code_jj..'_note'] 한다면 match_note 그리고나서 note_message = 진실의 존재할 때만 참고용 참조의 존재 여부를 처음 확인합니다. 한다면 것은 아니다. (아그스['참고_'..match_note] 또는 아그스[m..match_note..'_note']) 그리고나서 엔트리입니다. note_id = 'table_note_'..team_code_ii..'_'..team_code_jj..랜드발..'"' 문서에 더 많은 테이블이 있는 경우(그렇지 않으면 ID를 공유할 수 있음) 고유 ID에 대한 임의 끝 추가 note_id_list[team_code_ii..'_'..team_code_jj] = note_id note_string = 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', 이름.=note_id, match_note} } 또 다른 다른 곳에 존재하는지 확인 note_local_num = 팀_리스트[match_note] 또는 ii_끝 + 1 한다면 note_id_list[match_note] 또는 ((note_local_num >= ii_start) 그리고. (note_local_num <= ii_끝)) 그리고나서 존재합니다 note_id = 'table_note_'..match_note..랜드발..'"' 식별자 note_string = 틀:확장 태그{ 이름. = 'ref', 논병아리 = { 그룹. = '낮은 알파벳', 이름. = note_id} } 또 다른 이제 이에 대한 식별자를 정의합니다. note_id = 'table_note_'..match_note..랜드발..'"' 고유 ID에 대한 임의 끝 추가 note_id_list[match_note] = note_id 호출 refn 템플릿 note_string = 틀:확장템플릿{ 제목 = 'efn', 논병아리 = { 그룹.='낮은 알파벳', 이름.=note_id, 아그스['참고_'..match_note]} } 끝. 끝. 이제 일치 결과 문자열에 추가합니다. 아그스[m..team_code_ii..'_'..team_code_jj] = (아그스[m..team_code_ii..'_'..team_code_jj] 또는 '')..note_string 끝. 끝. 끝. 끝. 나머지 일치 행 추가 t = p_sship.배를 젓다(t,아그스,N_팀,팀_리스트,ii,ii_show,다리) 끝. 필요한 경우 분할을 삽입합니다(단일 선은 순위가 분할되었음을 나타내지만 마지막으로 표시된 위치에 있지 않을 때만 해당). 한다면 아그스['''비공식'''..ii] 그리고. (ii<ii_끝) 그리고나서 N_cols 기준 기본 크기(2*N_cols 필요) 표.삽입(t,- style="배경-색상:'..result_col['black1']..선 높이:3pt;"\n') 표.삽입(t,string.rep(' ',2*N_cols)..'\n') 끝. 끝. 테이블 닫기 표.삽입(t, ' }') 바닥글에 대한 정보 가져오기 현지의 갱신하다 = 아그스['업데이트'] 또는 '''비공식''' 현지의 start_date = 아그스['start_date'] 또는 '''비공식''' 현지의 원천 = 아그스['소스'] 또는 (title_source == 진실의 그리고. '') 또는 틀:확장템플릿{ 제목 = '필요 이상', 논병아리 = { 이유='소스 매개 변수가 정의되지 않음', 날짜.=os.날짜('%B %Y') } } 현지의 학급_학생 = 아그스['클래스_클래식'] 또는 영의 바닥글 텍스트 만들기 날짜 업데이트 현지의 matches_text = 아그스['filename_text'] 또는 '일치' 한다면 스트링.하의(갱신하다)=='완료' 또는 숨바꼭질 그리고나서 아무 것도 하지 마 그렇지 않으면 갱신하다=='' 그리고나서 빈 매개 변수 표.삽입(t_skin의,'업데이트됨'..matches_text..알 수 없는 상태에서 재생되었습니다.') 그렇지 않으면 스트링.하의(갱신하다)=='미래' 그리고나서 미래시작일 표.삽입(t_skin의,'첫 번째'..matches_text..재생됨: '..start_date..'. ') 또 다른 표.삽입(t_skin의,'업데이트됨'..matches_text..에서 재생됨..갱신하다..'. ') 끝. 바닥글 쌓기 여부 현지의 바닥글_파손 = 예 아니오(아그스['stack_stack'] 또는 '아니오') 그리고. 진실의 또는 거짓의 줄 바꿈 변수 현지의 stack_string = '<br>' 한다면 바닥글_파손 그리고. (것은 아니다. (스트링.하의(갱신하다)=='완료')) 그리고. 것은 아니다. 숨바꼭질 그리고나서 표.삽입(t_skin의,stack_string) 끝. 한다면 원천 ~= '' 그리고. 것은 아니다. 숨바꼭질 그리고나서 표.삽입(t_skin의,'소스:'..원천) 끝. 한다면 학급_학생 그리고. 만석의 그리고. show_class_message 그리고. 것은 아니다. 숨바꼭질 그리고나서 한다면 (#t_skin의 > 0) 그리고나서 표.삽입(t_skin의,'<br>') 끝. 표.삽입(t_skin의,'분류 규칙:'..학급_학생) 끝. 이제 명명된 상태에 대해 현지의 status_status = 거짓의 현지의 status_string = '' 현지의 curr_letter 위해서 jjj = 1,mw.ustring.렌(t_상태.편지들) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 curr_letter = mw.ustring.위쪽의(mw.ustring.후보선수(t_상태.편지들,jjj,jjj)) 한다면 t_상태.불렀다[curr_letter] 그리고나서 한다면 (바닥글_파손 그리고. status_status) 그리고나서 status_string = status_string..stack_string 끝. 한다면 t_상태.위치 == '이전' 그리고나서 status_string = status_string..'<span style="particle-weight:bold">..스트링.하의(curr_letter)..–</span>..t_상태.코드[curr_letter]..'; ' 또 다른 status_string = status_string..'<span style="particle-weight:bold">('..curr_letter..')</span>..t_상태.코드[curr_letter]..'; ' 끝. status_status = 진실의 끝. 끝. 이제 항목이 포함된 경우 ';'을(를) 제거해야 합니다. 한다면 status_status 그리고. 것은 아니다. 숨바꼭질 그리고나서 한다면 (#t_skin의 > 0) 그리고나서 표.삽입(t_skin의,'<br>') 끝. status_string = mw.ustring.후보선수(status_string,1,mw.ustring.렌(status_string)-2) 표.삽입(t_skin의,status_string) 끝. 노트 추가(해당되는 경우) 한다면 note_message 그리고나서 한다면 (#t_skin의 > 0) 그리고나서 표.삽입(t_skin의,'<br>') 끝. 표.삽입(t_skin의,'참고:') 참조 목록 크기 텍스트로 t_skin의 = '<div class="스포츠 테이블 노트">..테이블.콘캣(t_skin의)..'/div' t_skin의 = t_skin의..틀:확장템플릿{ 제목 = '노트리스트', 논병아리 = { 그룹.='낮은 알파벳'} } 또 다른 참조 목록 크기 텍스트로 t_skin의 = '<div class="스포츠 테이블 노트">..테이블.콘캣(t_skin의)..'/div' 끝. 기본 텍스트 테이블에 바닥글 추가 표.삽입(t,t_skin의) 앵커 링크 다시 쓰기 위해서 k=1,#t 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 한다면 t[k]:경기('%[%[#[^%[%]]*% ') 그리고나서 t[k] = mw.ustring.gsub(t[k], '(%[%[)(#[^%[%]]*% )', '%1' .. 베이스 링크 .. '%2') 끝. 끝. 추적 생성 한다면 것은 아니다. 아그스['추적 안 함'] 그리고나서 현지의 추적 받기 = 요구하다('모듈:스포츠 테이블/아그체크').확인. 현지의 경고_범주, 추적_범주 = 추적 받기(아그스, 틀:상위 항목 가져오기().논병아리) 한다면 #경고_범주 > 0 그리고나서 한다면 틀:전처리( "{{REVISIONID}}" ) == "" 그리고나서 위해서 k=1,#경고_범주 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다 경고_범주[k] = mw.ustring.gsub(경고_범주[k], '^%[%[범주:스포츠 테이블을 사용하는 페이지(.*)(.*)%]%]
