Pull to refresh
0
JetBrains
Делаем эффективные инструменты для разработчиков

Новая версия RubyMine: Chef, Puppet, EditorConfig и многое другое

Reading time4 min
Views15K
Мы в JetBrains искренне считаем, что программирование отнюдь не сводится к простому написанию кода. Программировать — значит постоянно развиваться, приумножать свои знания, совершенствовать навыки, используя при этом самые лучшие инструменты. Если вам знакома притча о двух дровосеках, в которой более искусен оказывается тот, кто не забывает наточить свой топор, то вы поймете наше стремление оттачивать инструменты разработки с каждым следующим релизом. Не стал исключением и последний релиз RubyMine, нашей среды для разработки на Ruby и Rails, о котором мы и хотим рассказать подробнее в этом посте. Кстати, вчера стало доступно для скачивания и первое обновление — RubyMine 7.0.1.





Интеграция с Chef


Система управления конфигурациями Chef теперь поддерживается посредством отдельного плагина, совместимого с RubyMine 7 и IntelliJ IDEA 14 и позволяющего распознавать и создавать книги, рецепты и ресурсы в IDE.

Если установлен Chef gem и открыт проект, содержащий папку с каталогом recipes c ruby-файлом внутри, то при открытии этого файла RubyMine автоматически распознает его как рецепт и предлагает добавить соответствующую директорию в качестве книги:



Структуру проекта можно в любой момент изменить в настройках (Settings | Project Structure):



После того как завершены настройки, в файлах-рецептах становится доступным автодополнение кода как для ресурсов:



так и для их атрибутов:



Поддержка языка Puppet


Поддержка языка Puppet в IDE также осуществляется посредством отдельного плагина, совместимого с RubyMine 7 и IntelliJ IDEA 14, который был значительно улучшен и заточен для работы с Puppet-манифестами.

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



Навигация осуществляется не только среди манифестов, созданных пользователем, но также и по модулям, установленным из Puppet Forge. Однако следует учесть, что используемые модули должны быть расположены в директории по умолчанию или в директории, указанной в конфигурационном файле puppet.conf:



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



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


В RubyMine 7 была добавлена поддержка формата EditorConfig, который позволяет использовать одни и те же настройки стиля кода в разных проектах и разных редакторах. Правила форматирования описываются в конфигурационном файле editorconfig, при добавлении которого в корень проекта правила автоматически распознаются и применяются:



Обратите внимание, что правила форматирования, описанные в .editorconfig, по умолчанию имеют приоритет над настройками IDE. Выключить EditorConfig можно в настройках Editor | Code Style.

Кроме того, в настройках форматирования (Editor | Code Style) появилась опция Detect and use existing file indents for editing, которая позволяет редактору определять и использовать текущие настройки форматирования в файле:



Таким образом, даже если настройки стиля кода (такие как Use Tab Character и Indent Size) в редактируемом файле отличаются от настроек IDE, они будут сохраняться.

Улучшенный отладчик


При запуске проекта в режиме отладки теперь стала доступна интерактивная консоль, которая позволяет выполнять команды непосредственно в IDE с использованием в том числе и функции автодополнения кода:



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



Кроме того, в RubyMine 7 добавлена новая удобная функция отладчика: теперь значения объектов отображаются непосредственно в редакторе рядом с кодом:



Более интеллектуальный анализ кода


Благодаря идеям и замечаниям наших пользователей нам удалось сделать анализ кода в новой версии IDE еще умнее. Теперь в качестве атрибутов метода правильно распознаются также атрибуты YARD и методы RDoc:



Поддержка RVM в качестве удаленного SDK проекта


Удаленные интерпретаторы Ruby под управлением RVM теперь можно добавлять в качестве SDK проекта:



Кроме того, мы улучшили и поддержку удаленных SDK на основе файлов конфигурации vagrant.

Scratch-файлы


С помощью функции Scratch Files теперь можно экспериментировать и прототипировать код прямо в редакторе, не создавая при этом новые файлы в проекте. По шорткату Shift-Cmd-N / Ctrl+Alt+Shift+Insert вы можете создать временный файл, выбрав нужный тип файла. Все возможности редактора, например автодополнение кода и инспекции, доступны в Scratch-файлах:



И многое другое


RubyMine 7 также унаследовал от WebStorm 9 ряд улучшений для веб-разработки, включая предварительный просмотр для Emmet, поддержку последних версий CSS3, Stylus и Sass, реформатирование кода для Slim и HAML, поддержку ReactJS и JSX/ES6 и др.

Мы можем еще долго рассказывать о многих других, небольших, но от того не менее приятных и полезных новшествах RubyMine 7. Но не лучше ли просто попробовать новую версию в деле? Узнать подробнее о RubyMine 7 и скачать бесплатную 30-дневную пробную версию IDE вы можете на нашем сайте. Обновление бесплатно для всех пользователей, которые купили или обновили свои лицензии 13 ноября 2013 года или позднее. Также напоминаем о том, что все IDE от JetBrains теперь бесплатны для студентов.

Мы постараемся ответить на ваши вопросы в комментариях, а также будем рады любым новым реквестам в нашем баг-трекере.

Программируйте с удовольствием!
-Команда JetBrains
Tags:
Hubs:
+31
Comments15

Articles

Change theme settings

Information

Website
jetbrains.com
Registered
Founded
Employees
1,001–5,000 employees
Location
Чехия