검색 가이드
ZetoPad의 검색 엔진은 이 앱의 가장 강력한 무기입니다. 3년 전에 작성했던 바로 그 한 줄의 코드를 0.01초 만에 찾아낼 수 있도록 설계되었습니다.
검색의 원리
Cmd+F를 누르거나, 목록이 선택된 상태에서 바로 타이핑을 시작하세요. ZetoPad는 BM25라는 최첨단 검색 랭킹 알고리즘을 사용하여 가장 연관성 높은 스니펫을 찾아줍니다.
- 빈도(Term Frequency): 검색어가 스니펫 안에 얼마나 자주 등장하는지 봅니다.
- 희소성(Uniqueness): 흔한 단어보다 희귀한 단어에 더 높은 점수를 줍니다.
- 길이(Length): 내용이 방대한 문서보다는, 검색어와 딱 맞아떨어지는 짧은 문서를 우선합니다.
필터 활용하기
특수 접두어를 사용하여 검색 범위를 좁힐 수 있습니다. 여러 필터를 조합하면 놀랍도록 정교한 검색이 가능합니다.
언어로 필터링 (lang:)
특정 프로그래밍 언어로 작성된 스니펫만 봅니다.
lang:python(파이썬 코드만)lang:rustlang:md(마크다운 문서만)
태그로 필터링 (tag:)
정리해둔 태그를 기반으로 찾습니다.
tag:apitag:todo(할 일만 모아보기)tag:중요
폴더로 필터링 (folder:)
특정 폴더나 경로 내에서만 검색합니다.
folder:work(업무 폴더 안에서만)folder:projects/backendin:personal(in:이나path:도 똑같이 동작합니다)
날짜로 필터링 (created:, updated:)
언제 만들었거나 수정했는지를 기준으로 찾습니다. 기억이 가물가물할 때 유용합니다.
created:>2024-01-01(2024년 1월 1일 이후에 만든 것)updated:<7d(최근 7일 이내에 수정하지 않은 오래된 것)created:w(지난 1주일 안에 만든 것)
지원하는 날짜 형식:
- 상대적:
d(일),w(주),m(월). 예:updated:<2w(2주보다 더 된) - 절대적:
YYYY-MM-DD. 예:created:>=2023-12-01
고급 검색 테크닉
1. 정확한 구문 검색 (따옴표)
정확한 에러 메시지나 함수 이름을 찾고 싶으신가요? 따옴표로 감싸보세요.
"connection failed"단어들이 흩어져 있는 게 아니라, 정확히 저 순서대로 붙어있는 스니펫만 찾아줍니다.
2. 정규식 검색 (슬래시)
패턴으로 찾고 싶을 땐 슬래시 /로 감싸서 정규표현식을 사용하세요.
/function\s+get_\w+/이 예시는 get_로 시작하는 파이썬이나 자바스크립트 함수 정의부를 찾아줍니다.
3. 제외 검색 (마이너스)
특정 단어가 들어간 건 빼고 싶다면 앞에 마이너스 -를 붙이세요.
python -django이러면 파이썬 스니펫을 찾되, “django”란 단어가 들어간 건 결과에서 뺍니다.
4. 필터 조합 끝판왕
이 모든 걸 섞어서 쓸 수 있습니다.
lang:typescript tag:auth "jwt token" -deprecated해석: “auth” 태그가 달린 타입스크립트 코드 중에서, “jwt token”이라는 문구가 들어있지만 “deprecated”라는 말은 없는 것만 찾아줘.
프로 팁: 트라이그램 인덱싱
ZetoPad는 트라이그램(Trigram) 인덱스를 사용해서 부분 문자열도 기가 막히게 찾습니다. 단어를 끝까지 다 칠 필요가 없어요.
config만 쳐도configuration을 찾아냅니다.algo만 쳐도algorithm이 나옵니다.
오타를 조금 내거나, 긴 변수명의 일부분만 기억나도 ZetoPad는 찰떡같이 찾아낼 것입니다.