Discourse가 붙여넣은 탭 구분 목록을 자동으로 표로 변환합니다

사용자가 복사하여 붙여넣기하면

	```sh
	systemctl reboot
	```

이 내용을 Discourse의 편집 폼에 붙여넣으면 해당 콘텐츠가 다음과 같이 변합니다.

||```sh|
|---|---|
||systemctl reboot|
||```|

이것은 오류입니다. 분명히 목록이지 표가 아니기 때문입니다.

저는 discuss.kde.org와 meta.discourse.org에서 이 문제를 테스트했습니다.

	```sh
	systemctl reboot
	```
	```sh
	systemctl reboot
	```

@JammyDodger, 다시 시도해 보세요. 목록 번호를 제거했습니다. 이제 안정적으로 작동하는 것 같습니다.


참고로, 댓글을 선택 인용하면 저에게 다음과 같은 결과가 나타납니다.

[quote="JammyDodger, post:2, topic:266325"]
Reboot:

0. ```
systemctl reboot
```

```
0.	Reboot:
	```sh
	systemctl reboot
	```
```
[/quote]

…이것이 올바른가요?

솔직히 말해서, 이 시점에서 내가 무엇을 복사해서 붙여넣어야 하는지 정확히 모르겠어요. :slight_smile:

하하.

	```sh
	systemctl reboot
	```

페이지에서 드래그하여 텍스트를 선택하여 복사하면 다음과 같은 결과가 나옵니다:

하지만 복사 버튼을 사용하여 복사하면:

붙여넣기 시 예상대로 텍스트만 제대로 가져와집니다.

“복사” 버튼을 사용하여 클립보드에 저장된 내용은 다음과 같습니다:

TEXT:
b'```sh\n\tsystemctl reboot\n\t```'
text/plain:
b'```sh\n\tsystemctl reboot\n\t```'

페이지에서 드래그하여 선택했을 때의 클립보드 내용은 다음과 같습니다:

TEXT:
b'\t```sh\n\tsystemctl reboot\n\t```'
text/html:
b'<span style="color: rgb(199, 199, 199); font-family: Consolas, Menlo, Monaco, &quot;Lucida Console&quot;, &quot;Liberation Mono&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, monospace; font-size: 17.008px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(60, 60, 60); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">\t```sh\n\tsystemctl reboot\n\t```</span>'
text/plain:
b'\t```sh\n\tsystemctl reboot\n\t```'

아마도 각 줄의 시작 부분에 있는 탭 정렬(tab stop)이 문제를 일으키는 것 같습니다 - 클립보드 내용을 파싱할 때 첫 번째 열이 항상 비어 있으면 리스트로 취급하지 않는 방식으로 해결할 수 있을 것입니다.

이것은 다소 병적인(pathological) 상황인 것 같습니다 - 이것이 발생하는 자연스러운 상황이 있을까요? 일반적으로 게시글에는 탭 정렬 문자가 없습니다.

컴퓨터의 관점에서는 빈 첫 번째 열을 가진 탭으로 구분된 테이블과 정확히 같은 모습으로 보입니다.

7개의 좋아요

수년간 깨달은 한 가지는 드래그로 선택해서 복사 붙여넣기를 절대 믿지 말라는 거야…

이는 사용자가 결정해야 할 사항일 것입니다.

```tsv
```

결국, 탭 구분 테이블은 줄바꿈이 활성화된 경우 작동하지 않아야 하므로, 스크롤을 강제하는 무엇으로 감싸야 합니다.

그리고, 물론, 들여쓰기(목록이나 펜스 코드 블록을 구분하기 위해)

도 매우 유효한(그리고 일반적인) 마크다운입니다.