RubyMine 2018.3

Offre maintenant la prise en charge complète de Struct et améliore Code Insight pour Rails.
Novembre 27, 2018
Nouvelle Version

Fonctionnalités

Code Insight

  • Rails scopes - When you add an association object to your scope, RubyMine will suggest available finder methods. You will also discover code autocompletion and navigation for chained scopes.
  • Struct - RubyMine adds full support for Struct. Now you can autocomplete, navigate, and refactor objects of Struct classes the same way you do with any other Ruby classes and their instances.
  • Nullability analysis for Ruby - A new Nil dereference inspection will check your code for possible nil errors in the current context, like when you call a method on a variable that might be nil.

Internationalization

  • Creating I18n translations - Use the new I18n dialog to create translations for all your dictionaries at once. Just like before, put the caret on a string, press Alt+Enter, and choose to i18nize it. Then, once generated, hold Cmd/Ctrl and click the created key to navigate to any existing translation.
  • Scopes and lazy keys - You can also create translations for namespaced keys and lazy lookups with no extra effort, as the new version of RubyMine lets you create translations for such keys right from the editor.
  • Translation previews - RubyMine can show you actual translations instead of I18n keys - just press Cmd./Ctrl. on any key in a controller or a view file. You can even choose which dictionary should be used as a translation preview.

Refactoring

  • Extract Parameter - The new Extract Parameter dialog (Refactor | Refactor this | Extract Parameter) allows you not only to extract an argument, but also to provide a default value for it, make it optional, or pass it as a block.
  • Inline refactoring improvements
  • Improved Inline refactoring - RubyMine 2018.3 improves Inline refactoring to let you get rid of of excessive methods and variables more safely. In particular, inlining methods with arguments and variables with string interpolation is now much more robust.
  • Extract Substrings to variables and constants - RubyMine 2018.3 adds the ability to extract parts of strings to variables and constants.
  • Intention actions - New intention actions will help you make your code more readable. For example, you can now use the De Morgan's law intention to simplify ugly negations and extract block calls to methods. Just put your caret at a code smell and press Alt+Enter to apply an appropriate quick-fix.

Tests

  • Test gutters - RubyMine 2018.3 also puts a handy gutter at each test method. These gutters are visual anchors that show you every particular test that can be run in a file. They also offer a faster way to run tests than the context menu does.

Git

  • View pull requests - Now you can view GitHub pull requests right inside RubyMine. Go to VCS | Git | View Pull Requests to view the pull request’s description, labels, assignees, and the actual changes. In addition, all the familiar features in the Git integration, such as update project, commit changes, view diff, and conflict resolution, now work with Git submodules.

User Interface

  • Renewed Darcula - The new Darcula theme gets rid of noisy colors, becomes easier on the eye, and better aligns with similar schemes designed for other programming languages in JetBrains IDEs. The previous Darcula is still available, too. If you prefer to stay with it, go to Preferences / Settings | Editor | Color Scheme | Ruby, click on the gear icon, and choose Transform current scheme to Darcula 2018.2.
  • Search Everywhere - You will also discover the new, more convenient Search Everywhere dialog (Shift+Shift). It makes it easier to use all the other navigation dialogs – Go to Class, File, Symbol, and Action. Simply press Tab to switch between the search types.
  • Plugins UI - The updated Plugins section (Preferences / Settings | Plugins) makes it easier to manage, install, uninstall, and update plugins. For example, now you can search for plugins by tags, and sort the results by downloads, name, rating, featured, or updates.

JavaScript

  • Frameworks - As you work with Angular, enjoy improved code autocompletion and navigation for variables, pipes, and async pipes and the template reference variables. In React apps, code completion now suggests all component lifecycle methods. The Unresolved variable inspection warns you about the possibly undefined components.
  • Autoimports in JavaScript - In JavaScript files, the IDE can now automatically add imports not only for symbols defined in your project, but also for symbols from the project’s dependencies. This works if the library has sources written as ES modules or a TypeScript type definition file.
  • HTML and Style Sheets - The new Extract ruleset action (Alt-Enter) helps you quickly extract CSS declarations from one ruleset to a new, more specific one. The code style for CSS and its preprocessors now has a configuration for the use of blank lines. Moreover, you can now sort the CSS properties inside blocks – alphabetically or in any custom order.

Markdown

  • Extracting reference links and more - The new Introduce reference action helps you create references for inline links. The IDE will find all the link duplicates in the file suggest replacing them with the newly created reference. In addition, you can now strikethrough text and toggle header size. Find these new actions in the toolbar.

Other improvements

  • Improved highlighting of keywords in conditional statements.
  • Search for YAML values by flattened nested keys.
  • Copy a path to a YAML value from breadcrumbs.
  • Improved support for attr_accessors.
  • Parameter hints in JavaScript files.
  • High-contrast theme.
  • Safe delete in i18n.
  • Activity monitor.
Nullability analysis for Ruby

RubyMine

IDE Ruby on Rails réunissant les outils essentiels pour les développeurs.

RubyMine est également disponible en :

Vous avez une question ?

Discutez en direct avec l'un de nos spécialiste des licences JetBrains .