마크 다운 : 번호 매기기 목록 계속


474

다음 마크 다운 코드 item 3에서 목록 번호 3으로 시작 하고 싶습니다. 그러나 마크 다운 사이의 코드 블록으로 인해이 목록 항목을 새 목록으로 시작합니다. 그 행동을 막을 방법이 있습니까?

원하는 출력 :

1. item 1
2. item 2

```
Code block
```

3. item 3

생성 된 출력 :

  1. 항목 1
  2. 항목 2

Code block

  1. 항목 3

4
올바른 해결책 은 다음과 같습니다 . Macmade의 답변에있는 삼중 백틱은 실제로 줄 <code>바꿈이 있는 HTML 요소를 생성 합니다. 이는 구문 강조 표시가 불가능하며 코드 위에 눈에 띄게 강조 표시되는 빈 줄이 추가로 있습니다.
Dan Dascalescu

1
당신이 정말로 필사적이라면,에서와 같이 사용하려는 숫자와 모든 후속 항목에 대한 HTML 문자 코드를 찾을 수 있습니다 &#50;&#57;. this is list item number 29. 그러나 모든 마크 다운 파서에서는 작동하지 않을 수 있습니다.
Roy Tinker

답변:


621

글 머리 기호 사이에 내용을 들여 쓰기하려면 4 개의 공백을 사용하십시오.

1. item 1
2. item 2

    ```
    Code block
    ```
3. item 3

생산 :

  1. 항목 1
  2. 항목 2

    Code block

  3. 항목 3

5
그렇습니다. 들여 쓰기는 파서가 코드 블록이 목록 항목 2에 속한다는 것을 명확하게합니다. 그렇지 않으면 정상적인 단락 일 뿐이며 목록이 끝납니다.
Macmade

42
그러나 ... 들여 쓰기를 원하지 않으면 어떻게해야합니까? 내가 아는 한 Markdown은 해결책이 없습니다. 목록을 시작한 다음, 목록에 대한 메타 주석 인 텍스트를 중지하고 제공하는 것은 당연한 일입니다. 즉, 논리적으로 목록의 일부인 텍스트없이 목록에 대한 메타 주석입니다. 그런 다음 목록을 계속하십시오. 마크 다운은 우리가 그렇게하기를 원하지 않습니다. Markdown은 사람들이 표현하기를 원하지 않는다는 생각의 한 형태입니다. Markdown은 표현 방법을 모르고 Markdown은 너무 자유 롭다고 생각합니다. 도구는 생각을 따라야합니다. 한숨. HTML로 쓰거나 PDF를 만들 수 있습니다.
Mars

2
나를 위해 전혀 작동하지 않는 것 같습니다. 위와 같이 간단한 번호 매기기 목록이 있고 들여 쓰기 및 줄 바꿈이 있습니다. 여전히 1에서 다시 시작합니다.
Ray

10
내가 시도한 소수의 Markdown 편집기 (Bitbucket, Tumblr)에서는 작동하지 않습니다. 제대로 들여 쓰기 된 코드 블록 대신 인라인 코드를 렌더링합니다.
thdoan

2
IntelliJ에서는 번호가 매겨진 블록의 맨 아래에 몇 개의 빈 줄이 있는지 차이를 만듭니다. 두 줄을 비워두면 번호 매기기가 다시 시작됩니다. 하나만 남겨두고 계속합니다.
Rhubarb

36

Macmade의 솔루션에서 "코드 블록"위에 추가 코드 줄이 어떻게 표시되는지 확인하십시오.

다음은 두 가지 더 나은 솔루션입니다.

  1. 추가 4 공백으로 코드 블록을 들여 쓰십시오 (따라서이 중첩 된 목록 예에서 12는 보통 8). 이것은 코드를 <pre>요소 에 넣습니다 . SO에서는 4 개의 공백 으로 들여 쓰기 된 구문 강조 를 지정할 수도
    <!-- language: lang-js -->있습니다 (중첩 목록으로 인해 +1).

    1. 항목 1
    2. 항목 2

      Code.block('JavaScript', maybe)?
    3. 항목 3

  2. 또는 코드 블록을 백틱 내에 넣고 4 개의 공백으로 들여 쓰기하십시오 (여기서 중첩 된 목록으로 인해 1 개 추가). <code>내부 에 요소 가있는 들여 쓰기 된 텍스트 단락이 정기적으로 나타납니다 . 이것은 당신이 구문 강조 할 수없는 것입니다 :

    1. 항목 1
    2. 항목 2

      Code block

    3. 항목 3

참고 :이 답변에서 "편집"을 클릭하면 기본 마크 다운 코드를 볼 수 있습니다. 저장할 필요가 없습니다;)


27
이것은이 특정 문제에 대한 해결책이지만, 중간에 텍스트를 입력 한 후 다음 번호에서 마크 다운 목록을 다시 시작하는 문제에 대한 일반적인 해결책은 아닙니다. 이렇게 할 수있는 방법이 없어서 나를 미치게합니다. 마크 다운에 관한 다른 모든 것이 훌륭합니다.
Mars

@ Mars DavidT의 답변 에서 볼 수 있듯이 일반적인 해결책은 텍스트를 여러 개의 공백으로 들여 쓰는 것 입니다. 예를 들어, 4 개 대신 1 개의 공백을 추가하면 코드 블록을 만들지 않고도 중간에 텍스트를 삽입 할 수 있습니다.
ClydeTheGhost

36

기존 답변의 확장으로. 코드 블록 이외의 번호로 된 목록을 계속 사용하려는 경우. 예를 들어 두 번째 단락. 두 번째 단락은 최소한 1 칸 들여 쓰기하십시오.

가격 인하:

1. one
2. two

 three
3. four

산출:

  1. 하나

1
단! 일련의 의사 코드 블록과 MathJax 방정식이있었습니다. 이것은 내가 필요한 것입니다.
xtian

GitHub Wiki에서는 작동하지 않습니다. 공백을 더 추가하면 적어도 숫자가 위의 숫자와 같은 유형이됩니다. : rofl :
Chaim Eliyah

1
@ChaimEliyah 그게 전부 때문에 확인 GitHub의이 (IM 확실히 내가 이전에이 호기심 건너 한) 인하를 맛 사용하지 않습니다 위키 99 IM %
철주

또한 목록 항목이 끝나기 전에 일부 텍스트, 코드 및 마지막으로 더 많은 텍스트를 포함하는 목록 항목이있는 상황을 처리합니다.
Frotz

14

탭을 사용하여 코드 블록을 들여 쓰면 전체 블록이 한 줄로 만들어집니다. 이를 피하려면 html 순서 목록을 사용해야합니다.

  1. 항목 1
  2. 항목 2

코드 블록

<ol start="3">
  <li>item 3</li>
  <li>item 4</li>
</ol>

13

Macmade의 솔루션은 더 이상 Github Pages의 Jekyll 인스턴스에서 더 이상 작동하지 않지만 kramdown github repo의 문제 에서이 솔루션 을 발견 했습니다 . OP의 예는 다음과 같습니다.

1. item 1
2. item 2

```
Code block
```

{:start="3"}
3. item 3

내 문제를 직접 해결했습니다.


3
불행히도 이것은 GitHub readme 파일에서 작동하지 않습니다. :(
Nostalg.io

7

출처;

<span>1.</span> item 1<br/>
<span>2.</span> item 2
```
Code block
```
<span>3.</span> item 3


결과;

1. 항목 1
2. 항목 2 Code block 3. 항목 3


4

주석에 언급 된 사용자 Mars와 같이 목록 항목 사이의 행을 들여 쓰지 않으려면 pandocexample_lists기능을 사용할 수 있습니다 . 그들의 문서에서 :

(@)  My first example will be numbered (1).
(@)  My second example will be numbered (2).

Explanation of examples.

(@)  My third example will be numbered (3).

예! 이것은 훌륭하게 작동했습니다. 잘 했어.
javadba 19

이것이이 문제에 대한 가장 보편적 인 해결책입니다. 들여 쓸 필요가 없으며 목록 요소 사이에 표제가있는 경우에도 작동합니다.
lillemets

(@). 글로벌 계속 목록에 해당이 (그래서 사용 하나만있을 수 pandocstartnum당신은 당신이 원하는 번호로 정렬 된 목록을 시작할 수 있습니다 확장하고 그냥 작동합니다.
아비드 H. Mujtaba

2

마침표 대신 목록 번호를 괄호로 묶습니다.

(1) 항목 1
(2) 항목 2 code block (3) 항목 3


5
이것은 <ol>and <li>elem을 파괴 하고 대신 <p>태그로 묶습니다 . 또한 말 그대로을 얻습니다 (1).
jmargolisvt

2
나는 그것이 의도라고 생각합니다.
Gal

1

들여 쓰기 된 하위 블록을 줄 바꿈으로 분리하는 Github 에서이 문제를 해결했습니다. 예를 들어 항목 1을 쓴 다음 Enter 키를 두 번 누르십시오 (새 단락 인 것처럼), 블록을 들여 쓰기하고 원하는 것을 작성하십시오 (블록 코드, 텍스트 등). 마크 다운 목록마크 다운 줄 바꿈 에 대한 자세한 내용 .

예:

  1. 아이템 하나
  2. 두 번째 항목

    this block acts as a new paragraph, above there is a blank line

  3. 항목 3

    some other code

  4. 아이템 4

0

Markdown 사용의 특정 컨텍스트에 대해이 동작을 수정하는 사용 가능한 여러 확장 기능도 있습니다.

예를 들어 python-markdown의 sane_lists 확장자 ( 예 : mkdocs 에서 사용)는 마크 다운 목록에 사용 된 숫자를 인식합니다. 이 확장을 활성화하면됩니다.arkdown.markdown(some_text, extensions=['sane_lists'])


0

텍스트를 이전 목록 항목에 맞추고 "큰"줄 바꿈을 피하려면 목록 항목 끝에 두 공백을 사용하고 공백이있는 텍스트를 들여 씁니다.

출처 : (점은 공백입니다. ;-))

1.·item1··
····This is some text
2.item2

결과:

  1. item1
    이것은 텍스트입니다
  2. item2
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.