다음은 평문입니다. ### ast-grep 대 ripgrep (빠른 가이드) **구조가 중요한 경우 `ast-grep`을 사용하세요.** 코드를 구문 분석하고 AST 노드와 일치시키므로 결과는 주석/문자열을 무시하고 구문을 이해하며 코드를 **안전하게 다시 작성**할 수 있습니다. * 리팩터링/코드모드: API 이름 변경, 가져오기 양식 변경, 호출 사이트 또는 변수 종류 다시 작성. * 정책 검사: 리포지토리 전체에 패턴을 적용합니다(`스캔`과 규칙 + `테스트`). * 편집기/자동화: LSP 모드; 툴링을 위한 `--json` 출력. **텍스트만으로 충분하다면 `ripgrep`을 사용하세요.** 파일 전체에서 리터럴/정규식을 grep하는 가장 빠른 방법입니다. * 정찰: 문자열, TODO, 로그 줄, 구성 값 또는 비코드 자산을 찾습니다. * 사전 필터: 정확한 통과 전에 후보 파일을 좁힙니다. **경험 법칙** * 속도보다 정확성이 중요합니다. 그렇지 않으면 **변경 사항을 적용**하게 됩니다. → `ast-grep`으로 시작하세요. * 빠른 속도가 필요하거나 단지 **텍스트를 사냥하는 중**일 뿐 → `rg`로 시작하세요. * 종종 다음을 결합합니다. `rg`를 사용하여 파일을 단축한 다음, `ast-grep`을 사용하여 정확하게 일치시키거나 수정합니다. **짧은 발췌** 구조화된 코드 찾기(주석/문자열 무시): ```배쉬 ast-grep 실행 -l TypeScript -p '$X를 "$P"에서 가져오기' ``` Codemod(실제 `var` 선언만 `let`이 됨): ```배쉬 ast-grep 실행 -l JavaScript -p 'var $A = $B' -r 'let $A = $B' -U ``` 빠른 텍스트 검색: ```배쉬 rg -n '콘솔\.log\(' -t js ``` 속도와 정확도를 결합하세요: ```배쉬 rg -l -t ts 'useQuery\(' | xargs ast-grep 실행 -l TypeScript -p 'useQuery($A)' -r 'useSuspenseQuery($A)' -U ``` **멘탈 모델** * 일치 단위: `ast-grep` = node; `rg` = line. * 거짓 양성: `ast-grep` 낮음; `rg`는 정규 표현식에 따라 다름. * 다시 작성: `ast-grep`을 일류로; `rg`는 임시 sed/awk를 필요로 하며 부수적인 편집의 위험이 있습니다.
스레드를 불러오는 중
깔끔한 읽기 화면을 위해 X에서 원본 트윗을 가져오고 있어요.
보통 몇 초면 완료되니 잠시만 기다려 주세요.