우선순위/심각도:
중간
플랫폼
운영 체제
Windows 11
브라우저
Google Chrome 139.0.7258.67
Discourse
dee24bd73b158ba97453f20035eabce430a1abcd
설명:
“정적 텍스트(preformatted text)” 서식은 두 가지 스타일이 있습니다:
- 인라인(inline): 산문 문장 내 비산문 콘텐츠(예: “
foo함수를 호출하세요”) 또는 단일 짧은 비산문 콘텐츠 줄에 사용됩니다. - 블록(block): 여러 줄의 비산문 콘텐츠에 사용됩니다.
사용자는 컴포저(composer)를 사용하여 서식을 적용할 때 두 가지 방법 중 하나를 취할 수 있습니다:
- 능동적(proactive): 서식화할 콘텐츠를 추가하기 전에 서식 모드를 전환합니다.
- 사후적(retroactive): 콘텐츠를 서식 없이 추가한 후, 해당 선택 범위를 선택하여 서식을 적용합니다.
“리치 텍스트 에디터” 모드에서 컴포저를 사용할 때, 여러 줄을 선택한 상태로 “정적 텍스트” 서식을 사후적으로 적용하면 인라인 스타일이 적용됩니다. 이로 인해 게시글이 읽기 어렵고, 비산문 콘텐츠(공유 코드의 경우 일반적인 요구 사항)를 복사하기가 어려워집니다.
재현 단계:
-
컴포저를 엽니다.
-
에디터 모드 전환 스위치를 “리치 텍스트 에디터” 위치로 설정합니다.
-
다음 콘텐츠를 게시글에 추가합니다:
void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: } -
게시글 내용을 선택합니다.
-
컴포저 툴바의 </> 버튼을 클릭합니다.
선택된 각 줄이 인라인 스타일로 개별적으로 서식화되었습니다:
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
올바른 동작은 콘텐츠를 단일 코드 블록으로 감싸는 것이어야 합니다:
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
추가 정보
마크다운 에디터는 여러 줄 선택에 “정적 텍스트” 서식을 사후적으로 적용할 때 선택된 내용을 코드 블록으로 넣는 올바른 동작을 수행합니다.
try.discourse.org의 "안전 모드"에서 이 결함을 재현할 수 있습니다.