2019 年可以选用这些 Rust IDE/DE

h4cd
 h4cd
发布于 2019年10月18日
收藏 63

精选30+云产品,助力企业轻松上云!>>>

比来一段时间 Rust 仿佛开端从默默无闻走向聚光灯下,从微软宣布摸索采取 Rust 替换 C/C++,到 Linux 内核保护者表示情愿接收 Rust 作为驱动开辟说话,再到 AWS 地下表示赞助 Rust,同时持续 4 年被票选为 Stack Overflow 最受迎接说话的光辉事迹又被搬出来。几次再三高亮暴光,让“Rust 究竟能不克不及成?”、“今后不消学 C/C++ 了?”、“Rust 入门应用真的很难吗?”等评论辩论一向于耳。

这个中开辟者评论辩论得比较多的一个点是“都 2019 年了,Rust 还没有一个专门的 IDE 可以用来开辟”,不消多回嘴我们都知道 IDE 关于一个编程说话的采取来讲太重要了,像下图如许的开辟者心声,其实表达出的仅仅是没有 IDE 倒霉的一个方面,也就是对老手不友爱,而功能齐备的专业 IDE 实际上完全不只仅只对老手产生影响:

(@Tinian )

有开辟者回应,表示如今 Rust 确切没有比较专业的 IDE,然则曾经有了说话办事器这类底层基本与各类插件支撑,乃至“IDE 专家”JetBrains 在其以后供给的 IntelliJ Rust 插件成熟以后也会让其像 GoLand 一样自力出来。

(@志田将来 、@dwingo 、@墨名次 、@warriorsfl)

围不雅他们的评论辩论 >>> http://aledoyoga.com/news/110621/aws-sponsorship-of-the-rust

就着这个话题,我们整顿了一份比较有代表性的 Rust 可用 IDE 与相干插件等对象的列表,分享给开辟者。

Rust 说话办事器:Rust Language Server

Rust 说话办事器(RLS)基于 LSP(Language Server Protocol),即说话办事器协定,LSP 由红帽、微软和 Codenvy 结合推出,可让不合的法式榜样编辑器与集成开辟情况(IDE)便利地嵌入各类编程说话,许可开辟人员在最爱好的对象中应用各类说话来编写法式榜样。

它经过过程用于开辟对象和说话办事器间通信的 JSON-RPC 标准,可以或许让编程对象供给及时反应的详细信息并以此完成多种强大年夜功能,比如符号搜索、语法分析、代码主动补全、移至定义、描述轮廓与重构等。Rust 说话办事器集成了这些逻辑作为后端,并经过过程标准的 LSP 供给给前端对象,它被设计为与前端有关,可以被不合的编辑器和 IDE 广泛采取。

基于 Rust 说话办事器的 VS Code 插件:rls-vscode

这个就是 Rust 官方为 Visual Studio Code 供给的 Rust 说话办事器前端参考完成,它支撑:

  • 代码补全
  • jump to definition、peek definition、find all references 与 symbol search
  • 类型和文档悬停提示
  • 代码格局化
  • 重构
  • 缺点改正并应用建议
  • snippets
  • 构建义务

值得一提的是 snippets(代码片段)和构建义务这两个特点。

snippets 是扩大为通用样板的代码模板。输入时,Intellisense 会将代码段称号包含在内作为选项,可供快捷键选中。供给了以下 snippets:

  • for - 创建轮回
  • unimplemented
  • unreachable
  • print(ln)
  • assert(_eq)
  • macro_rules - 声明宏
  • if let Option - 在某些情况下履行 if let 语句
  • spawn - 创建线程
  • extern crate - 拔出 extern crate 语句

此 Rust 插件供给了应用相干的 cargo 敕令停止构建、运转和测试的义务,可以应用 ctrl + shift + b 停止构建,可经过过程敕令面板中的“运转义务”检查其它义务。这些义务内容写在 task.json 中,插件不会覆盖现有义务,是以可以自定义义务。

IntelliJ 的 Rust 插件:IntelliJ Rust

IntelliJ Rust 是 IntelliJ 的 Rust 插件,采取 Kotlin 开辟,功能特点包含:

  • 支撑原生代码提示

  • 支撑强大年夜的快捷键功能

  • 代码快速格局化

  • snippets

该插件有较好的兼容性,兼容 2019.2 版本以后的一切基于 IntelliJ 的 IDE。可用功能集之间存在以下差别: 

(*) 表示:IDEA 社区版、PyCharm 社区版、PyCharm Edu 和 IntelliJ IDEA Edu 版。

从上表中也能够看得出来,CLion 是集成了最多功能支撑的 IDE,也是以,很多开辟者基于 IntelliJ 的 Rust 开辟情况直接就是:IntelliJ Rust+CLion。

C/C++ 跨平台集成开辟情况:CLion

CLion 是专门用于 C/C++ 开辟的 IDE,它的特点包含:

  • 智能 C/C++ 编辑:原生 C/C++ 支撑,包含现代 C++ 标准、libc++ 和 Boost。
  • 导航才能:即时导航到字符的声明或高低文用法,在全部项目中按称号搜刮类、文件与字符,并且供给具有构造和层次构造视图的代码库。
  • 代码生成:经过过程简单的快捷键便可以完成一些代码生成操作,包含:添加类成员、重写/完成函数、生成构造函数/析构函数、getter/setter,断定等式、关系运算和流输入运算、应用语句封装代码块与根据实际用法生成声明。
  • 重构:供给重定名符号、在层次构造中上/下移动成员与更改函数签名等功能。

经过过程 IntelliJ Rust 插件,CLion 供给了对 Rust 的高度支撑,除根本的功能,它还为 Rust 供给了完美的调试器、CPU Profiler 和 Valgrind 内存检查等才能。

Eclipse IDE 的 Rust 插件:Eclipse Corrosion

Eclipse Corrosion 是 Eclipse IDE 中的 Rust 版本,本质上是一个 Eclipse IDE 的 Rust 插件,经过过程与 Rust 说话办事器和 Cargo 集成供给了丰富的开辟与调试功能。它可以作为完全的 Eclipse 软件包下载。

除 Rust 说话办事器供给的功能外,Corrosion 还可以赞助用户更好地调试 Rust 法式榜样,比如供给了检查变量、GDB 控制台与断点等功能。另外一方面,由于基于 Eclipse,所以像项目大年夜纲、暗黑主题、成绩检查与 Git 集成等特点也支撑,Eclipse 用户可以轻松适应。

Rust 代码补全法式榜样:Racer

前面提到 Rust 说话办事器是作为 IDE 与编辑器的后端供给通用才能,而 Racer 是 Rust 说话办事器中的一个静态库,它供给了代码主动补全功能。

很多 IDE 等对象可以轻松集成如许的底层功能,今朝包含以下对象都有集成 Racer 的相干完成:

  • Eclipse

  • Emacs

  • Gedit

  • Gnome Builder

  • Kate

  • Sublime Text

  • Vim

  • VS Code

  • Atom

  • Kakoune

Vim 的 Rust 插件:rust.vim

Rust 官方完成了一个 Vim 插件 rust.vim,爱折腾的开辟者可以用来设备 Vim 下的 Rust 开辟情况。rust.vim 供给了 Rust 文件检测、语法高亮、格局设置与语法检测对象 Syntastic 集成等功能。特点包含:

  • Syntastic 缺点检测:rust.vim 默许将主动将 cargo 作为语法检查器注册到 Syntastic。
  • 可集成 Tagbar 检查源码
  • rustfmt 格局化代码:装置了 rustfmt 的话,可以应用 :RustFmt 敕令格局化代码。
  • Playpen 集成::RustPlay 敕令会将以后选择内容发送给 Rust playpen,假设未选择任何内容则将以后缓冲区发送给 Rust playpen。
  • 测试:在 cargo 项目中,:RustTest 敕令将即时运转测试。

对象的整顿先到这里停止了,感兴趣的开辟者可以分别单击项目标题检查详细简介,找到本身最轻车熟路的 Rust 开辟情况。

其实国外也曾经有开辟者整顿了一份更加周全的 IDE 与插件等对象对 Rust 支撑状况的概述表单:

大年夜致可以经过过程上边这个图表懂得到支撑情况,概略可以检查:

https://areweideyet.com

Rust 很强大年夜,欲望你也能上这条锈迹斑斑的船。

---

别的,由于不免漏掉,所以本文对象列表将持续更新;迎接供给相干对象线索,我们会持续补全。值得一提的是,文中提到了 Vim 极客式的设备插件,天然会有开辟者要说到 Emacs、Sublime 与 Atom 也有类似的完成,迎接提交线索。

本站文章除注明转载外,均为本站原创或编译。迎接任何情势的转载,但请务必注明出处,尊敬他人休息共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://aledoyoga.com]
本文标题:2019 年可以选用这些 Rust IDE/DE
加载中
此消息有 33 条评论,请先登录后再检查。
前往顶部
顶部