rust-analyzer 项目开始于 2017 年年底(第一次提交)。当时,现有的 LSP 实现(RLS)已经为 Rust 提供了数年的 IDE 支持。虽然 RLS 确实能够很好地处理一些重要功能,但它与 IDE 向其他一些语言所提供的功能丰富程度和体验上还有较大差距。
最初,rust-analyzer 只是为了 Rust 的容错解析。后来 rust-analyzer 的功能越来越强大,如今已经成为 Rust 编程中不可或缺的一个利器了。但 rust-analyzer 此前并不是一个官方的 Rust 项目,这为将 rust-analyzer 过渡为官方 LSP 实现增加了难度。
日前 rust-analyzer 加入 Rust 组织,正式成为 Rust 组织的一份子。这一组织上的变化对 rust-analyzer 的用户和贡献者来说不会有任何变化,反而是加入组织后,解除了技术工作上的障碍,使 rust-analyzer 在不久的将来能够成为官方的 Rust 语言服务器,目前的语言服务器 RLS 将会退役。
如果你之前对尝试 rust-analyzer 犹豫不决,现在就是一个很好的机会。它不光功能强大,而且根据 VS Code 的统计,它是各种编程语言中评价最好的 LSP 实现之一。
rust-analyzer 支持的编辑器包括 VS Code、Neovim 和 Emacs,开发者可以根据自己使用的编辑器自行安装。