PyCharm 2023.1의 새로운 기능

새로운 PyCharm UI, 원격 Jupyter Notebook 지원 등 다양한 기능.

새로운 PyCharm 사용자 인터페이스(UI) 공개

새 UI는 새롭게 디자인된 PyCharm의 모습입니다. 시각적 복잡성을 줄이고, 필수 기능에 간편한 액세스를 제공하며, 필요에 따라 복잡한 기능을 점진적으로 공개하도록 만들어져 모양과 느낌이 더욱 깔끔해졌습니다.

버전 2023.1에서는 새로운 PyCharm Community Edition 사용자에게 새 UI가 기본적으로 활성화됩니다.

다른 버전을 사용하는 경우 Ctrl+Alt+S를 눌러 IDE 설정을 열고 Appearance & Behavior(모양 및 동작) | New UI(새 UI)를 선택하여 활성화할 수 있습니다. 새 UI를 사용해 보고 의견을 공유해주세요!

이 페이지에 방문하여 새로운 UI에 대해 자세히 알아보세요.

주요 변경 사항

창 헤더

창 헤더

새로운 창 헤더를 사용하면 일반적인 작업을 더 빠르게 수행할 수 있습니다.

새로운 Project(프로젝트) 위젯은 현재 프로젝트의 이름을 표시하고 최근 프로젝트 간 전환, 새 프로젝트 생성 및 기존 프로젝트 열기 기능을 제공합니다.

VCS 위젯은 현재 브랜치를 표시하고 브랜치 전환을 지원하며 프로젝트 업데이트, 변경 사항 커밋 및 변경 사항 푸시와 같이 가장 많이 이용되는 VCS 액션을 제공합니다.

Run(실행) 위젯을 사용하면 실행/디버그 구성을 시작하고, 실행할 다른 구성을 선택하며, 현재 구성 모드(실행 또는 디버그)를 변경하고, 현재 구성을 편집하거나 삭제할 수 있습니다.

도구 창

도구 창

도구 창 표시줄이 차지하는 공간이 줄어들었고 탐색을 편리하게 해주는 아이콘이 제공됩니다. 도구 창을 재배치하려면 사이드바를 따라 해당 아이콘을 끌어 구분선 아래에 놓아 창을 세로로 나누거나 다른 사이드바에 놓아 가로로 나눕니다.

아직 화면에 표시되지 않는 도구 창에 액세스하려면 More tool windows(도구 창 더보기)를 클릭합니다.

디버그 도구 창

디버그 도구 창

기본 디버그 액션이 단일 툴바로 이동되었습니다. Threads & Variables(스레드 및 변수) 뷰와 콘솔 간 전환을 위한 탭이 단일 실행 구성이 있을 때 도구 창 탭에 나타납니다.

실행 액션이 있는 툴바도 도구 창 탭으로 이동했습니다.

내비게이션 바

내비게이션 바

이제 내비게이션 바가 메인 창 하단의 상태 표시줄에 있습니다. 원래 위치를 계속 사용하고 싶으면 메인 메뉴로 이동하여 View(보기) | Appearance(모양) | Navigation Bar(내비게이션 바)를 선택하여 다시 상단으로 이동할 수 있습니다.

Compact Mode(콤팩트 모드)

Compact Mode(콤팩트 모드)

작은 화면에서 작업하는 경우 콤팩트 모드를 사용할 수 있습니다. 이 모드에서 IDE는 툴바와 도구 창 헤더의 높이를 줄이고 간격과 패딩을 축소하며 아이콘과 버튼을 더 작게 만듭니다.

원격 Jupyter Notebook Pro

오랫동안 기다려온 원격 Jupyter Notebook 지원이 드디어 PyCharm Professional에 도입되었습니다. 이제 IDE에서 바로 원격 Notebook으로 작업할 수 있습니다.

원격 Jupyter 서버에 연결

원격 Jupyter 서버에 연결

원격 Jupyter 서버를 PyCharm에서 프로젝트에 연결하려면 메인 메뉴에서 Tools(도구) | Add Jupyter Connection(Jupyter 연결 추가)으로 이동하고 팝업에서 Connect to Jupyter server using URL(URL을 사용하여 Jupyter 서버에 연결)을 선택합니다. 원격 서버가 이 특정 프로젝트에 바인딩됩니다.

원격 Jupyter Notebook으로 작업

원격 Jupyter Notebook으로 작업

로컬 시스템과 원격 시스템 간에 원격 Jupyter Notebook을 복사하여 붙여넣고 이름을 바꿀 수 있습니다. 서버에서 Notebook의 최신 원격 버전을 가져오려면 컨텍스트 메뉴에서 Reload from Server(서버에서 다시 로드)를 선택합니다.

원격 Jupyter Notebook 디버그

원격 Jupyter Notebook 디버그

이제 원격 Notebook 내의 개별 셀을 디버그할 수 있습니다. 셀당 여러 중단점을 설정할 수 있고 Step Into(스텝인투)Step Over(스텝오버) 기능을 사용하여 오류를 진단할 수 있습니다.

에디터

제네릭에 대한 타입 추론 개선

제네릭에 대한 타입 추론 개선

PyCharm이 제네릭 클래스 및 프로토콜과 작동하는 방식을 재설계했습니다. IDE는 이제 제네릭 클래스와 제네릭 프로토콜의 계층 구조를 더 효과적으로 처리하여 타입 힌트에서 고질적으로 제기되었던 문제를 해결합니다.

여러 프로젝트의 패키지를 포괄적으로 관리

여러 프로젝트의 패키지를 포괄적으로 관리

Python Packages(Python 패키지) 도구 창은 이제 기본 프로젝트에 종속 프로젝트가 연결된 워크플로를 지원합니다. 도구 창 왼쪽의 추가 패널에서 프로젝트를 선택하면 패키지를 설치 및 제거하고 각 프로젝트의 버전을 관리할 수 있습니다.

Code Vision: 사용 위치에 대한 인레이 힌트

Code Vision: 사용 위치에 대한 인레이 힌트

이제 새로운 usages(사용 위치) 인레이 힌트로 클래스 구현과 재정의 메서드를 추적하기가 더 쉬워졌습니다. 선언 바로 위에 기호가 사용되는 횟수가 표시되며 사용 위치로 이동할 수 있습니다. 이 내용을 표시하지 않으려면 힌트 위로 마우스를 가져간 다음 컨텍스트 메뉴에서 Hide ‘Code Vision: Usages’ Inlay Hints('Code Vision: 사용 위치’ 인레이 힌트 숨기기)를 선택합니다.

Quick Documentation(빠른 문서)에서 구문 강조 표시 개선

Quick Documentation(빠른 문서)에서 구문 강조 표시 개선

Quick Documentation(빠른 문서) 툴팁에서 이제 선택한 표현식, 추론 타입 및 정의 요소에 대한 클릭 가능한 링크의 정의에 구문 강조 표시가 제공됩니다. 툴팁을 호출하려면 을 누르고 마우스 포인터를 표현식 위로 가져갑니다(또는 그 위에 캐럿을 놓음).

Quick Documentation(빠른 문서) 팝업에서 구문 강조 표시는 이제 에디터의 경우와 매우 유사하며 코드 문서에 대한 가시성을 높여줍니다.

Rename 리팩터링에 대한 인라인 프롬프트

Rename 리팩터링에 대한 인라인 프롬프트

PyCharm에서 Rename(이름 변경) 리팩터링이 사용되는 방식을 업데이트했습니다. 팝업 대화상자에서 새 이름을 입력하는 대신 인라인 프롬프트 양식을 통해 변경할 수 있습니다.

기타 개선 사항

  • Python 콘솔 및 디버그 콘솔에서 Special Variables(특수 변수) 창의 성능을 최적화했습니다. 특히 큰 컬렉션의 경우에 계산된 변수 값의 미리보기가 이제 더 빠르게 표시됩니다.
  • 이제 선택하지 않고 복사하거나 잘라내기한 줄을 붙여넣을 때 붙여넣은 내용의 배치를 지정할 수 있습니다. Settings/Preferences(설정/환경 설정) | Advanced Settings(고급 설정) | Editor(에디터)로 이동한 다음 원하는 동작을 선택합니다.
  • 속성 또는 매개변수에 대한 Quick Documentation(빠른 문서) 툴팁에서 이제 마크업 서식 지정이 렌더링됩니다.

사용자 경험

전체 IDE 확대/축소

전체 IDE 확대/축소

IDE를 간편하게 확대하거나 축소하세요. 모든 UI 요소의 크기가 한 번에 변경됩니다. 메인 메뉴에서 View(보기) | Appearance(모양)를 선택하고 IDE의 배율을 조정합니다. 사용자 지정 단축키를 할당할 수도 있습니다.

새로운 Remember size for each tool window(각 도구 창 크기 기억) 설정

새로운 Remember size for each tool window(각 도구 창 크기 기억) 설정

이제 측면 도구 창의 너비를 조정하여 IDE 레이아웃을 사용자 지정할 수 있습니다. PyCharm은 각 도구 창에 대해 선택한 내용을 기억합니다. 새로운 Remember size for each tool(각 도구 창의 크기 기억) 체크박스는 Settings/Preferences(설정/환경 설정)/Settings(설정) | Appearance & Behavior(모양 및 동작) | Appearance(모양) | Tool Windows(도구 창)에서 설정할 수 있습니다.

새 프로젝트에 대한 Actions on Save(저장 시 액션) 구성 설정

새 프로젝트에 대한 Actions on Save(저장 시 액션) 구성 설정

향후 프로젝트에서 변경 사항을 저장할 때 IDE가 동작하는 방식을 사전 정의하세요.

해당 옵션을 사용하려면 File(파일) | New Projects Setup(새 프로젝트 설정) | Preferences(새 프로젝트 환경 설정)/Settings For New Projects(새 프로젝트 설정) | Tools(도구) | Actions on Save(저장 시 액션)를 선택하고 변경 사항 저장 시 트리거할 액션을 선택하면 됩니다.

기타 개선 사항

  • 이제 Search Everywhere(전체 검색)(Shift를 두 번 누름)가 머신 러닝을 기반으로 보다 정확한 결과를 제공합니다.
  • Scanning files to index(색인 생성할 파일 검사 중)... 프로세스가 이제 스마트 모드에서 수행되어 시작 프로세스에서 훨씬 더 일찍 전체 IDE 기능을 사용할 수 있습니다.
  • 실시간 보호 기능이 있는 Windows Defender가 실행될 때 PyCharm은 이제 성능 향상을 위해 Defender의 제외 목록에 특정 폴더를 추가할 것을 제안합니다.

프런트엔드 개발 Pro

Astro 지원

Astro 지원

Long-awaited Astro support has landed in PyCharm! You can get it through our new Astro plugin, which can be installed from Settings/Preferences | Plugins. 이 플러그인은 구문 강조 표시, 자동 가져오기를 통한 코드 완성, 리팩터링, 탐색, 올바른 서식 지정 등의 기본 기능을 제공합니다.

문자열을 템플릿 리터럴로 자동 변환

문자열을 템플릿 리터럴로 자동 변환

PyCharm에서 ${를 입력할 때마다 작은따옴표 또는 큰따옴표로 묶인 문자열을 템플릿 리터럴로 자동으로 변환하는 기능도 추가되었습니다. 이 기능은 원시 문자열 및 JSX 프로퍼티에도 사용할 수 있습니다.

Vue 템플릿의 TypeScript 지원

Vue 템플릿의 TypeScript 지원

Vue 템플릿에 TypeScript 지원이 추가되었습니다. script 태그의 lang 속성을 ts로 설정하여 TypeScript를 활성화할 수 있습니다. 이전에는 script 태그의 lang 속성과 무관하게 JavaScript가 사용되었습니다. 이제 Vue 단일 파일 구성 요소 템플릿의 빠른 문서에서 인라인 형 변환, 타입 좁히기 개선 사항 및 추론된 타입에 대한 올바른 정보를 지원합니다.

Tailwind CSS 구성

Tailwind CSS 구성

이번 릴리스에는 classAttributes 옵션의 사용자 지정 클래스 이름 완성 또는 tailwindCSS.experimental.configFile과 같은 실험적 옵션에 대한 구성 옵션 지원이 추가되었습니다.

해당 구성 옵션은 Settings(설정)/Preferences(환경 설정) | Languages & Frameworks(언어 및 프레임워크) | Style Sheets(스타일시트) | Tailwind CSS에서 설정할 수 있습니다.

Markdown

테이블 서식 다시 지정

테이블 서식 다시 지정

Context action(컨텍스트 액션) 단축키(Alt+Enter)를 사용하거나 노란색 전구 아이콘을 누른 후 표시된 목록에서 Reformat code(코드 서식 다시 지정)을 선택하여 Markdown 파일의 테이블 서식을 수정할 수 있습니다.

Markdown 파일의 Fill Paragraph(단락 채우기)

Markdown 파일의 Fill Paragraph(단락 채우기)

Fill Paragraph(단락 채우기) 에디터 액션을 사용하여 긴 텍스트를 균일한 길이의 여러 줄로 나누는 기능을 Markdown 파일에 사용할 수 있습니다.

이 기능을 사용하려면 편집할 단락 내부에 캐럿을 놓고 Edit(편집) 메뉴에서 액션을 호출하거나, Find Action(액션 찾기)(Ctrl+Shift+A)을 사용하여 Fill Paragraph(단락 채우기) 명령어를 검색한 후 실행하면 됩니다.

Markdown용 새로운 Smart Keys(스마트 키) 설정 페이지

Markdown용 새로운 Smart Keys(스마트 키) 설정 페이지

다양한 에디터 기능에 대한 별도의 체크박스를 제공하는 새로운 전용 페이지를 이용해 Markdown 파일 편집에 대한 환경 설정을 간편하게 관리하세요.

이 기능은 Settings(설정)/Preferences(환경 설정) | Editor(에디터) | General(일반) | Smart Keys(스마트 키)에서 이용할 수 있습니다.

버전 관리 시스템

GitHub 코드 검토 워크플로 개선

GitHub 코드 검토 워크플로 개선

Pull Request(풀 리퀘스트) 도구 창에 이제 열린 풀 리퀘스트별 전용 탭이 있으며, 여기에 변경된 파일 목록이 즉시 표시됩니다. 풀 리퀘스트의 현재 상태에 따라 가장 중요한 것으로 생각되는 액션을 간편하게 실행하기 위한 전용 버튼이 있습니다.

Structure(구조) 도구 창의 VCS 상태 색상 힌트

Structure(구조) 도구 창의 VCS 상태 색상 힌트

파일의 변경 사항을 편리하게 추적할 수 있도록 Structure(구조) 도구 창에 색상 힌트를 추가했습니다. 수정된 객체의 이름은 파란색으로 변경되며, 새로 추가된 객체의 이름은 도구 창에 녹색으로 강조 표시됩니다.

Branches(브랜치) 팝업 개선

Branches(브랜치) 팝업 개선

Branches(브랜치) 팝업의 사용 편의성을 개선했습니다. 브랜치는 그룹으로 설정되어 확장 가능한 목록에 저장되므로 브랜치 간 탐색이 더 간편해졌습니다.

기타 개선 사항

  • Create New Branch(새 브랜치 생성) 팝업에 자동 완성이 구현되었습니다. 새 브랜치 이름을 입력하기 시작하면 IDE에서 기존 로컬 브랜치의 이름을 기반으로 적절한 접두사를 제안합니다.
  • 커밋 프로세스의 속도를 높이기 위해 GIT 및 Mercurial에 대한 커밋 확인이 이제 커밋 후 푸시 전에 백그라운드에서 수행됩니다.