将Vim设置为Rust IDE
Vim 编辑器是很好的 Rust 应用开发环境。
Rust 语言旨在以 C++ 开发人员熟悉的方式实现具有安全并发性和高内存性能的系统编程。它也是 Stack Overflow 的 2019 年开发人员调查中最受欢迎的编程语言之一。
文本编辑器和集成开发环境(IDE)工具使编写 Rust 代码更加轻松快捷。有很多编辑器可供选择,但是我相信 Vim 编辑器非常适合作为 Rust IDE。在本文中,我将说明如何为 Rust 应用开发设置 Vim。
安装 Vim
Vim 是 Linux 和 Unix 中最常用的命令行文本编辑器之一。最新版本(在编写本文时)是 8.2,它在使用方式上提供了前所未有的灵活性。
Vim 的下载页面提供了多种二进制或软件包形式安装。例如,如果使用 macOS,那么可以安装 MacVim 项目,然后通过安装 Vim 插件 扩展 Vim 的功能。
要设置 Rust 进行开发,请下载 Rustup,这是一个方便的 Rust 安装器工具,并在你的终端上运行以下命令(如果你使用 macOS、Linux 或任何其他类 Unix 系统):
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
在提示中选择安装选项。然后,你将看到如下输出:
stable installed - rustc 1.43.1 (8d69840ab 2020-05-04) Rust is installed now. Great! To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH environment variable. Next time you log in this will be done automatically. To configure your current shell run source $HOME/.cargo/env
语法高亮
Vim 能让你通过 .vimrc
文件配置你的运行时环境。要启用语法高亮,请打开 .vimrc
文件(如果不存在就创建一个):
$ vim ~/.vimrc
在 .vimrc
中添加以下内容并保存:
filetype plugin indent on syntax on
第一行同时打开检测、插件和缩进配置。第二行启用语法高亮。这些功能将帮助你在 Rust 中管理开发流程。在 Vim 的帮助文件中了解更多信息。
在 Vim 中创建一个 Rust 应用
要使用 Vim 创建一个新的 Rust HelloWorld 应用(hello.rs
),请输入:
$ vim hello.rs
输入以下 Rust 代码在控制台中打印 Hello World!
:
fn main() { println!("Hello World"); }
它看起来应该像这样:
Rust code with syntax highlighting
没有语法高亮的样子如下:
Rust code without syntax highlighting
你是否注意到 Vim 自动缩进和组织代码?那是因为你在 .vimrc
文件中输入了第一行。
很好!接下来,你将使用 Rust 的包管理器 Cargo 构建此应用。
Cargo 集成
Cargo 使创建应用更加容易。要查看操作方法,请创建一个基于 Cargo 的 HelloWorld 应用。如果你尚未在 Linux 或 macOS 系统上安装 Cargo,请输入:
$ curl https://sh.rustup.rs -sSf | sh
然后使用 Cargo 创建包:
$ cargo new my_hello_world
如果查看目录结构,你会看到 Cargo 自动生成一些源码和目录。如果你安装了 tree
,请运行它查看目录结构:
$ tree my_hello_world my_hello_world ├── Cargo.toml └── src └── main.rs 1 directory, 2 files
在 Vim 中打开 main.rs
源码文件:
$ vim my_hello_world/src/main.rs
它与你在上面手动创建的 HelloWorld 示例中的代码相同。用 Rust with Vim
代替 World
:
fn main() { println!("Hello, Rust with Vim"); }
使用 :wq
保存更改并退出 Vim。
编译你的应用
现在你可以使用 cargo build
编译你的第一个 Rust 应用:
$ cd my_hello_world $ cargo build
你的终端输出将类似于以下内容:
Compiling my_hello_world v0.1.0 (/Users/danieloh/cloud-native-app-dev/rust/my_hello_world) Finished dev [unoptimized + debuginfo] target(s) in 0.60s
你可能会看到一条警告消息,因为你重用了示例包名 my_hello_world
,但现在可以忽略它。
运行应用:
$ target/debug/my_hello_world Hello, Rust with Vim!
你也可以使用 cargo run
一次构建和运行应用: