{"id":193443,"date":"2021-10-25T04:32:00","date_gmt":"2021-10-25T03:32:00","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=ruby&#038;p=193443"},"modified":"2022-08-09T17:16:39","modified_gmt":"2022-08-09T16:16:39","slug":"rubymine-2021-3-eap5","status":"publish","type":"ruby","link":"https:\/\/blog.jetbrains.com\/fr\/ruby\/2021\/10\/rubymine-2021-3-eap5","title":{"rendered":"RubyMine 2021.3 EAP5: Run RuboCop on Save, VCS and UX Improvements"},"content":{"rendered":"<p>RubyMine 2021.3 EAP 5 is now available! Here are the most prominent new features in this build:<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#run_rubocop_on_save\">Run RuboCop on save<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#user_experience\">User experience<\/a>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#split_the_run_tool_window\">Split the Run tool window<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#accessibility_updates\">Accessibility updates<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#version_control\">Version control<\/a>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/ruby\/2021\/10\/rubymine-2021-3-eap5\/#the_new_changes_tool_window\">The new Changes tool window<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2 id=\"run_rubocop_on_save\">Run RuboCop on save<\/h2>\n<p>You can now configure RuboCop to reformat files every time one is changed and the changes are saved automatically or manually.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_rubocop_on_save.png\" alt=\"Run RuboCop on save\" width=\"670\" data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_rubocop_on_save.gif\"><\/p>\n<p>The checkbox to enable this feature is called <em>Run \u2018rubocop -a\u2019 on save<\/em>, and it is located under <em>Preferences\/Settings | Editor | Inspections | <\/em><em>Ruby | Gems and gem management<\/em>. Alternatively, you can just type <em>rubocop<\/em> in the <em>Preferences\/Settings<\/em> search field to find it.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_rubocop_settings.png\" alt=\"Run RuboCop on save - settings\" width=\"670\"><\/p>\n<p>If several files have been changed, RubyMine will run RuboCop on them all at once. Canceling this action will cancel the changes in all the files. However, <a href=\"https:\/\/www.jetbrains.com\/help\/ruby\/local-history.html\" target=\"_blank\" rel=\"noopener\"><em>Local history<\/em><\/a> will keep track of the changes for each file, and you can use it to undo only specific actions.<\/p>\n<h2 id=\"user_experience\">User experience<\/h2>\n<h3 id=\"split_the_run_tool_window\">Split the <em>Run <\/em>tool window<\/h3>\n<p>You can now split the <em>Run<\/em> tool window horizontally and vertically. This can be useful when you have several configurations running and want to see their results simultaneously.<\/p>\n<p>To split the <em>Run<\/em> tool window, drag and drop the desired tab to the highlighted area. You can drag the tab back to unsplit the tool window or right-click the top pane and select <em>Unsplit<\/em> from the context menu.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_ux_split_run_tool_window.png\" alt=\"Split the Run tool window\" width=\"670\" data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_ux_split_run_tool_window.gif\"><\/p>\n<h3 id=\"accessibility_updates\">Accessibility updates<\/h3>\n<p>In this build, we\u2019ve addressed some accessibility issues to make working in screen reader mode more comfortable:<\/p>\n<ul>\n<li>Disabled the tool window widget pop-up (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/IDEA-278151\" target=\"_blank\" rel=\"noopener\">IDEA-27815<\/a>) and the quick documentation pop-up (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/IDEA-274143\" target=\"_blank\" rel=\"noopener\">IDEA-274143<\/a>) that used to appear on mouse hover.<\/li>\n<li>Fixed an issue with calling the <em>Go <\/em><em>To Declaration or Usages<\/em> pop-up (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/IDEA-272536\" target=\"_blank\" rel=\"noopener\">IDEA-272536<\/a>).<\/li>\n<\/ul>\n<p>We\u2019ve also improved accessibility support on macOS:<\/p>\n<ul>\n<li>Resolved several issues with voiceover focus (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/IDEA-273021\" target=\"_blank\" rel=\"noopener\">IDEA-273021<\/a>).<\/li>\n<li>It\u2019s now possible to use a screen reader to create projects (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/IDEA-185260\" target=\"_blank\" rel=\"noopener\">IDEA-185260<\/a>).<\/li>\n<\/ul>\n<h2 id=\"version_control\">Version control<\/h2>\n<h3 id=\"the_new_changes_tool_window\">The new <em>Changes<\/em> tool window<\/h3>\n<p>Previously, RubyMine would show commit data or the difference between commits in a dialog. Starting from this EAP, the IDE will display this information in a separate <em>Changes<\/em> tool window located to the left of the editor.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_vcs_changes_tool_window.png\" alt=\"Changes tool window\" width=\"670\"><\/p>\n<p>To open the new tool window, in the <a href=\"https:\/\/www.jetbrains.com\/help\/ruby\/log-tab.html#context_menu\" target=\"_blank\" rel=\"noopener\"><em>Log<\/em> tab<\/a> of your version control system right-click a revision, and pick <em>Compare with local<\/em> from the context menu.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2021\/10\/213_vcs_changes_log.png\" alt=\"Compare with local\" width=\"670\"><\/p>\n<h2 id=\"join_the_early_access_program\">Join the Early Access Program<\/h2>\n<p>You can download the latest EAP build <a href=\"https:\/\/www.jetbrains.com\/ruby\/nextversion\/\" target=\"_blank\" rel=\"noopener\">from our website<\/a> or via the <a href=\"https:\/\/www.jetbrains.com\/toolbox-app\/\" target=\"_blank\" rel=\"noopener\">Toolbox app<\/a>. The full list of closed tickets in this EAP build is in the <a href=\"https:\/\/youtrack.jetbrains.com\/articles\/RUBY-A-220364888\" target=\"_blank\" rel=\"noopener\">release notes<\/a>.<\/p>\n<p>To learn about the newest features as they come out, please follow <a href=\"https:\/\/twitter.com\/rubymine\" target=\"_blank\" rel=\"noopener\">RubyMine on Twitter<\/a>. We post product news and tips several times a week.<\/p>\n<p>We encourage you to share your thoughts in the comments below and to create and vote for features in the <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/ruby\" target=\"_blank\" rel=\"noopener\">issue tracker<\/a>.<\/p>\n<p><em>Happy developing!<\/em><br \/>\n<em>The RubyMine team<\/em><\/p>\n","protected":false},"author":1062,"featured_media":182188,"comment_status":"closed","ping_status":"closed","template":"","categories":[826],"tags":[6713,6757,600,91],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/ruby\/193443"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/ruby"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/ruby"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/1062"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/comments?post=193443"}],"version-history":[{"count":11,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/ruby\/193443\/revisions"}],"predecessor-version":[{"id":196204,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/ruby\/193443\/revisions\/196204"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media\/182188"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=193443"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=193443"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=193443"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=193443"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}