Docs | A- | A+ | -/-
검색 입력창(Find)에서 타이핑할 때마다 자동 검색이 실행되는 현재 동작을 옵션화하여,
옵션이 꺼져 있을 때는 Enter(또는 F3/Shift+F3) 로만 검색이 실행되게 한다.
EN_UPDATE가 발생하여 무의미한 검색 스레드가 반복 실행됨src/Toolbar.cpp:546 부근 WndProcToolbar()WM_COMMAND + EN_UPDATE + hEdit == win->hwndFindEdit 조건에서:
Edit_GetModify()가 true이면FindTextOnThread(win, TextSearch::Direction::Forward, false) 호출src/Toolbar.cpp:550, src/Toolbar.cpp:553즉, 자동 검색은 툴바 Edit 컨트롤의 EN_UPDATE 처리로 구현되어 있음.
src/Toolbar.cpp:606 (WndProcEditSearch, WM_CHAR, VK_RETURN)
FindPrev(win)FindNext(win)src/Toolbar.cpp:632 (WM_KEYDOWN, VK_F3)src/SearchAndDDE.cpp:467 오버로드 FindTextOnThread(win, direction, showProgress) 경유
Edit_GetModify() 기반으로 신규 검색/다음 검색 구분즉, 자동검색을 끄더라도 Enter/F3 기반 검색은 기존 구조로 자연스럽게 유지 가능.
Settings.h에 추가하지 않고 생성 스크립트에서 정의:
cmd/gen-settings.ts (프로젝트 규칙: agents.md:19-24)ShowToolbar 등 GlobalPrefs 필드가 cmd/gen-settings.ts:660+ 영역에서 정의됨src/Settings.hcmd/gen-settings.ts의 GlobalPrefs 필드 목록에 bool 설정 추가:
FindAsYouTypeBool, true (기존 동작 유지)"if true, typing in find box triggers search automatically; if false, search runs only on Enter/F3"왜 기본값 true인가:
- 기존 사용자 동작을 깨지 않음 (하위 호환)
- IME 사용자/원하는 사용자만 명시적으로 끌 수 있음
대안: 기본값을
false로 둘 수도 있으나 기존 UX 변화 폭이 크므로 비권장.
아래를 실행해 생성물 갱신:
bun cmd/gen-settings.ts예상 반영 파일:
- src/Settings.h (GlobalPrefs struct + metadata)
- 고급 설정 문서 파일(생성 스크립트가 관리하는 문서)
주의: - 생성 파일을 수동 편집하지 않고 스크립트로 갱신해야 일관성 유지.
src/Toolbar.cpp의 자동검색 조건(EN_UPDATE)에 새 옵션 체크 추가:
현재(개념):
- ... && gGlobalPrefs->showToolbar
변경 후(개념):
- ... && gGlobalPrefs->showToolbar && gGlobalPrefs->findAsYouType
실제 적용 위치:
- src/Toolbar.cpp:550 조건문
- 검색 실행 호출부는 그대로 유지 (FindTextOnThread(..., false))
효과:
- FindAsYouType = false일 때 IME 조합 중 EN_UPDATE가 와도 자동 검색 미실행
- Enter/F3 검색 경로는 그대로 동작
FindAsYouType = true
FindAsYouType = false
Ctrl+F 후 포커스 이동/찾기 박스 동작 회귀 여부SearchAndDDE.cpp:471+) 이상 여부bun ./cmd/build.ts 로 컴파일 확인옵션이 사용자 노출되는 고급 설정이므로 다음 반영 권장:
docs/md/Version-history.md의 next 섹션에 항목 추가
FindAsYouType advanced setting to disable auto-search while typing in find box”(고급 설정 본문 문서는 gen-settings.ts 생성물로 자동 반영될 가능성이 큼)
cmd/gen-settings.ts (새 설정 정의)src/Toolbar.cpp (자동 검색 조건 분기)src/Settings.h (생성 결과)docs/md/Version-history.md (수동 반영 시)cmd/gen-settings.ts에서 원천 정의 후 생성FindAsYouType 고급 설정이 설정 파일/문서에 노출됨FindAsYouType=false에서 타이핑 자동 검색이 발생하지 않음