Как изменить масштаб в intellij idea
Перейти к содержимому

Как изменить масштаб в intellij idea

Как изменить размер шрифта самого кода в IntelliJ IDEA?

Intelij IDEA — изменить размер шрифта консольного окна
Как в Intelij IDEA — изменить размер шрифта консольного окна? Не окна редактора, а окна где.

Как изменить место в классе куда IntelliJ IDEA помещает новый метод
Если набрать метод и по Alt+Enter или лампочке выбрать "Create method. " заглушка для него будет.

Как изменить размер шрифта в menu bar (где Version Control, .)
Здравствуйте! Как иземнить размер шрифта вот этих меню: Заранее спс!

Как добавить Hibernate в IntelliJ IDEA
Привет. Подскажите пожалуйста, как добавить поддержку Hibernate в IntelliJ IDEA. Я напишу как я.

Эксперт Java

4090 / 3824 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11

File -> Settings -> IDE Settings -> Editor -> Color & Fonts -> Font -> Size

PS. В Intellij прекраснейший диалог с настройками, со встроенным поиском

Регистрация: 06.04.2014
Сообщений: 4
это меню я давно нашол, окно где стоит размер шрифта не активно это наверное что бесплатная версия?

Эксперт Java

4090 / 3824 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11

Лучший ответ

Сообщение было отмечено Tanter777 как решение

Решение

Tanter777, Вам надо создать свою «схему», так как стандартные менять нельзя.
Сверху там есть кнопка Save As

Регистрация: 06.04.2014
Сообщений: 4
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как Запустить проект На IntelliJ IDEA
Подскажите новичку пожалуйста, как запустить это приложение? при выборе main класса Run кнопка Ok.

Как подключить библиотеку в IntelliJ IDEA?
Здравсвтуйте, Работаю в IDEA, у меня проект требует нескольких библиотек. Но некоторые из них в.

Как убрать автодополнение в IntelliJ IDEA?
Всем привет! Помогите, пожалуйста. В Intellij idea пишу такую строчку i = 6; Пишу символ i.

Intellij idea 5.1: как добавить компонент?
В данный момент я дописываю JavaBean, используя NetBeans и решил проверить его работоспособность в.

10 случаев, когда можно обойтись без мыши при работе с IntelliJ IDEA

Многие, работая с IntelliJ IDEA, предпочитают использовать клавиатуру, а не мышь. Вы тоже? Тогда у нас есть для вас небольшой подарок. В этой статье мы расскажем о 10 распространенных ситуациях, в которых, оказывается, можно обойтись без мышки.

1. Изменение размера окна Project или другого активного окна

Окно Project — одно из самых используемых в IntelliJ IDEA. Часто бывает нужно увеличить или уменьшить его ширину. Вместо того, чтобы браться за мышку, нажмите Ctrl+Shift+Right (Windows или Linux) или ⇧⌘Right (macOS), чтобы увеличить ширину окна, а чтобы ее уменьшить — Ctrl+Shift+Left or или ⌘Left.

У других окон, например Run или Problems, можно увеличить высоту, нажав Ctrl+Shift+Up (Windows или Linux) или ⇧⌘Up (macOS), или уменьшить ее с помощью сочетаний клавиш Ctrl+Shift+Down или ⇧⌘Down.

2. Клавиша Esc — возврат в окно редактора, F12 — переход к последнему окну инструментов

Закончив работу в таких окнах, как Project, Debug, Maven и т. п., можно не кликать по окну редактора мышкой — просто нажмите Esc, чтобы вернуться в редактор.

Нажав на клавишу F12, можно перейти в последнее открытое окно инструментов, не вспоминая сочетание клавиш, назначенное именно этому окну.

На приведенном ниже gif-изображении Presentation Assistant не отображает текст «Escape», когда используется клавиша Esc для возврата в окно редактора.

Зависит ли действие, выполняемое при нажатии клавиш Esc (или любой другой клавиши), от контекста? Конечно, зависит. Перейдите в меню Settings -> Keymap -> Find Actions by Shortcut и нажмите Esc, чтобы узнать, как она сработает в разных контекстах.

3. Отображение окна

Давайте для начала разберемся, как многие разработчики выводят на экран окна в IntelliJ IDEA. Например, чтобы открыть окно Pull Requests, можно щелкнуть по вкладке Pull Requests на панели окон инструментов:

Здесь тоже можно обойтись без мыши. То есть сначала она понадобится, чтобы сделать одну вещь, а потом можно будет о ней забыть.

Наведя курсор на вкладку Pull Requests, можно увидеть, назначено ли этому окну сочетание клавиш. В данном случае сочетания клавиш нет. Давайте его назначим. Используйте действие Find, выполните поиск по строке «Pull Requests» с описанием «View | Tool window» и используйте сочетание клавиш Alt+Enter, чтобы назначить сочетание клавиш, например Ctrl+Shift+Alt+9.

Теперь можно его использовать, чтобы вывести или скрыть окно Pull Requests.

Если же окну уже назначено сочетание клавиш, например Alt+1 для окна Project или Alt+7 для окна Structure, оно будет показано, когда вы наведете курсор на соответствующую вкладку на панели окон инструментов.

Можно также нажать в IntelliJ IDEA клавиши Ctrl+Tab (или ⌃Tab), чтобы вызвать функцию Switcher и просмотреть список окон и недавно открытых файлов. Эта функция позволяет быстро перейти к имени нужного окна с помощью клавиш со стрелками.

Если вы предпочитаете работать со строкой меню, можно выбрать View | Tool windows и посмотреть список всех доступных окон.

4. Закрытие активного окна или всех окон

Закрыть или скрыть окно можно разными способами. Чтобы скрыть активное окно, нажмите Shift+Escape (или ⇧ Esc). Отдельные сочетания клавиш позволяют скрыть или отобразить нужное окно. Например, при нажатии Alt+9 (или ⌘9) будет показано окно Git. При повторном нажатии Alt+9 (или ⌘9) окно будет скрыто.

Кроме того, можно использовать сочетание клавиш Ctrl+Shift+F12 (⇧⌘ F12), чтобы скрыть или восстановить все окна.

5. Alt+Enter — просмотр предложений по иконке лампочки

Чтобы просмотреть предложения сниппетов, не обязательно щелкать по иконке лампочки. Перейдите к строке кода, где появилась лампочка, и нажмите Alt+Enter, чтобы вызвать Context actions и посмотреть предложения.

6. Объявление нового класса в нужном пакете при работе в окне редактора кода

Эта функция — настоящая скрытая жемчужина IntelliJ IDEA. Немногие разработчики знают о ней, а ведь она может быть очень полезна.

Если вам нужно создать класс во время работы в редакторе, нажмите Alt+Home (или ⌘ Up), чтобы перейти к панели навигации. Выберите пакет, в котором нужно объявить новый класс, интерфейс или другой объект, а затем вызовите новое диалоговое окно, нажав клавиши Alt+Insert (или ⌘ N). Введите имя, и готово.

Дополнительный совет: чтобы создать подпакет, добавьте имя пакета в качестве префикса. Например, при создании класса ‘NewClassInPackageSpace’ в новом подпакете, допустим, ‘space’, входящем в пакет ‘com’, введите «space.NewClassInPackageSpace» в новом диалоговом окне.

7. Переход между открытыми файлами

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

i) Сочетания клавиш Alt+Right или Alt+Left обеспечивают быструю навигацию по последним файлам, с которыми вы работали. Однако в этом случае Presentation Assistant не показывает используемые сочетания клавиш.

Это сочетание удобно использовать для навигации по недавно открытым файлам, поскольку оно очень ускоряет перемещение.

На следующем gif-изображении показано, как использовать сочетания клавиш Alt+Right или Alt+Left, чтобы быстро перейти к другим файлам:

ii) Перейдите к вкладке Switcher (Ctrl+Tab в Windows и Linux, ^Tab в macOS), чтобы посмотреть список окон и файлов, с которыми вы недавно работали, и выберите окно или файл, которые нужно открыть.

iii) Чтобы посмотреть список файлов, с которыми вы недавно работали, нажмите Ctrl+E (или ⌘E). В списке указаны в том числе и типы недавно открытых файлов. Если нажать Ctrl+E еще раз при открытом диалоговом окне, в списке останутся только измененные вами файлы.

iv) Если вы не можете вспомнить, с каким файлом вы работали, нажмите Ctrl+Shift+E, чтобы перейти к списку Recent Locations: на экране появится пара строк из файла и его название. Если еще раз нажать это сочетание клавиш при открытом диалоговом окне, будут отображены недавно измененные файлы.

8. Быстрый просмотр источника классов, интерфейсов, перечислений, записей, методов, объявлений переменных и т. п.

Если вы читаете написанный вами тест и хотите быстро посмотреть определение метода, поместите курсор на название метода и нажмите Ctrl+Shift+I. Таким образом вам не придется переходить к другому классу, чтобы прочитать нужный код. Таким способом можно посмотреть определения классов, методов и любых других объектов. Функция так и называется — Quick Definition.

9. Изменение ширины и высоты диалогового окна

При вызове диалогового окна его высоту и ширину можно изменить с помощью сочетаний клавиш Ctrl+Shift+Left/Right/Up/Down (Windows и Linux) или ⇧⌘Left/Right/Up/Down (MacOS).

Обратите внимание: диалоговые окна не могут быть меньше определенного размера. Ограничения действуют независимо от того, меняете вы размер с помощью мыши или клавиатуры. Кроме того, сочетание клавиш не будет работать, если курсор находится в редактируемом элементе диалогового окна, например в текстовом поле или области текста.

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

Часто бывает нужно прокрутить панель редактора вверх или вниз, чтобы прочитать код. Если редактировать его при этом не нужно, то и сдвигать курсор из текущего положения вам не захочется.

Воспользуйтесь сочетаниями клавиш Ctrl+Up или Ctrl+Down (или ⌘Up/⌘Down) в панели редактора, чтобы прокрутить ее, не меняя положение курсора. Аналогичные сочетания клавиш Ctrl+Right и Ctrl+Left (или ⌘Left/⌘Right) можно использовать для прокрутки структуры каталогов вправо или влево в окне Project.

Дополнительный совет: чтобы читать код и перемещаться вверх и вниз в панели редактора было проще, можно свернуть методы, блоки кода или наборы операторов импорта, чтобы они занимали меньше места в окне редактора. Для этого нажмите Ctrl+Numpad – (Window и Linux) или ⌘Numpad – (macOS). Чтобы развернуть блок кода, нажмите Ctrl+Numpad + (Windows и Linux) или ⌘Numpad + (macOS). Это очень удобно при чтении или презентации кода, когда нужно, чтобы посторонний код не отвлекал вас и не занимал место на экране.

Если в классе много методов, а вам нужно прочитать код лишь для некоторых, сверните все методы, а затем разверните только нужные. Чтобы свернуть все методы, нажмите Ctrl+Shift+Numpad – (или ⇧⌘Numpad -). Чтобы развернуть весь код, нажмите Ctrl+Shift+Numpad + (или ⇧⌘Numpad +). При необходимости можно развернуть только отдельные блоки кода, чтобы читать код было удобнее.

Кроме того, бывает удобно перейти от одного объявления метода к другому с помощью сочетания клавиш Alt+Down (⌃Down) или Alt+Up (⌃Up).

В завершение

Независимо от того, чем вам удобнее пользоваться — мышкой или клавиатурой, — мы желаем вам удачной работы!

Ваша команда IntelliJ IDEA
The Drive to Develop

Автор оригинальной статьи:

Встречайте MPS 2021.1!

Oscar Rodriguez

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

Редактор

Масштабирование

Размер шрифта теперь можно быстро настроить в открытом окне редактора — просто зажмите клавишу CTRL и прокрутите колесико мыши. Размер шрифта не запоминается — когда вы снова откроете файл, будет использовано значение по умолчанию. Вы можете включить/отключить эту опцию в разделе Preferences | Editor | General: Change font size with Ctrl/Cmd+Mouse Wheel.

Улучшение производительности форматирования с отступами

Для наиболее частых сценариев реализация форматирования с отступами (indent layout) стала инкрементальной — это ускорит отрисовку редакторов больших моделей, которые используют форматирование с отступами (например, BaseLanguage). Вы можете отключить эту опцию при помощи параметра VM mps.indent_layout.disable_incremental.

Настройки толщины шрифта

При длительной работе над кодом важно подобрать шрифт, который бы не сильно утомлял глаза. Мы добавили настройки типографики, чтобы вы могли подобрать идеальные размеры шрифта. Версия 2021.1 позволяет настраивать толщину обычных и жирных шрифтов через меню Preferences | Editor | Fonts.

Система контроля версий

Улучшения аннотирования кода

Использование дополнительной информации от системы контроля версий позволило нам улучшить аннотацию кода. Новый алгоритм вычисления изменений ревизии отслеживает перемещение узлов в модели. Цвет строк/ячеек с аннотациями определяется только на основе тех ревизий, где были фактически произведены изменения. Если столбец с аннотациями раскрыт, то в контекстном меню ячеек в основном редакторе появится новая группа опций, таких как Copy Revision Number, Show Diff и другие.

Окно Diff для коммитов слияния

Для коммитов, уже слитых с основной веткой, в Git-логе доступно окно Diff. Оно включает три панели: левая и правая — отображают ветки, которые подверглись слиянию, центральная — демонстрирует результат слияния.

Синхронизация прокрутки в редакторе Diff

Мы добавили кнопку, позволяющую выключить синхронизацию прокрутки в окне редактора Diff.

Использование графа ревизий в алгоритмах для аннотации и истории кода

Раньше алгоритмы для аннотации кода и истории кода или фрагмента брали за основу упорядоченный список ревизий файла и вычисляли изменения, сравнивая две соседние ревизии. Однако эти две ревизии могли принадлежать разным веткам — в таком случае найденные изменения становились бессмысленными. Аналогично ревизии слияния могли ошибочно отображать изменения более ранних ревизий. Использование графа ревизий при анализе истории изменений позволило исправить такие ошибки.

Действие Save to Shelf

Новое действие Save to Shelf копирует изменения на вкладку Shelf, сохраняя их в локальной истории изменений. Чтобы запустить это действие, нажмите ⇧⌘A на macOS или Ctrl+Shift+A на Windows или Linux и введите Safe to Shelf.

Генератор

Упрощенный доступ к параметрам макроса $LOOP$

Теперь вы можете обратиться к входному узлу макроса LOOP при помощи выражения LOOP.inputNode — вам не нужно использовать макрос VAR. В том же пространстве имен можно получить доступ к индексу LOOP: используя LOOP.index вместо необходимой ранее контекстной переменной.

Обновленный оператор Transform в объявлении GenPlan

Для улучшения расширяемости планов генерации теперь есть новый механизм, позволяющий подключить заранее неизвестный набор языков и генераторов. Вы можете использовать оператор transform для подключения языка, расширяющего текущий язык или считающего его целевым. Говоря, что язык Б считает язык А «целевым», мы подразумеваем, что генератор языка Б производит конструкции языка А.

Улучшение скомпилированных шаблонов

В IDE в настройках генератора имеется опция Warn when child cannot be placed into role, которая проверяет, может ли создаваемый образец узла быть использован в указанной роли родительского узла. Эта опция также доступна в настройках сборки проектов. Генератор может показать предупреждение, которое обычно означает, что в шаблонах имеются несоответствия, например неправильно размещенные фрагменты шаблона или аннотация COPY-SRC.

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

Разное

Java-компилятор для модулей MPS с фасетом Java

Мы существенно изменили подход к компиляции модулей MPS в Java. Это напрямую связано с задачей по поддержке обработки аннотаций, получившей большое количество голосов. Мы перевели инфраструктуру Java-компилятора для MPS на набор API javax.tools.JavaCompiler — теперь MPS может использовать любой компилятор, который реализует стандартный API javax.tools. На данный момент MPS применяет тот компилятор, который назначен стандартным для данного API. При желании вы можете выбрать Eclipse Compiler for Java (ECJ), если он доступен. Когда в classpath есть библиотеки ECJ, можно переключить MPS на использование ECJ, задав mps.compiler.java=ecj в качестве свойства системы (например, изменив mps.vmpoptions). Следует отметить, что если при использовании инфраструктуры нового компилятора возникнут неустраняемые проблемы, то можно задействовать устаревший механизм API прямой компиляции ECJ, изменив конфигурацию на mps.compiler.java=ecjlegacy в качестве свойства системы.

Кроме того, сейчас мы запускаем компилятор с опцией -release с версией, указанной в настройках проекта (Preferences -> Java Compiler). Эта опция строже, чем сочетание -source/-target, которое использовалось MPS в предыдущих релизах, поскольку она контролирует применение API библиотек, которые были доступны в определенных релизах. Если из-за использования API, недоступных в некоторых релизах, вы столкнетесь с проблемами компиляции, возможно, придется обновить версию Java в проекте.

Исходная версия MPS для миграции проекта

При создании проекта теперь сохраняется значение «исходной» версии MPS. Миграции с версий MPS, предшествующих исходной, не применяются. Это дает авторам возможность назначить «исходный» порог для миграций проекта (версию можно изменить в интерфейсе для миграции проектов, используя метод «getBaselineVersion():int»).

Если для проекта отсутствует версия, при миграции версией по умолчанию будет 2018.1. Миграцию любого проекта можно запустить вручную из меню Migrations.

Улучшения рефакторинга Method signature

В окне рефакторинга Method Signature теперь можно указать значения по умолчанию для новых аргументов или аргументов, у которых поменялись типы. Если вы удалите параметр метода, но в коде останутся его использования, MPS введет новую локальную переменную и таким образом восстановит связь. Кроме того, теперь обрабатываются параметры типа vararg.

Когда вызов метода не соответствует его сигнатуре, MPS предложит поправить сигнатуру метода в соответствии с вызовом при помощи intention-действия. Мы усовершенствовали это intention-действие: теперь оно более грамотно сопоставляет существующие параметры, при этом повторно используется их максимальное количество и сохраняются их ссылки.

Новые возможности для комментариев BaseLanguage

Язык lang.text получил несколько новых возможностей — это напрямую улучшило работу с однострочными и многострочными комментариями в BaseLanguage.

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

Улучшенные выражения lang.smodel

Выражения model.roots(), model.rootsIncludingImported() и model.nodesIncludingImported() теперь, аналогично model.nodes(), поддерживают #expression для указания концептов.

Управление видимостью модулей плагина

Долгое время в MPS считалось, что конечному пользователю видны все модули из языковых плагинов. Из-за увеличения числа языков и усложнения плагинов бывают случаи, когда разработчики языков хотят скрыть определенные модули, чтобы не запутать и не перегрузить конечного пользователя огромным количеством невостребованных языков или функций. Плагины сообщают MPS о том, какие модули они затрагивают, при помощи расширения com.intellij.mps.LanguageLibrary. Теперь у расширений есть опциональный атрибут hide=”true”, который разрешает фильтровать модули плагина на основе образца, указанного в com.intellij.mps.VisibleModuleMask. У большинства плагинов MPS появился флажок для удобства фильтрации собственных языков MPS, если разработчику языков необходимо их скрыть. MPS обеспечивает для своих модулей маски в составе плагина jetbrains.mps.ide.devkit, причем разработчики собственных IDE обычно не включают этот плагин в дистрибутив и полностью контролируют отображаемые модули своего продукта.

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

Предварительный просмотр HTML-файлов

Мы добавили встроенное превью для HTML-файлов. Чтобы его открыть, нажмите на логотип MPS в виджете в правом верхнем углу редактора. Превью обновляется в реальном времени, когда вы редактируете HTML-код или изменяете связанные CSS и JavaScript-файлы.

Поддержка Apple Silicon

Теперь вы можете пользоваться MPS на Mac-устройствах с чипом M1. Скачать установщик JetBrains MPS для Apple Silicon можно с нашего сайта либо из Toolbox App.

Автоматический импорт настроек

Раньше окно Import Settings появлялось каждый раз, когда вы устанавливали новую версию MPS. Теперь, если IDE найдет необходимые конфигурационные файлы, окно не появится.

Специальные возможности

В этом выпуске мы добавили больше меток к элементам интерфейса начального экрана, панели Project Structure и VCS-лога. Теперь эти элементы, как и значки на полях редактора, корректно обрабатываются программами чтения с экрана. Мы также занимаемся расширением поддержки специальных возможностей для пользователей macOS.

Незначительные изменения

  • Теперь показывается выполнение intention-действия макроса Call-Site. (MPS-32928)
  • Внесены изменения в диалоговое окно новой модели. (MPS-30787)

Кроме того, исправлен ряд ошибок. Поделитесь с нами своими впечатлениями о новой функциональности. Мы очень рассчитываем на ваши отзывы в комментариях ниже. Напоминаем, что в нашем баг-трекере можно оставлять запросы о добавлении новой функциональности и голосовать за любые существующие запросы. Это помогает нам определиться, какие функциональности следует включить в ближайшие релизы.

Ваша команда JetBrains MPS
The Drive to Develop

IntelliJ IDEA 2021.3

Представляем IntelliJ IDEA 2021.3 — последнее большое обновление в 2021 году! Новую версию можно скачать с сайта JetBrains или через Toolbox App. Кроме того, можно обновиться из самой IDE или с помощью snap-пакета, если вы являетесь пользователем Ubuntu.

Вас ждет много новых функции и улучшений, чтобы работать с IntelliJ IDEA стало еще удобнее. В том, что касается качества, мы уделили особое внимание вашим комментариям в баг-трекере. Если у вас возникнут любые проблемы с этой версией, пожалуйста, сообщайте нам об этом.

Как всегда, подробную информацию обо всех новых возможностях вы найдете на странице «Что нового». В этом посте, мы хотим кратко рассказать вам о главных функциях и улучшениях, вошедших в IntelliJ IDEA 2021.3.

Главное
  • В этом релизе мы представляем возможности удаленной разработки (бета). Теперь вы можете подключаться к удаленному компьютеру, на котором запущен бэкенд IDE, и работать над размещенным там проектом, как если бы он находился на локальной машине. Чтобы воспользоваться этой функцией можно с начального экрана IntelliJ IDEA или скачав JetBrains Gateway через Toolbox App.
  • Добавлен новый, более быстрый способ диагностики и устранения проблем в работе IDE: действие Repair IDE… в меню File.
  • Действие Smart Step Into теперь работает с кодом Kotlin. Оно позволяет выполнить отладку выражения с цепочкой вызовов методов и лямбд, подсвечивая те методы и лямбды, в которые можно зайти.
  • Отладчик умеет находить inline-функции Kotlin и показывать их вызовы на панели трассировки стека.
  • Новая инспекция Constant conditions позволяет IntelliJ IDEA сообщать о нетривиальных условиях и значениях, которые должны всегда являться истинными, ложными или нулевыми. Она работает так же, как аналогичная инспекция для Java.
Редактор
  • Размер шрифта можно изменить во всех вкладках одновременно с помощью сочетания ⌘+колесико мыши в macOS и Ctrl+колесико мыши в Windows и Linux.
  • В новой версии удобно вставлять таблицы в файлы Markdown.
  • Предварительный просмотр теперь доступен для большинства intention-действий и быстрых исправлений в Kotlin. Если предпросмотр не поддерживается, отображается HTML-описание.
  • Работать со вкладками редактора стало проще. Чтобы получить доступ ко всем действиям на вкладках, просто нажмите на три точки в правом верхнем углу панели вкладок.
Взаимодействие с IDE
  • При нажатии клавиши F3 в macOS или F11 в Windows и Linux отмеченные файлы, папки и классы отобразятся в новом окне Bookmarks. Подробнее можно узнать из этой статьи.
  • Мы добавили возможность разделять окно Run, используя вкладки. Благодаря этому можно одновременно запускать несколько конфигураций и видеть все результаты.
  • При поиске действий через Search Everywhere в IntelliJ IDEA используется машинное обучение для сортировки результатов.
  • Переработанный узел Empty Project в окне мастера создания проекта позволяет создать простой проект для работы с отдельными файлами разных типов и добавить в него классы Java и Kotlin.
  • Новый узел Multi-Module Project позволяет с нуля создать проект со сложной структурой.
  • Новая версия IntelliJ IDEA по умолчанию использует методы более высокого уровня в качестве объекта поиска, когда вы ищете использования реализации методов с помощью сочетаний клавиш ⌥ F7 в macOS или Alt+F7 в Windows и Linux.
  • В диалоге Show Usages теперь доступен предпросмотр исходного кода для найденных использований, а также можно изменить область поиска и посмотреть тип искомого элемента кода и количество найденных использований.
Режим специальных возможностей
  • Когда активен инструмент чтения с экрана, IDE больше не показывает всплывающее окно со списком окон инструментов и всплывающее окно быстрого просмотра документации, которые появлялись по наведению мыши.
  • Кроме того, мы устранили проблему с вызовом диалога Go to Declaration.
  • Поддержка режима специальных возможностей на macOS также была улучшена. Мы устранили ряд проблем с фокусом VoiceOver и дали инструментам чтения с экрана возможность находить пункты списка в мастере New Project при создании проекта.
  • Мы убрали некоторые подсказки со звуком, чтобы снизить количество отвлекающих факторов.
Java
  • В IntelliJ IDEA добавлена новая инспекция Non-safe string passed to a safe method. Она помогает предотвратить передачу небезопасных данных безопасным методам в проектах, использующих аннотации org.checkerframework.checker.tainting.qual. В числе проблем, которые находит эта инспекция, вставки SQL-кода и слабые места XSS.
  • Мы добавили две инспекции, которые помогут упростить код. Первая предлагает заменить collect(toList()) на .toList(). Ее можно использовать с Java 16 и более поздними версиями. Вторая предлагает заменить collection.addAll(List.of(“x”)) на collection.add(x), а map.putAll(Map.of(“a”, “b”)) — на map.put(“a”, “b”).
  • При вводе локальной переменной в Java больше не открывается всплывающее окно с настройками, закрывающее код, над которым вы работаете. Теперь открыть настройки можно с помощью значка шестеренки рядом с переменной или сочетанием клавиш⌥+⇧ +O в macOS или Alt+Shift+O в Windows.
  • При вызове рефакторинга Introduce parameter IDE спрашивает, где именно нужно заменить найденные вхождения. Когда вы выберете нужное, появится значок шестеренки. Нажав на него, можно будет настроить и другие параметры рефакторинга.
  • В диалоге Run/Debug Configurations можно задать classpath для отдельных конфигураций, выбрав Modify options | Modify classpath.
Kotlin
  • Новый рефакторинг позволяет извлекать константы в Kotlin.
  • Инспекцию Possibly blocking call in non-blocking context теперь можно настроить, она охватывает больше случаев и предлагает быстрое исправление.
  • Новые подсказки в редакторе с помощью математических знаков объясняют, что значат слова и символы в диапазонах.
  • В интерфейсе мастера создания проектов теперь есть подсказки для всех полей. Кроме того, мы удалили некоторые редко используемые шаблоны и добавили новый для создания приложений Compose Web, а также упростили настройку проекта.
JavaScript
  • Обновить npm-пакеты до новой версии можно прямо из редактора.
  • Улучшена работа автодополнения HTML-кода. Теперь при вводе имени тега или аббревиатуры и при вызове автодополнения IntelliJ IDEA сразу же показывает подходящие варианты.
Scala
  • Большое внимание при подготовке этого релиза мы уделили поддержке Scala 3. Мы добавили подсветку, навигацию и автодополнение для маркеров end, ключевых слов given, usingи export, для мягких ключевых слов и «тихого» синтаксиса. Кроме того, инструмент чтения TASTy теперь может обрабатывать package objects, а также вариантность и связи в более высоких типах.
  • Перекрестно скомпилированные проекты Scala 3/Scala 2 можно открывать как проекты Scala 2.
  • Теперь плагин Scala поддерживает анализ потоков данных, что упрощает поиск ошибок в коде.
  • Для параметров компилятора Scala теперь работает автодополнение, и по каждому из них доступен быстрый просмотр документации.
  • Для диапазонов в Scala можно использовать встроенные подсказки.
SSH
  • Для конфигурации SSH можно указать прокси-сервер HTTP или SOCKS (Preferences/Settings | Tools | SSH Configurations).
Профилировщик
  • В версию IntelliJ IDEA Ultimate для Windows встроена поддержка Async Profiler 2.0.
  • Можно сравнить снэпшоты, чтобы проверить, дали ли изменения в программе ожидаемый эффект или привели к ухудшению.
Инструменты сборки
  • Конфигурации Maven были существенно переработаны. Все основные параметры теперь собраны в одном окне, а к дополнительным настройкам можно перейти по ссылке Modifyoptions.
  • Можно сохранить настройки Maven для каждого проекта в файле .mvn/maven.config. Для этого перейдите в Preferences/ Settings | Build, Execution, Deployment | Maven и выберите Use settings from .mvn/maven.config.
Управление версиями
  • Функцию Checkout and Rebase onto Current можно использовать для удаленных веток.
  • Мы улучшили структуру настроек в меню Preferences/Settings | Version Control и упростили доступ к некоторым важным конфигурациям.
  • Разницу между коммитами теперь можно посмотреть в отдельном окне Changes слева от редактора.
  • Новое действие Push all up to here позволяет делать push коммитов, в которых вы уверены (остальные продолжат храниться локально).
  • Новая настройка Align Changes Highlighting упрощает восприятие информации на экране Diff: строки без изменений отображаются друг напротив друга. В результате вы четко видите, какой код был добавлен или удален.
Терминал
  • Новая функция поддержки API ConPTY для Windows решает ряд проблем, связанных со старой реализацией, и обеспечивает поддержку 24-разрядных цветов в терминале.
  • В терминале появилась поддержка опережающего ввода: IDE предсказывает, какие символы вы собираетесь вводить, и показывает их в светло-сером цвете.
Отладчик
  • Теперь поле Evaluate доступно прямо в окне Debug, и это самый удобный способ вычисления выражений.
Фреймворки и технологии
  • HTTP-клиент IntelliJ IDEA обеспечивает базовую поддержку gRPC-запросов, включая автодополнение кода и возможность создания gRPC-запросов прямо в HTTP-клиенте.
  • При тестировании приложений, выполняющих потоковую передачу данных в IntelliJ IDEA, больше не нужно ждать окончания потока: HTTP-клиент отображает результаты в реальном времени.
  • HTTP-клиент находит изображения в ответах и показывает их превью в консоли ответа.
  • В HTTP-клиенте можно настроить перенаправление вывода в заданный файл или директорию с помощью операторов >> и >>!.
  • Идентификаторы запросов можно добавлять либо в виде комментариев с использованием @name, либо в виде текста в первом разделителе (###).
  • Поддержан новый язык шаблонов Qute для проектов на базе Quarkus.
  • IntelliJ IDEA может находить спецификации OpenAPI, сохраненные в нескольких файлах и связанные с помощью $ref, и обеспечивает автодополнение.
  • Если добавить в зависимости проекта org.jetbrains:annotations:23.0.0, можно добавлять к классам и методам аннотации @Blocking и @NonBlocking. В результате IDE сможет находить блокирующие вызовы в неблокирующих контекстах, например, в корутинах Kotlin или в реактивном коде Project Reactor, RxJava и SmallRye Mutiny.
  • Улучшено обнаружение блокирующего кода в Spring и Java EE.
  • Диалог Run/Debug Configurations для проектов Spring Bootбыл переработан, и теперь все основные настройки находятся в одном окне, а к дополнительным параметрам можно перейти по ссылке Modify Options.
  • IntelliJ IDEA предлагает автодополнение кода в дополнительных файлах конфигурации (файлы properties или .yaml), если для ссылки на другой файл используется ключ spring.config.import.
  • В проектах Spring Boot поддерживается автодополнение кода и поиск использований ссылок на application.yaml в @Value, @Scheduled и Environment.getProperty().
  • Автодополнение методов запросов теперь работает и для запросов, объявленных как @NamedQuery в проектах Spring Data JPA. К определению @NamedQuery можно перейти щелкнув по иконке на полях редактора.
  • Теперь все инспекции CDI можно использовать в файлах Kotlin. Также доступны иконки CDI на полях редактора. С их помощью можно быстро перейти к точкам внедрения зависимости и кандидатам, фабрикам bean-компонентов и событиям.
  • Мы ускорили все процессы для диаграмм классов UML как в Java, так и в Kotlin. Среди других важных изменений — новая сетка, подсветка членов класса и всплывающее окно быстрого просмотра документации.
Интеграция со Space
  • Теперь вы можете создавать merge-реквесты и код-ревью для проектов в Space.
  • IntelliJ IDEA отмечает все непроверенные файлы синими точками, чтобы вы не пропустили важные изменения во время код-ревью.
Инструменты для работы с базами данных
  • Мы добавили возможность выбрать режим Aggregate для просмотра диапазона ячеек. Благодаря этому управлять данными стало удобнее и можно не отправлять лишние запросы.
  • В новой версии полностью поддерживается рабочий процесс создания источника данных DDL на основе реального. В настройках конфигурации данных появилась новая вкладка DDL mappings, на ней можно соотнести виртуальные источники данных с реальными.
  • Новое окно сравнения Database diff можно открыть из контекстного меню. Его интерфейс был улучшен, и оно четко отображает результат синхронизации в правой панели.
  • Мы ввели три уровня интроспекции баз данных Oracle, с разной скоростью выполнения. Чтобы изменить уровень интроспекции, воспользуйтесь контекстным меню.
Kubernetes
  • Значительно улучшено форматирование шаблонов Helm.
  • Стало гораздо проще работать с кодом, содержащим вставки шаблонов Go: мы добавили подсветку для блочных элементов Helm if, else, range, with и define.
  • Новая версия IntelliJ IDEA поддерживает подсветку вложенного кода на разных языках в ресурсах ConfigMap для ключей с расширениями .yaml, .json, .properties и т. п.
  • В окне Services появилась кнопка для повторения последней команды Helm.
Docker
  • В меню Preferences/Settings | Build, Execution, Deployment с помощью переключателя Minikube можно подключиться к Docker из Minikube.
  • Все доступные репозитории образов отображаются в окне Services в отдельных узлах. Кроме того, добавлена поддержка GitLab (registry.gitlab.com) и JetBrains Space (.registry.jetbrains.space). Подробнее об изменениях в реестрах Docker читайте в этой статье.
  • Теперь подключиться к Docker можно быстрее: достаточно дважды щелкнуть по нужному узлу или нажать ⌘+Enter в macOS или Ctrl+Enter в Windows и Linux. Действие Start container вызывается этим же сочетанием клавиш.
  • При щелчке правой кнопкой на узлах Networks, Volumes, Containers или Images можно выбрать новое действие Clean up, и IDE удалит неиспользуемые объекты.
  • Мы добавили поддержку Compose V2. Благодаря этому команды Docker Compose можно вводить в форме docker compose, а не docker-compose (с дефисом).
  • Новая вкладка Layers в окне Services позволяет отслеживать содержимое слоев, размер файлов и команды, которые были использованы при создании образа.
  • В окне Services можно щелкнуть правой кнопкой на контейнере и выбрать Image | Save as a new Image, чтобы сохранить на сервере предварительно настроенный локальный контейнер и использовать его позднее.
  • В новой версии появилась поддержка Podman — еще одного способа управления подами, контейнерами и образами. Прежде чем использовать Podman в IDE, нужно настроить подключение.
Тестирование
  • Одно из важнейших обновлений в Selenium UI Testing плагине – это возможность не только создавать новые Page Object классы, но и редактировать существующие с помощью продвинутого визуального редактора со встроенным браузером.
  • Для тех кто предпочитает управлять тестами, чеклистами и даже тест ранами прямо в проекте при помощи специальных Markdown файлов (Local TMS), теперь появилась возможность составлять иерархию тест-ранов. При этом каждый тест-ран будет агрегировать в себе информацию со всех дочерних тест-ранов.
  • Также мы добавили поддержку форматирование в окне предпросмотра. Описания тест-кейсов и шагов всегда писались на Markdown, но теперь форматирование можно просматривать и менять прямо в окне предпросмотра TMS.
Другие возможности
  • Добавлена поддержка Android Studio Arctic Fox 2020.3.1.
  • Появилась поддержка Groovy 4, включая полнофункциональный анализ кода, инспекции и intention-действия. Поддерживаются также дополнительные возможности, например switch-выражения и sealed-типы.

Спасибо, что помогаете нам улучшать IntelliJ IDEA своим участием в программе раннего доступа и отзывами о новой функциональности. Делитесь впечатлениями о версии 2021.3 в комментариях к посту и сообщайте о любых ошибках в баг-трекере.

Программируйте с удовольствием!

Ваша команда IntelliJ IDEA
The Drive to Develop

Оригинал статьи опубликован на Habr.com.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *