강조 표시를 해제할 때 볼드/이탤릭 형식을 제거하면 텍스트 강조가 올바르게 표시되지 않음

이 문제는 조금 이상하지만, Ctrl+I replaces bold formatting instead of adding additional formatting 링크와 함께 발견했습니다.

재현 방법:

  1. "test"를 입력하고 선택합니다.
  2. **test**를 얻기 위해 Ctrl+B를 누릅니다.
  3. 전체 텍스트 **test**를 선택합니다(이것은 볼드 포맷을 적용한 직후에는 다소 이상해 보일 수 있지만, 일반적인 워크플로우에서는 더 합리적으로 발생할 수 있다고 생각합니다).
  4. 볼드 포맷을 제거하기 위해 Ctrl+B를 누릅니다.

기대 결과: ** 포맷이 제거되고 단어 전체인 test가 선택된 상태가 됩니다.
실제 결과: ** 포맷은 제거되지만, st만 선택된 상태가 됩니다(이는 선택 범위를 먼저 수정하지 않고는 단어에 추가 포맷을 적용할 수 없다는 뜻입니다).

image

이텔릭에서 Ctrl+I를 사용할 때도 동일한 현상이 발생하지만, 마지막에 est가 선택되므로, 이는 제거되는 포맷 문자의 수에 영향을 받는 것으로 보입니다.

왼쪽 2자와 오른쪽 2자를 특히 선택 해제하는 것 같습니다. 예를 들어:

**strong**

st가 선택 해제됩니다. 다시 볼드 처리를 한 뒤 전체를 다시 선택하고, 볼드를 해제하면 오른쪽 2자가 잘못 제거됩니다.

st**rong**

이것은

**rong

이 됩니다.