Development Tip

GitHub가 Markdown을 사탄 적으로 망친다-666을 DCLXVI로 변경

yourdevel 2020. 10. 2. 23:22
반응형

GitHub가 Markdown을 사탄 적으로 망친다-666을 DCLXVI로 변경


내 GitHub 저장소 에는 추가 정보 만 있습니다. 이 readme에서는 로컬로 다음과 같이 썼습니다.

Factoids:
 - There are about six different ways to do everything in Forked.
 - There are actually six different ways to enter loops.
 - There are six directionals and six I/O commands.
 - 666. ha.

마지막 줄을 강조합니다. GitHub가 보여 주기로 결정한 것은 666 .

dclxvi

DCLXVI666 의 로마 숫자 입니다.

이것은 정말 나를 놀라게했다. 내 로컬 파일과 원시 파일 모두 666.

GitHub는 무엇을하고 있으며, 번호가 지정되지 않은 목록의 들여 쓰기가 엉망인 이유는 무엇입니까? 이스터 에그입니까, 아니면 사탄 벌레입니까?


이것은 github / markup issue 991 이 뒤 따르는 것 같습니다 . 순서가 지정된 하위 목록에서 십진수가 자동으로 로마 숫자로 바뀝니다.

문제의 원인을 찾았습니다. CSS입니다

이것은 중첩 된 순서 목록이 HTML로 렌더링되는 예상되는 방법입니다.

HTML에서는 예상되지 않습니다. https://jsfiddle.net/tf5jtv8s

기본 HTML 동작은 수정하지 않습니다.

ol ol,ul ol{list-style-type:lower-roman}

나는 CSS를 모르지만 이것이 문제의 원인이라는 것을 이해합니다. CSS를 비활성화하면 예상되는 결과를 얻을 수 있습니다. (저는 모바일에서 왔기 때문에 브라우저 검사기를 사용할 수 없습니다.)

" GitHub Flavored Markdown의 공식 사양 "에서 언급했듯이 GitHub markdown spec GFM : GitHub Flavored Markdown SpecCommonMark Spec 위에 빌드됩니다 .

그리고 Tommi Kaikkonen그의 답변 에서 언급했듯이 , 정렬 된 목록은 666 다음에 오는 점 때문입니다. GFM 사양 섹션 5.2를 참조하십시오 .

6.1 절 에서 언급했듯이 ASCII 구두점 문자는이 문제를 피하기 위해 백 슬래시 이스케이프 처리 될 수 있습니다.
그것의 의미는:

- 666\. ha.

( ForNeVeR답변 에 명시 적으로 표시된대로 )

이것이 666GitHub README마크 다운 에서 해당 숫자가 로마 숫자로 변경되는 이유입니다 .


Mike Lippert 는 다음과 같이 말했습니다.

목록의 첫 번째 요소이므로 inot으로 표시되어야합니다 dclxvi.
마크 다운 순서 목록은 사용 된 실제 숫자와 순차적으로 숫자를 무시하며이를 변경하는 방법을 보지 못했습니다.

그러나 아니요 : dclxvi생성 된 html 코드가 <ol start="666">이므로 GFM 사양 과 일치 합니다 .

목록 항목이 정렬 된 경우 정렬 된 목록 마커에 따라 시작 번호도 지정됩니다. "

(여기서 ' 666'는 정렬 된 목록 표시 자입니다.)

Mike는 다음과 같이 덧붙입니다.

@VonC 다른 사람을 위해 VonC의 문서 링크에서 발췌 한 또 다른 유용한 내용이 있습니다.

"순서가있는 목록의 시작 번호는 초기 목록 항목의 목록 번호에 의해 결정됩니다. 후속 목록 항목의 번호는 무시됩니다."


또한 간격이 엉망인 이유는 무엇입니까? 나는 당신의 대답에서 그것을 잡지 못했습니다.

정렬 <ol>되지 않은 목록 항목 에서 정렬 된 목록을 얻습니다 <li>.

<ul>
  <li>
    <ol start="666">
      <li>ha.</li>
    </ol>
  </li>
</ul>

GitHub CSS 규칙은 다음과 같습니다.

.markdown-body ol {
    padding-left: 2em;
}

을 넣으면 대신 3em얻을 것입니다.
올바른 패딩

잘못된 패딩


후 기간을 추가 666차종이 정렬 된 목록 마커 .

GitHub는 로마 숫자를 사용하여 정렬 된 목록 마커를 렌더링하는 CSS를 선언합니다.

ol ol,ul ol {
    list-style-type: lower-roman
}

마침표를 백 슬래시로 이스케이프하면 올바른 출력이 표시됩니다.


다른 답변은 문제가 있는지 설명하는 데 능숙하지만 문제를 해결 하는 방법에 대한 정확한 예는 제공하지 않았습니다 .

그리고 당신이 이미 그것을 해결 한 것으로 보인다 불완전한 방식 으로 텍스트를 교체,

- `666`. ha.

숫자 뒤의 점을 이스케이프하여 일반 텍스트처럼 보이게 만드는 일반적인 방법이 있습니다 (순서있는 목록 레이블이 아님).

- 666\. ha. (this will render as you probably want)

참고 URL : https://stackoverflow.com/questions/44619165/github-satanically-messing-with-markdown-changes-666-to-dclxvi

반응형