JetBrains 宣布官方支持 Rust 插件

阅读数:2130 2017 年 8 月 7 日

话题:语言 & 开发架构

7 月 31 号,Rust 社区就已非正式声称JetBrains 开始官方支持 Rust 插件,不过不再支持 2016.3 版本的 IDEA,受支持的 IDEA 最小版本为 2017.1。8 月 4 号,JetBrains 官方博客正式宣布开始官方支持 Rust 插件,包括 IDEA、CLion 等 IntelliJ 平台 IDE。

目前,Rust 插件的主要特性如下。

  • 导航特性:Go to Class、Go to Symbol、Go to Super Module、Structure、Go to Definition。
  • 编辑器特性:代码自动完成、格式化(计划支持 rustfmt)、合并行、智能按键(如自动插入匹配的符号)、自动填充后缀、基本的 Intention 和重构(如引入变量、重命名等)。
  • 支持 Cargo,提供了一个 UI 用于运行测试用例和应用程序,不过这要求在 Cargo 端进行一些配置。

Rust 插件诞生还不到两年时间,还有很多不足之处。Rust 这门语言本身对 IDE 并不友好,比如它复杂的类型系统、宏特性等,导致 IDE 无法百分之百友好地支持它。目前最缺的是调试器,虽然在 CLion 上已经有一个实验性质的调试器,但功能很有限,因为它严重依赖 CMake。JetBrains 计划在不久的将来能够尽快解决这些问题,包括与 Rust 类型系统保持一致、支持宏特性、提供调试器,并提供更多的 Intention、审查、重构功能。

2015 年 9 月 1 号,JetBrains 内部就已启动了两个项目,在 IntelliJ 平台 IDE 上支持 Rust。其中一个项目是由实习生Alexey Kladov主导的,另一个则是由Alexey Kudinkin主导的附带项目。这两个项目都是基于 JVM,都使用了 Kotlin 进行开发,而且是在 Kotlin 正式发布之前。一个月后,两个项目合并,Rust 插件这才正式诞生。一年前,Rust 插件还在RustConf大会上亮过相。

Rust 插件是一个开源项目,吸引了一批优秀的开发人员加入,包括Tobias BieniekMarek KaputAndrew LyginArseniy Pendryak等人。Alexey Kladov 作为主要负责人,会花 40% 的时间在项目上。另外,JetBrains 官方承若会有另外一个开发人员会加入。

JetBrains 目前并没有计划要为 Rust 推出一个单独的 IDE,不过这并不代表未来也不会。Rust 插件会一直在GitHub上开源,欢迎感兴趣的人加入或者提供反馈。如果有人想在 IntelliJ 平台 IDE(IDEA、CLion、WebStorm、Gogland、PyCharm 等)上尝试使用 Rust 插件,可以参考相关文档


感谢郭蕾对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。