写点什么

JetBrains 宣布官方支持 Rust 插件

  • 2017-08-07
  • 本文字数:997 字

    阅读完需:约 3 分钟

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 Bieniek Marek Kaput Andrew Lygin Arseniy 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 )关注我们。

2017-08-07 19:005941
用户头像

发布了 322 篇内容, 共 153.8 次阅读, 收获喜欢 148 次。

关注

评论

发布
暂无评论
发现更多内容

设计模式之美--应用LOD法则实现“高内聚低耦合”

GalaxyCreater

设计模式

2023-05-14:你的赛车可以从位置 0 开始,并且速度为 +1 ,在一条无限长的数轴上行驶, 赛车也可以向负方向行驶, 赛车可以按照由加速指令 ‘A‘ 和倒车指令 ‘R‘ 组成的指令序列自动行驶

福大大架构师每日一题

Go 算法 rust 福大大

KubeCon EU 2023 落幕,哪些技术趋势值得关注?

SEAL安全

云原生 KubeCON FinOps 平台工程

Tensorflow.js 视频图片多目标检测

北桥苏

JavaScript 深度学习 tensorflow

背靠香港影视集团星光文化,StarNFT问世了

西柚子

Prompt learning 教学[最终篇]:Chatgpt使用场景推荐、优秀学习资料推荐、AI工具推荐

汀丶人工智能

人工智能 自然语言处理 ChatGPT 人工智能ChatGPT 吗? prompt learning

Prompt工程师指南[从基础到进阶篇]:用于开发和优化提示,以有效地使用语言模型(LMs)进行各种应用和研究主题

汀丶人工智能

人工智能 自然语言处理 ChatGPT prompt learning

聊一聊模板方法模式

设计模式 模板方法模式

Unity3D 对接 workerman 实现联机游戏

北桥苏

php socket Gateway Unity3D workerman

你管这破玩意叫缓存穿透?还是缓存击穿?

Java你猿哥

redis 缓存 缓存穿透 缓存击穿 缓存雪崩

Nacos必知必会:这些知识点你一定要掌握!

王中阳Go

Go 微服务 nacos 服务治理 配置管理

MySql 索引的失效与优化

Andy

AI DevOps | ChatGPT 与研发效能、效率提升(中)

laofo

DevOps 研发效能 ChatGPT

Orillusion引擎开源一周,荣登Github Trending榜单

Orillusion

开源 3D 渲染引擎 元宇宙 #WebGPU

Zabbix电话短信报警技巧

外滩运维专家

zabbix电话报警 zabbix短信报警 zabbix飞书报警 zabbix钉钉报警 zabbix微信报警

用友BIP成功入围工信部《2022年信息技术应用创新解决方案》

用友BIP

实力入选!赛格导航荣获“深圳知名品牌”

科技热闻

Tensorflow.js 多分类,机器学习区分企鹅种类

北桥苏

JavaScript 深度学习 tensorflow

CSS小技巧之圆形虚线边框

南城FE

CSS css3 前端开发

C语言编程-程序结构

芯动大师

C语言 结构 三周年连更

Java Web实战 | 设计一个监听器

TiAmo

JDBC 事件监听 监听

workerman 自定义的协议如何解决粘包拆包

北桥苏

php Unity3D workerman GatewayWorker

杭钢集团:以用友iuap为数智底座的数智化转型之路

用友BIP

如何使用Go语言实现LSP原则

Jack

从原理到实战,手把手教你在项目中使用RabbitMQ

Java你猿哥

Java ssm RabbitMQ 消息队列 RabbitMQ延时队列

定风波、渡重山、至未来:2023中国数字能源生态大会开启的新旅程

脑极体

新能源

Django笔记二十八之数据库查询优化汇总

Hunter熊

Python django 查询优化

ui设计软件Sketch 96.3中文激活版~ 支持m1

真大的脸盆

Mac ui设计 矢量设计

探索将大语言模型用作推荐系统

Baihai IDP

人工智能 推荐系统 企业号 5 月 PK 榜 大语言模型 LLMs

JetBrains宣布官方支持Rust插件_语言 & 开发_薛命灯_InfoQ精选文章