일반 텍스트가 아닌 AST 패턴으로 코드를 검색하고 린트하며 재작성하는 CLI 도구입니다.
davidhalter/jedi
에디터 플러그인에서 주로 사용하는 Python 자동 완성, 정의로 이동, 리팩터링 및 코드 검색용 정적 분석 라이브러리입니다.
- 스타
- 6,186
- 포크
- 549
- 열린 이슈
- 58
- 마지막 커밋
- 5일 전
어떤 프로젝트인가요?
Jedi는 Python용 정적 분석 라이브러리로, 일반적으로 IDE와 에디터에 내장되어 자동 완성과 정의로 이동 기능을 제공합니다. API를 통해 도구는 프로그램을 실행하지 않고도 특정 위치의 코드에 대한 자동 완성 후보, 시그니처, 문서, 추론된 타입 및 참조를 요청할 수 있습니다.
자동 완성 외에도 Jedi는 이름 바꾸기, 인라인, 함수 추출, 변수 추출 등의 리팩터링 작업과 구문 오류 목록, 이름 열거, 모듈 및 프로젝트 전체의 코드 검색 기능을 제공합니다. virtualenv를 지원하며, 의존성으로 포함하는 IPython REPL에서도 사용됩니다.
Jedi는 jedi-vim 같은 에디터 플러그인과 VS Code의 Python 확장, 그리고 jedi-language-server 및 python-lsp-server 같은 언어 서버에서 사용됩니다. Python 3.10 이상을 지원하면서 이전 버전의 코드도 분석할 수 있습니다.
핵심 기능
- 01Python 코드 자동 완성 및 정의로 이동
- 02커서 위치의 시그니처, 문서 및 타입 추론
- 03리팩터링: 이름 바꾸기, 인라인, 함수 추출 및 변수 추출
- 04모듈 및 프로젝트 전체에서 참조 찾기와 코드 검색
- 05virtualenv 지원 및 구문 오류 목록 제공
활용 사례
- 텍스트 에디터나 IDE에 Python 자동 완성 및 코드 탐색 기능 추가
- 에디터 연동을 위한 Python 언어 서버 구동
- IPython 또는 CPython REPL에서 탭 자동 완성 지원
- Python 프로젝트 전체에서 리팩터링이나 코드 검색 자동화
빠른 시작
- 1
PyPI에서 Jedi 설치
pip install jedi - 2
테스트 스위트 실행(선택 사항): pytest 설치
pip install pytest
사용 전 알아둘 점
- 독립형 도구보다는 주로 에디터 플러그인과 자동 완성 기능을 위해 설계되었습니다.
- 작성자는 Jedi의 후속 프로젝트로 Zuban을 공개했습니다.
토픽
자주 묻는 질문
- jedi은(는) 무엇인가요?
- 에디터 플러그인에서 주로 사용하는 Python 자동 완성, 정의로 이동, 리팩터링 및 코드 검색용 정적 분석 라이브러리입니다. Jedi는 Python용 정적 분석 라이브러리로, 일반적으로 IDE와 에디터에 내장되어 자동 완성과 정의로 이동 기능을 제공합니다. API를 통해 도구는 프로그램을 실행하지 않고도 특정 위치의 코드에 대한 자동 완성 후보, 시그니처, 문서, 추론된 타입 및 참조를 요청할 수 있습니다.
- jedi은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- jedi은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- jedi은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. jedi의 마지막 커밋은 2026년 11월 2일입니다.
- jedi은(는) 어디에 사용할 수 있나요?
- 텍스트 에디터나 IDE에 Python 자동 완성 및 코드 탐색 기능 추가 에디터 연동을 위한 Python 언어 서버 구동 IPython 또는 CPython REPL에서 탭 자동 완성 지원 Python 프로젝트 전체에서 리팩터링이나 코드 검색 자동화
- jedi는 어떻게 설치하나요?
- PyPI에서 Jedi 설치: pip install jedi 테스트 스위트 실행(선택 사항): pytest 설치: pip install pytest
- jedi은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/davidhalter/jedi
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
여러 저장소의 소스 코드에 레시피를 적용해 프레임워크 마이그레이션과 보안 수정을 수행하는 오픈소스 자동 리팩터링 엔진입니다.
Rails 애플리케이션을 분석해 Rust, Go, TypeScript 등의 독립 실행형 프로젝트나 네이티브 Spinel 바이너리로 컴파일하는 도구입니다.
코드에 타입 주석을 추가하지 않아도 타입을 추론하고, 정의되지 않은 메서드나 nil 수신자처럼 확실한 버그만 보고하는 Ruby 정적 분석기입니다.
대규모 코드베이스를 위해 설계된 Python용 표준 기반 정적 타입 검사기로, 명령줄 도구와 Visual Studio Code 확장 프로그램을 제공합니다.
Rust로 작성된 빠른 Python 타입 검사기이자 언어 서버로, 탐색, 자동 완성, 시맨틱 하이라이팅 같은 IDE 기능을 제공합니다.