- PVSM.RU - https://www.pvsm.ru -
Привет!
Две недели назад мы выпустили GoLand 2019.3.
Этот релиз — особенный для нашей команды и отличается от предыдущих. С того момента, как GoLand из плагина вырос в самостоятельную IDE, прошло 2 года. Все это время мы старались добавить как можно больше разнообразной функциональности: от набора рефакторингов, интеграций с профилировщиками, качественной поддержки Go Modules, инспекций кода и кастомных тем до возможности загрузить и установить любую версию SDK прямо из IDE.
В этом релизе мы решили сосредоточиться на улучшении производительности, исправить мелкие баги, недоделки и сценарии с неожиданным поведением. Однако не смогли удержаться и все-таки добавили несколько новых вещей :)
Если коротко, то:
Мы упорно трудились, чтобы IDE работала быстрее и потребляла меньше ресурсов. Основной результат — сократилось время запуска.
Обратите внимание, что результаты могут отличаться в зависимости от размера проекта, возраста устройства, объема оперативной памяти и дискового пространства.
Работа над улучшением производительности будет продолжаться и в следующих версиях.
В GoLand 2019.3 есть подсветка синтаксиса для файлов go.mod и навигация от имени импортируемого модуля к папке с его исходным кодом. Нажмите ⌘+B на MacOS или Ctrl+B на Windows/Linux на определенном пути импорта зависимостей, и GoLand переместит вас к его источникам в Project View.
Кроме того, Go Modules отображаются теперь с полным путем импорта, а их версии представлены приглушенным цветом шрифта в окне Project View.
Evaluate Expression в отладчике теперь позволяет напрямую вызывать метод встроенного поля.
Отладка с помощью Mozilla rr поддерживается начиная с GoLand 2018.3, но раньше она работала только на Linux. Теперь можно запустить сервер на Linux и отладить программу удаленно на MacOS или Windows. Вот как это можно сделать:
dlv --headless --api-версия 2 -l localhost:2345 Repay /path/to/trace/dir /path/to/binary.
Обратите внимание, что Mozilla rr доступен только на Linux.
GoLand теперь подсвечивает имя и тип неиспользуемого параметра, или только имя, если тип задействован в реализации сигнатуры метода.
В последнем случае IDE предоставляет два быстрых исправления на выбор: Delete parameter names и Rename to _. Такое же поведение предусмотрено для функций и методов, используемых в качестве функционального типа.
Чтобы удалить все неиспользуемые параметры за один раз, нажмите Alt+Enter и воспользуйтесь быстрым исправлением Delete all unused parameters.
Если функция или метод, которые не были объявлены ранее, используются в качестве функционального литерала, то GoLand предложит создать их. Просто нажмите Alt+Enter и выберите Create method/function.
Теперь GoLand предлагает импортировать пакеты на основе используемых псевдонимов через Alt+Enter в любом файле проекта.
Change Signature теперь всегда показывает типы параметров во вкладках Parameters и Result parameters. Для объединения одинаковых типов параметров в сигнатуре пригодится опция Reuse Types.
Кроме того, вы найдете два новых Intention actions: Reuse signature types объединит все одинаковые определения параметров в одном объявлении, а Expand signature, наоборот, добавит типы к каждому параметру через Alt+Enter.
Extract Variable и Rename предлагают подходящие имена для переменных, анализируя контекст. Например, err для выражения с обработкой ошибки, ctx — для context.Context и так далее.
Инспекции кода теперь работают прицельнее. Мы сократили диапазон выделения потенциальных проблем в редакторе, чтобы при вызове контекстного меню через Alt+Enter показывать только самые подходящие быстрые исправления для конкретного участка кода.
Мы улучшили работу редактора с rune-литералами:
Go позволяет использовать существующие переменные в левой части коротких объявлений var. Таким образом, два выражения, которые выглядят одинаково, могут иметь разные значения. Чтобы это было легче заметить, мы добавили подсветку синтаксиса для переназначений.
В GoLand 2019.3 можно сворачивать блоки кода для составных литералов. Используйте переключатели, чтобы сложить или разложить фрагмент кода (либо нажмите Ctrl+NumPad Minus/Ctrl+NumPad Plus на Windows или ⌘+NumPad Minus/⌘+NumPad Plus на MacOS). Чтобы настроить поведение сворачивания блоков кода, перейдите в Settings/Preferences | Editor | General | Code Folding.
Live Templates for и forr предлагают осмысленные имена для переменных, meth — для ресивера. Например, для индекса будут предложены имена i и index; для переменной — s, string или line.
С помощью действия Find (⌘+F на MacOS и Ctrl+F на Windows/Linux) теперь можно искать необходимый фрагмент кода в ограниченной области. Выделите нужный фрагмент в редакторе и вызовите Find — GoLand выполнит поиск только в выбранной области. Чтобы легко переключиться на поиск по всему файлу, нажмите ⌘+F/ Ctrl+F во второй раз или используйте опцию In Selection в панели инструментов.
Теперь при использовании диалога Find in Path с опцией file mask GoLand показывает расширения файлов в результатах поиска, чтобы было проще различать файлы с одинаковыми именами.
В GoLand 2018.2 мы добавили Global File Watcher для обмена настройками сторонних инструментов между уже созданными проектами с помощью опций Project и Global. В новой версии можно включить глобальную настройку File Watchers по умолчанию во всех новых проектах, которые вы создаете или открываете.
В меню File выберите Other Settings | Settings for new projects, перейдите к Tools | File Watchers, добавьте новый Global File Watcher, а затем установите флажок рядом с ним, чтобы включать его во все новые проекты.
Когда дедлайн на носу, нет времени изучать What's New, release notes, читать новую статью о продукте. Поэтому мы добавили интерактивные уроки — они помогут вам узнать о функциональности GoLand, когда для этого будет подходящий момент.
Уроки находятся на экране приветствия над списком проектов. После обновления IDE до новой версии там появится урок о новом выпуске. Кроме того, Tutorials можно открыть с помощью окна инструментов из любого проекта.
В окне Hierarchy появилась возможность анализа иерархии вызовов метода. Две новые кнопки позволяют переключаться между методами, которые вызываются из текущего или вызывают текущий метод. Также теперь можно сортировать элементы дерева в алфавитном порядке. Чтобы увидеть Hierarchyв списке Tool Windows, необходимо сначала построить иерархию, а затем перейти в меню Navigate | Call Hierarchy or Navigate | Type Hierarchy.
В GoLand 2019.3 можно устанавливать и удалять плагины раскладки клавиатуры и плагины цветовых схем без перезапуска IDE.
Можно задать свой шорткат для действия, которое возвращает фокус обратно в редактор, вместо использования кнопки ESC. Найдите действие Focus Editor в разделе Preferences/Settings | Keymap, щелкните на нем правой кнопкой мыши и выберите Add Keyboard Shortcut из раскрывающегося меню.
Мы добавили возможность сделать полосы прокрутки более видимыми. Для этого установите флажок Use contrast scrollbars в разделе Preferences/Settings | Appearance & Behavior | Appearance.
Новое диалоговое окно Clone расположено под VCS | Get from Version control. Теперь вы можете войти в аккаунт на GitHub прямо из обновленного диалога. Если вы уже вошли в систему, IDE мгновенно покажет списки всех репозиториев, сгруппированных по учетным записям или организациям, в которых вы состоите.
При возникновении конфликтов во время действий merge, rebase и cherry-pick теперь можно подробнее узнать об источнике изменений в диалоге Merge. Просто нажмите Show Details, чтобы просмотреть список коммитов, которые привели к текущему состоянию кода.
В GoLand 2019.3 реализована начальная поддержка MongoDB. Теперь вы можете:
Начать исследовать ошибки подключения теперь можно нажатием всего одной кнопки в IDE — и GoLand откроет результаты об ошибке в поисковике Google.
Вот и всё! Спасибо, что дочитали до конца! Будем рады вашим отзывам и постараемся ответить на любые вопросы. Пишите нам здесь в комментариях, в Twitter [1] или в баг-трекер [2].
Ваша команда JetBrains GoLand
The Drive to Develop
Автор: Екатерина Жарова
Источник [3]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/339745
Ссылки в тексте:
[1] Twitter: https://twitter.com/golandide
[2] баг-трекер: https://youtrack.jetbrains.com/issues/GO
[3] Источник: https://habr.com/ru/post/479748/?utm_source=habrahabr&utm_medium=rss&utm_campaign=479748
Нажмите здесь для печати.