.Net IDE智慧提示漢化(.Net6、AspNetCore)
先上現成的.net6
漢化檔案,可以手動下載後參照 如何為 .NET 安裝本地化的 IntelliSense 檔案 進行安裝。或者使用後文的工具
進行自動安裝。
漢化內容來自 官方線上文件 ,某些內容可能存在明顯的機翻痕跡。
上一些效果圖:
.Net6 之前的版本漢化
.net6
之前的版本,微軟官方提供了本地化包,可以在 Download localized .NET IntelliSense files 下載到,安裝教程在 如何為 .NET 安裝本地化的 IntelliSense 檔案 。漢化內容包括NETStandard2.1
、NETCore
、WindowsDesktop
。
.Net6 的漢化
到目前為止官方並沒有提供 .net6
的本地化包。
官方文件倉庫中有相關issue Need .net6.0 Localized IntelliSense Packs 。回答是不再提供本地化包了 - "Yes, unfortunately, we will no longer be localizing IntelliSense."
,也沒有在這裡說明原因。
然而官方線上文件卻是本地化了的,包括.net6
的新API,如:System.DateOnly、System.TimeOnly 等。猜測可能是沒有人力進行本地化相關工作,使用了機翻,質量參差不齊,所以不再發布本地化包了。
雖然有些翻譯質量差,但如果能夠直接在IDE中提示,也好過完全看不懂某些單詞的時候,也不用手動再去查一遍線上文件。我們完全可以通過線上文件來做一個本地化包,流程如下:檢視xml檔案->找到要本地化的項->檢視對應的線上文件頁面->複製對應內容並貼上回xml。
機械化的重複流程可以使用程式碼來自動處理,並且還能生成 AspNetCore
的相關文件。
- 生成邏輯:解析xml檔案->獲取其中成員->爬取對應文件頁面->解析頁面->生成本地化xml
當然缺陷是明顯的 - 線上文件頁面改版
,就要重寫解析邏輯。這裡提供一個現成的生成工具。
本地化xml生成工具
工具以dotnet cli
釋出,使用dotnet tool
進行安裝
dotnet tool install -g islocalizer
.net6
的漢化包已經有現成的了,可以直接進行安裝
islocalizer install auto -m net6.0 -l zh-cn
工具會自動從github
下載對應的包進行安裝(可能需要訪問加速)。
也可以通過-cc
引數指定內容對照型別
OriginFirst
: 原始內容在前LocaleFirst
: 本地化內容在前None
: 沒有對照
islocalizer install auto -m net6.0 -l zh-cn -cc OriginFirst
自定義生成
如下示例生成.net6
的原始內容在前的zh-cn
本地化包,並使用 ---------
分隔原文和本地化內容,生成完成後的包路徑
會輸出到控制檯。
islocalizer build -m net6.0 -l zh-cn -cc OriginFirst -sl '---------'
可以通過 islocalizer build -h
檢視更多的構建引數資訊。
首次構建過程可能非常緩慢(需要爬取所有的頁面),相關檔案會被快取(單zh-cn內容大小約3.5G),再次構建時會比較快;
安裝
islocalizer install {包路徑}
包路徑
為build命令完成後輸出的路徑。
可以通過 islocalizer -h
檢視更多的命令幫助。