您好,登錄后才能下訂單哦!
本篇內容介紹了“2021年用DE開發Rust的方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Rust 語言服務器(RLS)基于 LSP(Language Server Protocol),即語言服務器協議,LSP 由紅帽、微軟和 Codenvy 聯合推出,可以讓不同的程序編輯器與集成開發環境(IDE)方便地嵌入各種編程語言,允許開發人員在最喜愛的工具中使用各種語言來編寫程序。
它通過用于開發工具和語言服務器間通信的 JSON-RPC 標準,能夠讓編程工具提供實時反饋的詳細信息并以此實現多種強大功能,比如符號搜尋、語法分析、代碼自動補全、移至定義、描繪輪廓與重構等。Rust 語言服務器集成了這些邏輯作為后端,并通過標準的 LSP 提供給前端工具,它被設計為與前端無關,可以被不同的編輯器和 IDE 廣泛采用,但目前項目團隊僅在 VS Code 中進行測試。用戶可以在 VS Code 擴展商店中找到基于 RLS 實現的 Rust 官方插件。
這個就是 Rust 官方為 Visual Studio Code 提供的 Rust 插件,該插件最初是 Rust 官方語言服務器(RSL)的前端參考實現,現在也支持另一個來自社區維護的 Rust 服務器 rust-analyzer(RA),用戶可根據個人偏好在 RSL 或者 RA 之間選擇安裝一個。該插件支持:
代碼補全
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 中,插件不會覆蓋現有任務,因此可以自定義任務。
rust-anlyzer(RA)是除了 RSL 以外的另一個 Rust 語言服務器,由社區驅動開發。自 2019 年末發布第一個預編譯 Release 以來,RA 都會在每周二穩定發布新版本并保持至今。經過快速的迭代,目前 RA 各方面的優化和提升已經超越 RSL,所以也被官方納入 RSL 2.0 計劃的一部分。Rust 的 VS Code 官方插件也已經增加了對 RA 的支持。
RA 目前已經支持 Vim、Emac、Sublime Text 3 和 VSCode 等編輯器,可通過官方文檔獲取詳細的安裝指導。
前面提到 RSL 和 RA 都是 Rust 語言服務器,作為 IDE 與編輯器的后端提供通用能力。而 Racer 是 Rust 語言服務器中的一個靜態庫,它提供了代碼自動補全功能。
許多 IDE 等工具可以輕松集成這樣的底層功能,目前包括以下工具都有集成 Racer 的相關實現:
Eclipse
Emacs
Gedit
Gnome Builder
Kate
Sublime Text
Vim
VS Code
Atom
Kakoune
IntelliJ Rust 是 IntelliJ 的 Rust 插件,采用 Kotlin 開發,功能特性包括:
支持原生代碼提示
支持強大的快捷鍵功能
代碼快速格式化
snippets
IntelliJ Rust 和 intellij-toml 為 IDEA,CLion,PyCharm 和其他 JetBrains IDE 帶來了 Rust 和 TOML 支持。
語言支持包括語法突出顯示,完成,導航和其他代碼洞察功能。可以使用 Cargo 命令并運行 Clippy 或 Rustfmt,而無需離開 IDE。CLion 和 IntelliJ IDEA Ultimate 中提供了調試器和分析器。CLion 的集成還支持 CPU 分析。對于所有其他 IDE,可以使用本機調試插件進行調試。
CLion 是專門用于 C/C++ 開發的 IDE,它的特性包括:
智能 C/C++ 編輯:原生 C/C++ 支持,包括現代 C++ 標準、libc++ 和 Boost。
導航能力:即時導航到字符的聲明或上下文用法,在整個項目中按名稱搜索類、文件與字符,并且提供具有結構和層次結構視圖的代碼庫。
代碼生成:通過簡單的快捷鍵就可以完成一些代碼生成操作,包括:添加類成員、重寫/實現函數、生成構造函數/析構函數、getter/setter,判斷等式、關系運算和流輸出運算、使用語句封裝代碼塊與根據實際用法生成聲明。
重構:提供重命名符號、在層次結構中上/下移動成員與更改函數簽名等功能。
通過 IntelliJ Rust 插件,CLion 提供了對 Rust 的高度支持,除了基本的功能,它還為 Rust 提供了完善的調試器、CPU Profiler 和 Valgrind 內存檢查等能力。
“2021年用DE開發Rust的方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。