鍍金池/ 教程/ Java/ 前期準(zhǔn)備
標(biāo)準(zhǔn)輸入與輸出
消息傳遞
循環(huán)
注釋
Rust for Mac OS
幾種智能指針
Cell, RefCell
trait對象 (trait object)
rust web 開發(fā)
Unsafe、原始指針
Macro
迭代器
函數(shù)
Borrow, BorrowMut, ToOwned
快速上手
二叉樹
編輯器
測試與評測
Deref
安裝Rust
哈希表 HashMap
原生類型
17.錯(cuò)誤處理
VS Code 安裝配置
動(dòng)態(tài)數(shù)組Vec
模式匹配
操作符和格式化字符串
Rust for Linux
函數(shù)參數(shù)
Visual Studio
vim/GVim安裝配置
閉包作為參數(shù)和返回值
安全(Safety)
Cow
生命周期( Lifetime )
閉包的實(shí)現(xiàn)
所有權(quán)(Ownership)
Atom
將Rust編譯成庫
類型、運(yùn)算符和字符串
類型系統(tǒng)中的幾個(gè)常見 trait
特性
屬性和編譯器參數(shù)
Spacemacs
集合類型
Rust json處理
Heap & Stack
并行
標(biāo)準(zhǔn)庫示例
基本程序結(jié)構(gòu)
鏈表
trait 和 trait對象
前期準(zhǔn)備
代碼風(fēng)格
編譯器參數(shù)
基于語義化版本的項(xiàng)目版本聲明與管理
Rust 版本管理工具: rustup
引用&借用(References&Borrowing)
注釋與文檔
10.1 trait關(guān)鍵字
模式
調(diào)用ffi函數(shù)
unsafe
并發(fā),并行,多線程編程
AsRef 和 AsMut
Rust旅程
Rust for Windows
結(jié)構(gòu)體與枚舉
條件分支
附錄I-術(shù)語表
變量綁定與原生類型
Mutex 與 RwLock
泛型
裸指針
常用數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)
系統(tǒng)命令:調(diào)用grep
Into/From 及其在 String 和 &str 互轉(zhuǎn)上的應(yīng)用
共享內(nèi)存
Sublime
網(wǎng)絡(luò)模塊:W貓的回音
函數(shù)返回值
包和模塊
高階函數(shù)
函數(shù)與方法
match關(guān)鍵字
隊(duì)列
目錄操作:簡單grep
語句和表達(dá)式
并發(fā)編程
閉包
測試
閉包的語法
同步
迭代器
String
Send 和 Sync
Rc 和 Arc
屬性
Emacs
優(yōu)先隊(duì)列
Prelude
cargo簡介
控制流(control flow)
數(shù)組、動(dòng)態(tài)數(shù)組和字符串
FFI
模塊和包系統(tǒng)、Prelude
實(shí)戰(zhàn)篇
Rust 是一門系統(tǒng)級編程語言,被設(shè)計(jì)為保證內(nèi)存和線程安全,并防止段錯(cuò)誤。作為系統(tǒng)級編程語言,它的基本理念是 “零開銷抽象”。理
運(yùn)算符重載
Any和反射
rust數(shù)據(jù)庫操作
輸入輸出流
復(fù)合類型
性能測試

前期準(zhǔn)備

下載 Rust 源代碼(供 racer 使用)

從github下載

git clone https://github.com/rust-lang/rust.git

從官網(wǎng)下載源代碼包

下載地址: https://static.rust-lang.org/dist/rustc-nightly-src.tar.gz

使用rustup下載(推薦)

使用rustup獲取源碼最大的好處在于可以使用rustup update隨時(shí)獲取最新版源碼,而且特別省事,執(zhí)行以下命令獲取源碼

rustup component add rust-src

racer

racer是一個(gè)由rust的愛好者提供的rust自動(dòng)補(bǔ)全和語法分析工具,被用來提供基本的補(bǔ)全功能和定義跳轉(zhuǎn)功能。其本身完全由rust寫成,補(bǔ)全功能已經(jīng)比較完善了。

我們可以通過如下的方式獲取它:

cargo自動(dòng)安裝

在rust 1.5版本以后,其安裝包自帶的cargo工具已經(jīng)支持了cargo install命令,這個(gè)命令可以幫助我們通過簡單的方式獲取到racer的最新版。

你可以通過以下命令安裝racer最新版,目前已知在Linux、Unix和Windows上適用

cargo install racer

編譯安裝

事實(shí)上我更推薦有條件的用戶通過這種方式安裝,因?yàn)樽约簩?shí)戰(zhàn)操作一遍總是有些收獲的。(帥氣可愛的DCjanus表示懷疑)

下載源碼

首先,我們需要下載racer的源碼

git clone https://github.com/phildawes/racer.git

進(jìn)行編譯

然后,進(jìn)入目錄然后進(jìn)行編譯

cd racer && cargo build --release

這樣,我們會(huì)得到racer的二進(jìn)制文件在 target/release/racer目錄

設(shè)置環(huán)境變量

為了對Rust標(biāo)準(zhǔn)庫進(jìn)行補(bǔ)全,racer需要獲取Rust源碼路徑。

設(shè)置名為RUST_SRC_PATH的環(huán)境變量為[path_to_your_rust_source]/src

其中[path_to_your_rust_source]表示源碼所在文件夾,使用rustup獲取Rust源碼的情況下[path_to_your_rust_source]默認(rèn)為~/.multirust/toolchains/[your-toolchain]/lib/rustlib/src/rust/src

測試

請重新打開終端,并進(jìn)入到關(guān)閉之前的路徑。 執(zhí)行如下代碼: linux:

./target/release/racer complete std::io::B

windows:

target\release\racer complete std::io::B

你將會(huì)看到racer的提示,這表示racer已經(jīng)執(zhí)行完成了。

安裝 rustfmt

cargo install rustfmt

Rust Langular Server (RLS)

Rust Langular Server(下文簡稱RLS)可以為很多IDE或編輯器提供包括不限于自動(dòng)補(bǔ)全、跳轉(zhuǎn)定義、重命名、跳轉(zhuǎn)類型的功能支持。

使用rustup安裝步驟如下:

  1. 保證rustup為最新版
    rustup self update
  2. 升級工具鏈(并不要求設(shè)置nightly為默認(rèn),但需要保證安裝了nightly工具鏈)
    rustup update nightly
  3. 正式安裝RLS
    rustup component add rls --toolchain nightly
    rustup component add rust-analysis --toolchain nightly
    rustup component add rust-src --toolchain nightly
  4. 設(shè)置環(huán)境變量 如果在安裝Racer時(shí)沒有設(shè)置名為RUST_SRC_PATH的環(huán)境變量,請參考前文進(jìn)行設(shè)置。

截至當(dāng)前(2017年7月15日),RLS仍然處于alpha階段,隨著項(xiàng)目變動(dòng),安裝步驟可能會(huì)由較大變化,本文中提及的RLS安裝方法可能在較短的時(shí)間內(nèi)過時(shí),建議跟隨官方安裝指導(dǎo)進(jìn)行安裝。

該項(xiàng)目托管地址:https://github.com/rust-lang-nursery/rls