還在用 2019.3 就 Out 了:GoLand 2020.1 版本正式發佈

北京時間 2020 年 4 月 10 日凌晨,Jetbrains 宣佈正式發佈 GoLand 2020.1 版本。

還在用 2019.3 就 Out 了:GoLand 2020.1 版本正式發佈

該版本主要的變化有:

引入了對 Go 模塊支持的各種升級以及代碼編輯功能,這些功能幾乎不需要用戶交互,也不需要擴展的代碼補全系列。

除此之外,還添加了新的代碼檢查、快速修復和其他改進,例如新的 LightEdit 模式(可讓您在文本編輯器中打開文件,而無需創建或加載項目)、智能拼寫和語法檢查以及用於 Web 開發和數據庫處理的新功能。

Go 語言中文網在 2020.1 還未正式發佈之前,就發過關於該版本特性的文章,現在 2020.1 正式發佈了,相關功能特性穩定了,我們再次介紹下相關新特性。

Go 模塊改進

2020.1 現已支持 Go 1.13 的環境變量 GOPROXY、GOPRIVATE、GOSUMDB、GONOPROXY 和 GONOSUMB。

使用 Go Modules 項目模板配置其默認值。只需點擊 Environment 字段中的 Browse 圖標即可打開新的 Environment Variables 對話框。

go.mod 文件支持 go、module、require、replace 和 exclude 關鍵字代碼補全、依賴項名稱以及本地路徑替換。

此外,也可以使用 Rename 和 Move 重構。重命名或移動由 replace 語句引用的目錄時,GoLand 將相應地更改 go.mod 文件中的路徑。

現在,您還可以通過 Project 視圖調用 Find Usages,以探索 go.mod 文件中特定目錄路徑的使用位置。

在 GoLand 2020.1 中,您可以通過 Alt-Enter 獲取缺失的依賴項並移除未使用的依賴項。

最後但同樣重要的是,如果存在本地路徑替換,則新版本將在您提交之前顯示一條通知,這樣您就不會意外提交它們。

您無需學習如何使用的代碼補全功能

GoLand 2020.1 將建議 if err != nil { ... } 來補全錯誤處理模式。只需在表達式內輸入 if。

只需輸入 type 關鍵字或 struct 和 interface,即可更快地定義結構和接口類型。

Fill Fields 操作在格式化規則要求時會在冒號後面添加空格。它還會在組合文字聲明中語句的末尾添加逗號。

現在,使用 map 時,代碼補全會在您補全鍵類型後將光標移到右中括號後面。

對於函數的返回類型,補全功能將為局部變量和零值提供適合相應返回值類型的建議。

智能代碼補全(⌥⇧Space 或 Ctrl+Shift+Space)

智能代碼補全會建議一個指向結構初始值設定項的指針。

它還會建議在斷言和類型 switch 用例中首先使用兼容類型。

在類型斷言中,它提供已賦值變量的類型。

最後,它提供了表達式中可能指針的建議列表。

基本代碼補全(⌃空格或 Ctrl+空格)

為註釋添加了基本代碼補全,這將使編寫文檔更加輕鬆!它可為當前包聲明建議名稱,併為函數和方法建議參數名稱。除此之外,基本代碼補全還可以建議文字和轉換。

編寫多值返回函數的簽名時,GoLand 2020.1 會在逗號後面的返回類型周圍添加括號。當您在字符串文字中粘貼一些文本時,IDE 會轉義雙引號。

Go 1.14 支持

1)支持重疊接口

Go 1.14 添加了對嵌入重疊接口的支持,我們也添加了此功能!當您使用重疊接口描述類型的不同方面時,GoLand 不會將這些方面的重複方法報告為錯誤。

2)自動 vendoring 模式

如果模塊根包含 vendor 目錄,則會在 Go 1.14 中自動啟用 vendoring 模式。對於 GoLand 2020.1,我們決定為 Go 1.13 及更早版本實現類似的行為。IDE 會自動將導入解析到 vendor/ 文件夾(如果模塊中存在)。

調試器更新

1)分析器標籤支持

為了幫助您在調試或核心轉儲分析過程中更輕鬆地區分 goroutine,我們為其添加了分析器標籤。更多詳情請參考:

如何在調試過程中查找 Goroutine。

2)宏支持

現在,可以將宏用作運行或調試應用程序的參數。在 Run/Debug Configurations 對話框中,點擊 Go Tool 中的 + 或 Program arguments 字段即可打開新的 Macros 對話框,其中會列出要使用的可用宏。

此外,您現在還可以將配置文件存儲在項目中。在 Run/Debug Configurations 對話框的頂部,選擇 Store 作為項目文件選項。

後綴補全

.else Postfix Completion 模板可以快速添加 if 語句來檢查表達式是否為假。

快速修復

按下 Alt+Enter,可立即將非格式化調用更改為格式化調用。現在,Create variable 快速修復會顯示預期的類型提示,以便您更輕鬆地輸入正確的值。

代碼檢查

新代碼檢查可以警告您注意非指針接收器上指針方法的無效調用,並提供了快速修復。

如果錯誤使用 uintptr 和 unsafe.Pointer 將整數轉換為指針,Invalid conversions of uintptr to unsafe.Pointer 代碼檢查會發出警告。

Unmarshal is called with incorrect argument 檢查可以分析對 json.Unmarshal 以及 encoding/json、encoding/xml 和 encoding/gob 包的類似函數的調用。

Locks mistakenly passed by value 代碼檢查可幫助您避免意外複製包含鎖定的值。

實時模板

添加了新模板來幫助您快速創建聲明組。其中包括 consts、vars、types 和 imports。當您使用這些模板之一時,GoLand 將在聲明名稱周圍添加大括號。

fori 模板可為經典的 for 循環插入樣板代碼。

重構

Extract Method 重構會保留父函數和方法參數的原始順序。Rename 重構現在會自動檢測聲明的重命名。這意味著當您手動重命名聲明時,IDE 將顯示一個間距圖標,此圖標會建議重命名其所有用法。

導航

Navigate to implementations(macOS 上為 ⌥⌘B,Windows/Linux 上為 Ctrl+Alt+B)和 Navigate to Declaration 或 Usages(macOS 上為 ⌘B,Windows/Linux 上為 Ctrl+B)現在會首先顯示當前項目中的結果。

此外,默認情況下,Find Usages(Windows/Linux 上為 Alt+F7,macOS 上為 ⌥F7)操作現在會始終查找接口方法的用法。要像以前一樣查找當前方法的用法,請在 Windows/Linux 上使用 Alt+Shift+Ctrl+F7 或在 macOS 上使用 ⌥⇧⌘F7。

改進 VCS

1)新 Commit 工具窗口

現在,新的 Commit 工具窗口包含 Local Changes 和 Shelf 選項卡。此工具窗口涵蓋了與提交有關的所有任務,例如檢查差異,選擇要提交的文件和塊,以及輸入提交消息。Commit 是位於屏幕左側的垂直工具窗口,這樣就為整個編輯器留出了顯示差異的空間。

2)改進了 Branches 彈出窗口

Branches 彈出窗口在多個方面進行了重新設計:

  • 我們添加了一個顯式搜索字段,您可以藉助此字段查找現有的遠程和本地分支。
  • 現在,您可以使用 Refresh 按鈕更新現有的遠程分支。
  • 傳入(藍色)和傳出(綠色)提交指示器已添加到狀態欄。

3)Interactively Rebase from Here 對話框

大幅重新設計了 Interactively Rebase from Here。您可以利用此對話框編輯、組合及移除之前的提交,從而讓您的提交歷史記錄更加清晰易懂。

要調用此對話框,請轉到 Git 工具窗口的 Log 選項卡,在要編輯的一系列提交中選擇最舊的提交,點擊右鍵,然後選擇 Interactively Rebase from Here。

數據庫更新

  • 使用 Run configurations 運行腳本文件和代碼段。這樣,您可以在啟動前一次運行多個文件,對它們進行重新排序,添加新文件以及運行其他程序或配置。
  • 現在,您可以在代碼編輯器中查看結果。默認情況下,此選項處於禁用狀態。要啟用此功能,請轉到 Settings/Preferences | Database | General | Show output results in the editor。
  • 創建 SSH 隧道的配置,並在許多數據源或項目中使用。
  • 我們添加了以 Excel 格式導出數據的功能。
  • 另外,您也可以在提取程序下拉列表中選擇首選數據格式。

Web開發

1)用於 JavaScript 和 TypeScript 的新智能意圖和檢查

使用新的智能意圖和檢查 (Alt+Enter) 可在編碼時節省時間!例如,您現在可以快速地將現有代碼轉換為可選鏈和/或空值合併,該語法已在最新版本的 JavaScript 和 TypeScript 中引入。

2)更有幫助的快速文檔

對於 JavaScript 和 TypeScript,Documentation 彈出窗口現在會顯示更多有用的信息,包括符號類型和可視性的詳細信息以及定義符號的位置。

其他變更

  • JetBrains 的新字體 JetBrains Mono 默認可用。要詳細瞭解該字體,請訪問此頁面。
  • 默認捆綁了 Grazie,此插件可為您在 IDE 中編寫的文本提供智能的拼寫和語法檢查。
  • 新的 LightEdit 模式允許您在文本編輯器中打開文件,而無需創建或加載項目。要試用此這一功能,您首先需要從 Tools | Create Command-line Launcher 創建命令行啟動器,如此處所述(如果您使用的是 Toolbox App,步驟略有不同)。有關如何打開文件、比較/合併文件甚至運行代碼檢查的詳細說明,請參閱此 Web 幫助部分。
  • 我們添加了新的 Zen 模式,它消除了可能的干擾,可幫助您完全專注於代碼。本質上,此模式結合了免打擾模式和全屏模式。要啟用此模式,請轉到 View | Appearance | Enter Zen Mod,或者從 Quick Switch Scheme 彈出窗口中選擇 (Ctrl+` | View mode | Enter Zen Mode)。
  • 外部文檔現在指向 https://pkg.go.dev 而不是 https://godoc.org。
  • 我們恢復了默認配色方案,但採用新名稱 Classic Light。

結語

新版本可以免費試用 30 天。新版本下載地址:https://www.jetbrains.com/zh-cn/go/download/。該下載頁面支持通過微信和支付寶支付。


分享到:


相關文章: