IntelliJ Rust

Open-source Rust plugin for IntelliJ-based IDEs

Install

Stable builds

IntelliJ Rust is in active development, and we regularly publish new stable builds to the JetBrains plugin repository. You can download and install them directly from Settings / Preferences | Plugins | Marketplace in your IDE.

Nightly builds

In addition to stable releases, we also ship nightly snapshots of the intellij-rust development branch. To use the nightly channel, add a custom plugin repository and set the following URL:

https://plugins.jetbrains.com/plugins/nightly/8182

Compatible IDEs

The plugin is compatible with all Intellij-based IDEs like IDEA, CLion, or PyCharm. The latest plugin version supports the latest released platform version (for example, 2019.2).

Bug reports and feature requests

Please use our tracker. You can get there quickly right from the IDE: call Create New Issue on a selected piece of code, and you’ll jump to a pre-filled issue creating form.

Also feel free to ping us on Gitter.

×

Source

Intelligent Rust

editor features

IntelliJ Rust brings JetBrains-quality language support and full IDE experience to your Rust workflow.

Rust becomes native to IDEA, CLion, and other IntelliJ IDEs with smart coding assistance, seamless Cargo support, and built-in test runner.

In CLion, you get even more: fully-fledged debugger, CPU profiler, and Valgrind memcheck.

What's new

IntelliJ Rust Changelog #133

New Features

  • Support configuring workspace features in Cargo.toml. Now it is possible to enable or disable any specific workspace feature in the Cargo.toml file, and Go to Declaration and other code insight features will take them into account. See more details in the corresponding issue

  • Resolve stdlib and Cargo source code paths in backtrace (by @Kobzol)

Fixes

  • UI improvements:
    • Use recommended guidelines for settings UI
    • Get rid of scrollbar inside project creation dialog in minor IDEs like CLion
  • Parser improvements:
    • Properly parse tuple.0.0 as tuple indexing supported in Rust 1.46
    • Improve parsing of TOML arrays with syntax errors
    • Properly parse special macro calls with fully qualified names like std::include. Now code insight features work as expected for code included using std::include or std::concat
  • Grazie plugin integration improvements:
    • Fix incorrect proofreading annotations on raw and binary string literals
    • Support String literals, Comments and Documentation options in Preferences | Editor | Proofreading | Grammar for Rust language
  • Do not remove required parentheses by Remove dbg! intention (by @t-kameyama)
  • Show test results in the gutter via red and green icons to differ passed and failed tests
  • Use public visibility when creating function in other crate by Create function intention
  • Update debugger pretty-printers to fix rendering of HashMap and HashSet in IDE debugger
  • Fix running code with coverage on proc-macro libs
  • Fix compatibility issues with latest 2020.3 EAPs

Internal Improvements

  • Provide source code of Grazie plugin while development when baseIDE in gradle.properties is idea. Previously, IDE always showed only class files
  • Introduce tests for intention scope. Now it is possible to check that an intention is available only inside some text range and unavailable outside.
  • Improve presentation of regression test results:
    • Use 1-based indices for line/column to be compatible with editor UI and Go to Line/Column action
    • Sort regression annotations

Full set of changes can be found here