翻譯|使用教程|編輯:鮑佳佳|2020-12-14 10:37:23.987|閱讀 314 次
概述:在上一篇關(guān)于IntelliJ Rust的博客文章中,描述了插件2020.3發(fā)布周期的主要更新–更多支持和新的Cargo功能UI。簡而言之,您現(xiàn)在可以直接在Cargo.toml文件中切換工作區(qū)功能,并且整個項目中的代碼洞察力將相應(yīng)地進(jìn)行調(diào)整。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
IntelliJ IDEA 2020.3提供了許多實用的功能,例如調(diào)試時的交互式提示,Git暫存支持,對Java 15記錄和密封類的擴展支持等等。它簡化了端點,框架和事件探查器的日常工作。通過基于機器學(xué)習(xí)技術(shù)的更好的代碼完成,更直觀和有用的新的“Welcome”屏幕以及更好的拼寫和語法檢查,整個UX得到了改進(jìn)。簡而言之,一切都更好!
在上一篇關(guān)于IntelliJ Rust的博客文章中,描述了插件2020.3發(fā)布周期的主要更新–更多支持和新的Cargo功能UI。簡而言之,您現(xiàn)在可以直接在Cargo.toml文件中切換工作區(qū)功能,并且整個項目中的代碼洞察力將相應(yīng)地進(jìn)行調(diào)整。
現(xiàn)在,讓我們看一下已經(jīng)對該功能進(jìn)行的改進(jìn),以及該插件在過去幾個月中獲得的其他更新:
更多關(guān)于Cargo功能的代碼見解
IntelliJ Rust現(xiàn)在提供完成建議,并提供Cargo.toml中所有功能的導(dǎo)航。您還可以從Rust代碼中的cfg或 cfg_attr屬性跳轉(zhuǎn)到功能聲明:
Rustfmt作為默認(rèn)格式化程序
如果您希望Rustfmt作為代碼的默認(rèn)格式化程序,請在“Settings / Preferences | Languages & Frameworks | Rust | Rustfmt中,選中“Use rustfmt instead of built-in formatter "復(fù)選框。
當(dāng)前,此選項在重新格式化選區(qū)時不適用。如果您選擇一個區(qū)域并調(diào)用Reformat Code(Ctrl+Alt+L在Linux / Windows和??LmacOS上),則將使用IDE的格式化程序。
重構(gòu)方面的改進(jìn)
現(xiàn)在,移動(F6)重構(gòu)支持在移動文件時重新導(dǎo)出:
如果在編輯器中選擇一段代碼,然后調(diào)用Move,則在建議要移動的項目時,重構(gòu)將考慮您的選擇。
impl現(xiàn)在,相關(guān)-s與項目一起移動,而與相關(guān)impl– s的項目一起分組,以便在重構(gòu)對話框中更輕松地導(dǎo)航:
現(xiàn)在,您可以使用“移動”將文件放置到另一個板條箱中,甚至移動多個文件和目錄。
而且,Move現(xiàn)在能夠檢測可見性沖突(并在需要時公開移動的項目),以及在移動過程中可能發(fā)生的其他編譯錯誤,例如E0116:為當(dāng)前板條箱或E0117:只能為任意類型實現(xiàn)當(dāng)前包裝箱中定義的特征。
用于名稱解析的新實驗引擎
我們已經(jīng)開始重新設(shè)計名稱解析引擎的一部分。該算法的較新版本(也稱為名稱解析2.0)處于實驗狀態(tài)。如果您準(zhǔn)備嘗試一下,請啟用“Settings / Preferences | Languages & Frameworks | Rust”復(fù)選框。
我們的新算法使用定點迭代方法,旨在為復(fù)雜的全局導(dǎo)入(use foo::*)和重新導(dǎo)出(use foo as bar)提供更好的支持。它還將允許插件正確擴展即將發(fā)布的宏2.0。
同時,新算法解決了一些現(xiàn)有的宏相關(guān)問題。例如,它改善了將宏擴展為另一個宏的定義的代碼的解析度。它還解決了包含文件中的宏擴展問題。
以下代碼片段給出了新引擎如何處理復(fù)雜解析的示例:
代碼
請注意,新算法只適用于頂層項目,所以局部變量和類型推理功能不會受到影響。
如果你對新算法的實現(xiàn)細(xì)節(jié)感興趣,你可以在這個票據(jù)中找到更長的解釋。
這個功能還處于早期開發(fā)階段,所以我們鼓勵您嘗試一下,如果您有任何問題,請告訴我們。請使用插件的問題跟蹤器:只需選擇一段有問題的代碼,然后調(diào)用幫助|創(chuàng)建新問題。
Cargo生成項目模板
該插件的用于創(chuàng)建新項目的向?qū)б淹ㄟ^另外兩個模板WebAssembly Lib和Procedural Macro進(jìn)行了增強,并且可以選擇添加其他Git存儲庫作為模板來與cargo-generate一起使用。
WASM項目支持
您是否正在一起使用Rust和WebAssembly?以下是已經(jīng)可用的功能:
使用WebAssembly Lib模板創(chuàng)建項目時,插件會自動添加以下類型的Build配置:
您可以以與任何其他IDE配置相同的方式使用wasm-pack配置,包括從“幫助” |“配置”中調(diào)用它。運行任何內(nèi)容(按Ctrl兩次)。
在Go to generated declaration允許您從導(dǎo)航#[wasm_bindgen]屬性對應(yīng)的打字稿代碼:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: