mirror of
https://github.com/sotam0316/brain_dogfood.git
synced 2026-04-24 19:48:35 +09:00
1.8 KiB
1.8 KiB
버그 리포트: #20260417-01
버그 내용
- Ctrl + Enter 단축키 저장 불능: 에디터에서
Ctrl + Enter를 눌렀을 때 작성 창은 정상적으로 닫히는 것처럼 보이나(포커스 해제 등), 실제 저장 로직이 호출되지 않아 데이터가 손실되는 문제. - #ID 내부 링크와 해시태그 충돌: 본문 내의
[[#123]]형태의 내부 링크가 해시태그(#123)로 오인되어 백엔드 메타데이터 정리 과정에서 삭제되거나 태그 목록에 추가되는 문제.
조치 사항
- 프론트엔드 조치:
static/app.js에서 에디터 초기화 시 저장 핸들러 콜백을 명시적으로 전달.- 에디터 초기화 및 작성기 초기화 순서를 콜백 정의 이후로 조정하여 안정성 확보.
EditorManager.js내부의 캡처 단계 키다운 이벤트 리스너가 해당 콜백을 정상적으로 호출하도록 보장.
- 백엔드 조치:
app/utils/__init__.py의 해시태그 추출 및 삭제 정규표현식 수정.- 부정 후방 탐색(
(?<!\[\[))을 추가하여#앞에[[가 오는 경우 태그 처리에서 제외. - 수정된 패턴:
(?<!#)(?<!\[\[)#(\w+)
향후 주의사항
- 특수 문법 충돌 주의: 새로운 대괄호(
[[ ]]등) 또는 특수 기호를 사용하는 문법을 추가할 때는 기존의 정규표현식 기반 메타데이터 추출기(parse_metadata)와의 충돌 여부를 반드시 사전 검증해야 함. - 키보드 이벤트 우선순위: Toast UI 등 서드파티 라이브러리를 사용할 경우, 라이브러리 내부에서 이벤트를 전파 중단(stopPropagation)할 수 있으므로, 단축키 처리 시 캡처 단계에서 처리하거나 라이브러리 제공 옵션을 활용해야 함.