CLI · 실행
입력과 출력
입력 source
Native CLI는 경로, 디렉터리와 stdin을 받고 ignore 규칙과 병렬 파일 검색을 적용합니다. -는 stdin을 명시합니다.
npm CLI는 UTF-8 경로를 일정한 순서로 재귀 순회하며 symlink를 따라가지 않습니다. 경로가 없으면 TTY에서는 현재 디렉터리를, pipe에서는 stdin을 선택합니다.
인코딩
Native CLI의 auto는 UTF-8과 BOM 기반 UTF-16을 판별하고 명시적 euc-kr을 지원합니다. Decode한 텍스트의 일치를 원문 위치로 다시 매핑합니다.
npm CLI는 UTF-8 전용입니다. NUL을 포함하거나 strict UTF-8 decode에 실패한 파일은 stderr에 진단을 남기고 건너뜁니다.
출력 형식
사람용 텍스트는 경로, 행, 열과 표면형을 표시합니다. Native CLI는 POSIX TTY와 Windows Terminal의 PowerShell에서 조건에 따라 TUI pager를 사용합니다. --no-pager를 지정하면 크기가 제한된 stdout 스트림으로 출력합니다.
자동화에는 JSON Lines를 사용합니다. 각 record에 일치 범위, atom span과 모든 rulePath를 보존합니다.
npm CLI
npm CLI의 텍스트 좌표는 1부터 시작하는 UTF-16 line·column입니다. --json record는 path, line, column, start, end, surface와 atoms를 포함합니다.
검색 결과가 있으면 0, 없으면 1, 사용법·초기화·I/O 오류가 발생하면 2로 종료합니다.