RubyMine 2019.3 Help

YAML

RubyMine enables you to work with YAML files (.yml, .yaml) and supports the following capabilities:

  • Code formatting

    You can access code style settings related to YAML in the Editor | Code Style | YAML page of the Settings/Preferences dialog Ctrl+Alt+S .

  • Inspections

    RubyMine detects duplicated keys, unused anchors in YAML documents, and so on.

  • Code completion

    For example, you can use code completion for YAML documents that have the JSON schema, or you can complete anchor aliases.

  • Navigating

    For instance, you can navigate between anchors and aliases.

  • Finding usages

  • Renaming (for example, anchors and aliases)

  • Syntax highlighting

    You can change color settings in the Editor | Code Style | YAML page of the Settings/Preferences dialog Ctrl+Alt+S.

Let’s explore some YAML-specific features available in the editor.

Anchors and aliases

RubyMine supports working with anchors and aliases. If you specify a new anchor in the YAML file, the editor will show a warning that this anchor is not used by any node.

YAML: unused anchor warning

The editor enables you now to complete aliases for this anchor.

YAML: complete alias

You can navigate from aliases to the anchor using the Ctrl+B shortcut.

YAML: navigate to anchor

For the anchor, you can do the same and find all corresponding aliases.

YAML: navigate to aliases

RubyMine also supports the rename refactoring for anchors and aliases.

Note that the Structure view Alt+7 allows you to manage whether to display nodes for aliases. Use the Show aliases sub-trees button the Expand button to do this.

YAML structure view

Remote JSON schemas

RubyMine supports code completion and inspections for YAML files using the specified JSON schema. For instance, if you use the .travis.yml file for Travis CI configuration, RubyMine will suggest completing its options using the JSON schema loaded from schemastore.org:

YAML: complete JSON

You can manage loading JSON schemas using the Languages & Frameworks | Schemas and DTDs | Remote JSON Schemas page of the Settings/Preferences dialog Ctrl+Alt+S.

If necessary, you can specify a path to the required schema file in the Languages & Frameworks | Schemas and DTDs | JSON Schema Mappings page.

Copying keys

RubyMine provides the ability to copy a full path to a specific option specified in the YAML file. For instance, this can be useful when copying key paths from localization files. You can do this in two ways:

  • Place a caret to the required key and press Ctrl+Shift+Alt+C.

  • Hover over the required key, right-click it and select Copy Reference.

YAML: copy references

For the localization key on the image above, the en.likes.create.error value will be copied.

Last modified: 30 January 2020