Что нового в PyCharm 2023.1

Новый интерфейс PyCharm, поддержка удаленных Jupyter-ноутбуков и многое другое.

Представляем новый интерфейс PyCharm

Благодаря новому интерфейсу PyCharm стал выглядеть проще и удобнее. Разрабатывая его, мы стремились уменьшить визуальное напряжение и обеспечить быстрый доступ к основной функциональности, по мере необходимости раскрывая более продвинутые возможности IDE.

В версии 2023.1 новый интерфейс включен по умолчанию для новых пользователей PyCharm Community Edition.

Остальные пользователи могут включить его, нажав Ctrl+Alt+S, а затем выбрав Appearance & Behavior | New UI в настройках IDE. Попробуйте новые возможности и расскажите нам о своих впечатлениях.

Подробнее о новом интерфейсе читайте на этой странице.

Основные изменения

Заголовок окна

Заголовок окна

Новый заголовок окна позволяет быстрее выполнять частые задачи.

В новом виджете Project отображается имя текущего проекта, там же можно переключиться между последними проектами, создать новый проект или открыть существующий.

В виджете VCS можно посмотреть текущую ветку, переключиться между ветками, а также выполнить самые распространенные действия в системе контроля версий, например обновить проект, сделать коммит изменений и отправить их в репозиторий.

Виджет Run позволяет выполнить конфигурацию запуска/отладки, выбрать и запустить другие конфигурации, изменить режим для текущей конфигурации (запуск или отладка), а также изменить или удалить текущую конфигурацию.

Окна

Окна

Панели окон занимают меньше места, а для упрощения навигации используются иконки. Чтобы изменить расположение окна по вертикали, перетащите его иконку вдоль боковой панели под разделитель. Чтобы изменить его расположение по горизонтали, нужно перетащить окно на другую боковую панель.

Окна, иконок которых нет боковых панелях, можно найти с помощью иконки More tool windows.

Окно Debug

Окно Debug

Основные действия отладки перенесены на единую панель инструментов. Вкладки переключения между представлением Threads & Variables и консолью теперь размещены на вкладках окна, если запущена одна конфигурация.

Панель инструментов с действиями запуска также перенесена во вкладки окна.

Панель навигации

Панель навигации

Панель навигации теперь находится на панели состояния в нижней части главного окна. Если вам удобнее, чтобы она находилась в прежнем месте, ее можно переместить обратно в верхнюю часть окна: в главном меню выберите View | Appearance | Navigation Bar.

Компактный режим

Компактный режим

Если вы работаете на небольшом экране, можно включить компактный режим (Compact Mode), в котором IDE сужает панели инструментов и заголовки окон, сокращает отступы и интервалы, а также уменьшает кнопки и значки.

Удаленные Jupyter-ноутбукиPro

В редакции PyCharm Professional добавлена долгожданная поддержка удаленных Jupyter-ноутбуков. Теперь работать с удаленными ноутбуками можно прямо в IDE.

Подключение к удаленному серверу Jupyter

Подключение к удаленному серверу Jupyter

Чтобы добавить удаленный сервер Jupyter в проект PyCharm, выберите в главном меню Tools | Add Jupyter Connection, а затем во всплывающем окне нажмите Connect to Jupyter server using URL. Удаленный сервер будет добавлен в этот проект.

Работа с удаленными Jupyter-ноутбуками

Работа с удаленными Jupyter-ноутбуками

Удаленные Jupyter-ноутбуки можно копировать, вставлять и переименовывать как на локальной, так и на удаленной машине. Чтобы получить с сервера последнюю версию удаленного ноутбука, выберите в контекстном меню Reload from Server.

Отладка удаленных Jupyter-ноутбуков

Отладка удаленных Jupyter-ноутбуков

В новой версии можно выполнять отладку отдельных ячеек в удаленных ноутбуках. Для каждой ячейки можно задать несколько точек останова, а для диагностики ошибок использовать функции Step Into и Step Over.

Редактор

Улучшенный вывод типов для дженериков

Улучшенный вывод типов для дженериков

Мы изменили подход PyCharm к работе с дженерик-классами и протоколами. В новой версии IDE улучшена обработка иерархий дженерик-классов и дженерик-протоколов, в результате были решены многие давние проблемы с подсказками типов.

Удобное управление зависимостями для нескольких проектов

Удобное управление зависимостями для нескольких проектов

Теперь окно Python Packages поддерживает рабочий процесс, при котором к основному проекту присоединен зависимый. Выбрав проект на дополнительной панели в левой части окна, можно устанавливать и удалять пакеты, а также управлять их версиями для каждого проекта.

Code Vision: встроенные подсказки для использований

Code Vision: встроенные подсказки для имплементаций

В новой версии проще отслеживать реализации классов и переопределенные методы с помощью новых встроенных подсказок для использований (usages). Они показывают, сколько раз символ использован, прямо над его объявлением, и позволяют перейти к нужному использованию. Чтобы отключить такие подсказки, наведите курсор на одну из них и выберите в контекстном меню Hide ‘Code Vision: Usages’ Inlay Hints.

Улучшенная подсветка синтаксиса при быстром просмотре документации

Улучшенная подсветка синтаксиса в Quick Documentation

Подсказки Quick Documentation теперь имеют подсветку синтаксиса для определения выбранного выражения, выведенного типа и интерактивных ссылок на элементы определения. Чтобы вызвать подсказку, удерживая , наведите указатель на выражение или переместите на него курсор клавиатуры.

Подсветка синтаксиса во всплывающем окне Quick Documentation теперь почти идентична подсветке в редакторе, что упрощает чтение документации кода.

Встроенная подсказка для рефакторинга Rename

Встроенная подсказка для рефакторинга Rename

Мы изменили порядок работы PyCharm с рефакторингом Rename. Теперь можно не набирать новое имя во всплывающем окне, а изменить его через форму встроенной подсказки.

Другие улучшения

  • Мы оптимизировали работу окна Special Variables в консоли Python и консоли отладки. Теперь предпросмотр вычисленных значений переменных доступен быстрее, особенно для больших коллекций.
  • В новой версии можно указать место вставки контента, если вы вставляете строку, скопированную или вырезанную без выбора. В меню Settings/Preferences | Advanced Settings / Editor можно выбрать требуемое поведение IDE.
  • Подсказки Quick Documentation для атрибутов и параметров теперь отображают форматирование разметки.

Взаимодействие с IDE

Изменение масштаба всей IDE

Изменение масштаба всей IDE

Масштабировать интерфейс IDE стало удобнее. Теперь размер всех элементов интерфейса меняется одновременно. Для этого выберите View | Appearance в главном меню и настройте нужный масштаб. Кроме того, для нужного масштаба можно настроить сочетание клавиш.

Новая возможность зафиксировать размер окон инструментов

Новая возможность зафиксировать размер окон инструментов

В новой версии можно настроить схему расположения окон IDE, изменив ширину боковых окон. PyCharm запомнит настройки для каждого окна. Вы найдете новый флажок Remember size for each tool window в разделе Settings/Preferences | 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 (Double Shift) дает более точные результаты благодаря использованию машинного обучения.
  • В новой версии процесс Scanning files to index... выполняется в умном режиме. Благодаря этому все функции IDE становятся доступны гораздо раньше по ходу запуска.
  • Если Защитник Windows запущен в режиме защиты в реальном времени, новая версия PyCharm предлагает добавить некоторые папки в список исключений Защитника, чтобы улучшить производительность.

Фронтэнд-разработка Pro

Поддержка Astro

Поддержка Astro

В PyCharm появилась долгожданная поддержка Astro. Чтобы ею воспользоваться, установите Astro-плагин через меню Settings/Preferences | Plugins. Плагин обеспечивает базовую функциональность, включая подсветку синтаксиса, автодополнение кода с автоматическими импортами, рефакторинги, навигацию, правильное форматирование и многое другое.

Автоматическое преобразование строк в шаблонные литералы

Автоматическое преобразование строк в шаблонные литералы

PyCharm теперь автоматически преобразует строки с одинарными или двойными кавычками в шаблонные литералы всякий раз, когда вы вводите ${. Это работает как для сырых строк, так и для свойств JSX.

Поддержка TypeScript в Vue-шаблонах

Поддержка TypeScript в Vue-шаблонах

Мы добавили поддержку TypeScript в Vue-шаблоны. Она включится, если установить для атрибута lang в теге script значение ts. Раньше, независимо от атрибута lang в теге script, использовался JavaScript. PyCharm теперь поддерживает встроенное приведение типов, улучшенное сужение типов и показывает корректную информацию о выведенных типах в быстрой документации для шаблонов однофайловых компонентов Vue.

Конфигурация Tailwind CSS

Конфигурация Tailwind CSS

В этой версии добавлена поддержка параметров конфигурации, в частности, автодополнение имен пользовательских классов в настройке classAttributes, а также поддержка экспериментальных настроек, таких как tailwindCSS.experimental.configFile.

Эти параметры конфигурации можно настроить в разделе Settings/Preferences | Languages & Frameworks | Style Sheets | Tailwind CSS.

Markdown

Переформатирование таблиц

Переформатирование таблиц

Чтобы исправить форматирование таблиц в файлах Markdown, можно использовать сочетание клавиш Context actions (Alt+Enter) или нажать иконку с желтой лампочкой и выбрать в появившемся списке Reformat code.

Добавление переносов строк в файлы Markdown

Добавление переносов строк в файлы Markdown

Теперь в длинные тексты в файлах Markdown можно добавить переносы строк с помощью функции Fill Paragraph, разбив их на несколько строк равной длины.

Для этого поместите курсор внутрь абзаца, который необходимо изменить, и вызовите действие из меню Edit или найдите команду Fill Paragraph с помощью функции Find Action (Ctrl+Shift+A) и выполните ее.

Новая страница настроек Smart Keys для файлов Markdown

Новая страница настроек Smart Keys для файлов Markdown

Новая отдельная страница упрощает настройку редактора файлов Markdown благодаря отдельным флажкам для разных функций редактора.

Чтобы открыть эту страницу, выберите в меню Settings/Preferences | Editor | General | Smart Keys.

Поддержка систем контроля версий

Улучшенный рабочий процесс код-ревью для GitHub

Улучшенный рабочий процесс код-ревью для GitHub

В новой версии в окне Pull Request есть отдельная вкладка для каждого открытого пул-реквеста. На вкладке сразу же отображается список измененных файлов. Отдельная кнопка позволяет быстро выполнить самое важное действие, исходя из текущего состояния пул-реквеста.

Цветовые подсказки статуса VCS на панели Structure

Цветовые подсказки статуса VCS на панели Structure

Чтобы вам было удобнее следить за изменениями в файлах, мы добавили на панель Structure цветовую индикацию. Имена измененных объектов теперь отображаются синим цветом, а вновь добавленных — зеленым.

Улучшенное окно Branches

Улучшенное окно Branches

Всплывающее окно Branches стало более удобным. Вам будет проще перемещаться между ветками, потому что теперь они сгруппированы и хранятся в раскрываемых списках.

Другие улучшения

  • Мы реализовали автодополнение во всплывающем окне Create New Branch. Как только вы начнете вводить имя новой ветки, IDE предложит подходящие префиксы на основе имен существующих локальных веток.
  • Для ускорения коммитов проверки для Git и Mercurial теперь производятся в фоновом режиме — после коммита, но до отправки изменений в репозиторий.