위키백과:린트 오류

위키백과, 우리 모두의 백과사전.
(위키백과:린트에서 넘어옴)
린트 오류의 수정이 필요합니다.

린트 오류 문서에서는 미디어위키의 확장 기능 린터(Linter, mw:Extension:Linter/ko)에 대해서 설명합니다. 이 확장 기능은 위키백과의 문서가 갖고 있는 문제점 또는 깨지는 문법(마크업, markup)을 확인·분류하여 유형별 목록으로 보여줍니다.

린트 오류가 있는 문서들은 특수:린트오류 문서에서 확인할 수 있습니다.

배경[편집]

과거의 문법 수정 도구 Tidy(잘못된 문법을 고치는 HTML4 기반의 도구)에서 RemexHTML(잘못된 문법을 고치는 HTML5 기반의 도구)으로 전환하려면 문제가 있는 문법의 수정이 필요합니다. 이는 새로운 HTML5 표준으로 페이지를 표시(렌더링)하기 위해서이며, 과거의 도구는 오류가 발생하며 제대로 표시하지 못합니다. 린트 오류들이 수정된 이후에는 새 도구(RemexHTML)를 이용하여 HTML5 표준에 맞춘 페이지 표시(렌더링)가 가능해집니다.

특수:린트오류 목록에서 이 보푸라기와 같은 오류들을 유형별로 확인할 수 있습니다. 목록은 중요도 순으로 정리되어 있습니다.

도움말[편집]

  • 유형별 오류 페이지의 오른쪽 가장 위에는 해당 오류에 대한 도움말이 있습니다.
  • 각 오류 목록은 최근 편집한 문서 순서대로 정렬되며, 이에 따라 일부 문서는 더 잘 정렬됩니다.
  • 각 오류 목록은 오류가 있는 문서가 발견되면 새롭게 추가됩니다. 만약 유형에 대한 정의가 바뀌면, 목록은 비워지고, 다시 채워질 것입니다.
  • 각각의 '문서 정보' 가장 하단에는 문서가 갖고 있는 린트 오류 정보가 표시됩니다. 오류가 없는 경우에는 생략됩니다.
  • 오류 수정시에는 다음에 유의해야 합니다.
    • 다른 사용자의 발언을 변경해서는 안 됩니다.
    • 원래의 모양을 유지해야 합니다.
    • 첫 번째 시도에서 바로 수정하여 혼란을 줄여야 하며, '미리 보기'를 활용하면 좋습니다.
  • en:User:PerfektesChaos/js/lintHint에는 위키편집기에서 린트 오류를 식별하는 자바 스크립트 소도구 린트힌트(LintHint)를 설치하고, 사용하기 위한 지침이 있습니다.
  • 편집 후 반영되기 까지의 지연시간은 수 초에서 수 시간까지 걸릴 수 있습니다. 만약 위의 린트힌트(LintHint) 소도구 사용 시, 도구가 수정되었다고 확인하는 경우, 지연시간과 상관없이 거의 오류가 수정되었다고 볼 수 있습니다.
  • 참고 문서: 린트 (소프트웨어)

높은 우선순위[편집]

린트 오류: 삭제해야 하는 테이블 태그[편집]

불필요하게 추가된 표 문법이 있는 문서를 보여줍니다. 테이블 테그의 시작 부분{|이 중복 삽입되거나, 또는 끝나는 부분(|})이 빠져있는 경우 여기에 표시됩니다.

린트 오류: HTML5와 HTML4 간에 렌더링 차이가 있는 잘못 끼워넣은 태그[편집]

이 오류 목록은 태그가 잘못된 위치에 끼워넣어서 HTML4과 HTML5 각각의 페이지 표시(렌더링)가 달라지는 문서들을 보여줍니다. 주석 태그(<!--주석처리할 내용-->)를 이용해 태그 사이의 줄 바꿈을 없애거나, 여러 줄에 걸쳐 사용된 문법 태그(del, u, s, b, i 등)등을 각 줄에 추가함으로써 해결할 수 있습니다.

수정 전 수정 후 (대안 1) 수정 후 (대안 2)
<span>a

b</span>
<span>a</span>

<span>b</span>
<div> a

b</div>

영향을 받는 태그 목록[편집]

ABBR, BDI, BDO, CITE, DATA, DEL, DFN, INS, KBD, MARK,
Q, RB, RP, RT, RTC, RUBY, SAMP, SPAN, SUB, SUP, TIME, VAR

린트 오류: 기타 Tidy 치환 문제[편집]

현재는 임시용 분류입니다. 2017년 12월 기준으로 이 분류는 모든 위키에서 비어있는 상태입니다.

린트 오류: 목록 내의 여러 줄의 테이블[편집]

목록(*, #)문법 뒤에 표(테이블)가 삽입된 문서들을 보여줍니다. 경우에 따라 표가 아닌 문자열로 내용을 고치거나, 목록 문법을 지워서 고칠 수 있습니다.

린트 오류: 닫히지 않은 여러 개의 서식 태그[편집]

<span style="color:#0000ff;">파랑</span> span 태그는 왼쪽과 같이 시작(<span>)되고, 끝나야(</span>)합니다. 만약 이와 같이 짝지어 사용되지 않은 서식 태그가 있는 문서라면, 이 목록에 포함됩니다. <span></span> 꼴로 고치면 됩니다.

린트 오류: 문단 래핑 버그 우회 처리[편집]

span 태그에 white-space:nowrap CSS 속성이 있을 경우 문단에 내용이 많을 때 p 태그 주위의 span 래퍼가 렌더링을 잘못된 방식으로 변경할 수 있습니다.

수정 전 수정 전 내용을 사용한 렌더링 결과
(PHP-parser + RemexHTML)
수정 전 내용을 사용한 렌더링 결과
(PHP-parser + Tidy)
수정 후
<div><span style='white-space:nowrap'>
foo
</span>
</div>
<div><span style='white-space:nowrap'>
<p>foo</p>
</span>
</div>
<div>
<p><span style='white-space:nowrap'>foo</span></p>
</div>
<div>
<span style='white-space:nowrap'>
foo
</span>
</div>

린트 오류: 스스로 닫는 태그[편집]

<span id="exam1" />, <small>작게<small/>왼쪽 등과 같이 스스로 닫을 수 없는 태그를, 스스로 닫는 형식으로 사용한 경우 여기에 포함됩니다. 개행 태그(<br />) 태그 및 일부 미디어위키 문법만이 스스로 닫는 형식으로 사용됩니다.

린트 오류: font 태그로 둘러싸인 링크에 영향을 주는 Tidy 버그[편집]

과거의 도구(Tidy)는 링크 색 변경을 위해 링크 안에 있는 이 font 태그들을 이동합니다. 그러나 이는 수정되어야 합니다. 다음을 참고하시기 바랍니다.

수정 전 수정 후
<font color="#008000">[[초록]]</font>
[[초록|<span style="color:#008000;">초록</span>]]

린트 오류: Tidy 공백 버그[편집]

<span> 안에 공백이 있을 경우 Tidy는 공백을 제거하여 이동시켜주지만, HTML5에서는 이러한 처리를 하지 않습니다. 이 경우 상황에 따라 <span>의 줄 수가 수평으로 무한정 확장되는 문제가 발생할 수 있습니다. 아래와 같이 필요한 곳에 공백을 이동시켜 주면 해결됩니다.

수정 전 수정 후
<span>a </span><span>b</span>
<span>a</span> <span>b</span>

린트 오류: 문단 안의 닫히지 않은 인용 부호[편집]

강조점(''') 또는 기울임('') 문법이 닫히지 않은 경우 이 목록에 포함됩니다. 불필요한 경우 지우거나, 짝을 맞춰 닫아주면 됩니다.

중간 우선순위[편집]

린트 오류: 무효한 파일 옵션[편집]

파일 문법이 잘못되어 무효처리되는 파일 옵션이 있다면 이 목록에 포함됩니다. 중복되는 옵션(예: [[파일:test.jpg|섬네일|섬네일|테스트 그림]]) 또는 파일 문법에서 옵션 없이 연속되는 파이프(예: [[파일:test.jpg|섬네일||테스트 그림]]) 등이 있다면 여기에 포함되고, 중복되는 옵션이나, 파이프 문법 하나를 지워서 고칠 수 있습니다.

린트 오류: 포스터 부모 요소에 상속되는 내용[편집]

표 안에 내용이 있더라도 그 내용이 표 안에 표시되지 않는 경우 이 목록에 포함됩니다. 즉, 표 안의 내용은 표의 셀(cell), 머릿말 부분, 캡션 안에서만 표시가 가능합니다. 해당 위치가 아닌 곳에 내용이 추가되어 있다면 해당 내용을 표 밖으로 빼거나, 표 안의 적절한 위치로 배치시켜 주면 문제가 해결됩니다. 상세 내용은 mw:Help:Extension:Linter/fostered를 참고하십시오.

린트 오류: 잘못 끼워넣은 태그[편집]

일부 태그나 위키텍스트 마크업이 부모 태그 밖에서 종료되거나 관련 태그가 겹쳐 사용되어 발생합니다.

수정 전 수정 후
''' foo '' bar ''' baz ''
'''foo''' '' '''bar''' '' ''baz''
<b> foo <i> bar </b> baz </i>
<b> foo </b><i><b> bar </b></i><i> baz </i>
* a
* b <small> c
* d </small>
* e
* a
* b <small> c </small>
* <small> d </small>
* e
<small> foo
* a
* b
bar </small>
<small> foo </small>
* <small> a </small>
* <small> b </small>
<small> bar </small>
''<span>foo''</span>
<span>''foo''</span>

린트 오류: 다중 콜론 이스케이프[편집]

[[파일:Test.png]]는 그림을 표시하고, [[:파일:Test.png]]은 해당 그림의 링크를 표시합니다. 그러나 [[::파일:Test.png]]와 같이 사용하면 유효하지 않은 링크가 되어 일반 텍스트로 렌더링됩니다.

그림을 표시할 의도라면 콜론(:)을 모두 제거하고, 링크를 표시할 경우 콜론을 하나만 사용하도록 수정하면 됩니다.

낮은 우선순위[편집]

린트 오류: 존재하지 않는 종료 태그[편집]

여기에 속한 문서들에는 종료 태그가 없이 사용된 태그가 있습니다. 태그가 짝을 이룰 수 있도록 고치면 됩니다.

span의 시작, 종료 태그 사이에 여러 줄이 있는 경우 "잘려나간 태그" 경고가 함께 동반될 수 있습니다. 이 경우 span 태그는 div 태그로 치환하면 됩니다.

수정 전 수정 후
<span> rabbits
<span> rabbits</span>
<span>Foo

baz
</span>
<div>Foo

baz
</div>
<span>foo
<p>bar</p>
boo
</span>
<div>foo
<p>bar</p>
boo
</div>

린트 오류: 구식의 HTML 태그[편집]

여기에 속한 문서들은 구식 HTML 태그를 사용하고 있습니다. 해당 태그들은 새로운 태그들로 고쳐져야 합니다. 이러한 구식의 HTML 태그 사용이 확인되는 경우 편집 필터(특수:편집필터/98)에 의하여 '구식 태그' 태그가 붙게 됩니다. (참고 문서: mw:Help:Extension:Linter/obsolete-tag (영어))

일반 예시
구식 태그 변경 후 예시 예제 표시
<center> <div style="text-align: center;"> <div style="text-align: center;">중앙 정렬</div>
중앙 정렬
<font color=x size=y face=z> <span style="color: x; font-size: y; font-family: z;"> <span style="color: red;">적색 경보!</span> 적색 경보!
<span style="font-family: 돋움;">이것은 돋움 글꼴입니다</span> 이것은 돋움 글꼴입니다
<strike> <del> (편집 표시용) <del>예</del> 아니오 아니오
<s> (편집 표시 이외의 용도) 이 도킹 스테이션의 가격은 <s>45,000원</s> '''현재 25,000원입니다!''' 이 도킹 스테이션의 가격은 45,000원 현재 25,000원입니다!
<tt> <code> (소스 코드용) 줄 바꿈 없는 공백의 경우 <code>&nbsp;</code>를 사용하십시오 줄 바꿈 없는 공백의 경우 &nbsp;를 사용하십시오
<kbd> (사용자 입력용) <kbd>내비밀번호</kbd> 내비밀번호
<var> (변수용) <var>age</var>=65 age=65
<samp> (출력, 함수, 태그 이름용) <samp>nowiki</samp> nowiki
<span style="font-family: monospace;"> (그 외의 모든 용도) <span style="font-family: monospace;">입력한 글자</span> 입력한 글자
<big> <span style="font-size:larger"></span> <span style="font-size:larger">글자 크기를 크게</span> 글자 크기를 크게
<center>의 경우의 예시
특수:린트오류/obsolete-tag
수정 전 수정 후
<center>문장</center>
<div style="text-align: center;">문장</div>
<center>
{| class="wikitable"
...
|}
</center>
{| class="wikitable" style="margin: auto;"
...
|}
<center>[[파일:파일명.jpg|설명]]</center>
[[파일:파일명.jpg|center|설명]]
<center>
<gallery>
파일:파일명1.jpg|파일설명1
파일:파일명2.jpg|파일설명2
</gallery>
</center>
<gallery class="center">
파일:파일명1.jpg|파일설명1
파일:파일명2.jpg|파일설명2
</gallery>

perrow 변수가 있을 경우 class="center"와 호환되지 않으므로 삭제할 것.

린트 오류: 잘려나간 태그[편집]

종료 태그는 있으나 시작 태그가 없어서 발생하는 문제입니다. 불필요한 경우 종료 태그를 지우거나 시작 태그를 넣어서 고치면 됩니다.

외부 링크[편집]