主要更新 GitHub Copilot 的 Visual Studio 2022 17.10

| | 0 Comments| 09:29
Categories:

Visual Studio 2022 推出今年的第二次大更新、17.10 了,不過…這次的更新功能感覺似乎都集中在 GitHub Copilot 的整合上?其他方面感覺沒什麼大更新了…

而 Heresy 這邊雖然有花錢訂閱 Visual Studio、但是因為 GitHub Copilot 是需要另外付費的服務,所以 Heresy 還是沒得玩就是了…(眼神死

總之,官方的公告是《Visual Studio 2022 17.10 and GitHub Copilot: Your Coding Partner for Faster and Smarter Development》,而在 Visual Studio IDE 更新後顯示的更新內容則如下:

  • 所有 Copilot 體驗已統合以便使用
  • 使用 .NET Aspire 建置雲端原生應用程式
  • 使用 Copilot Chat 提升編碼體驗
  • 使用 GitHub Copilot 撰寫描述並說明歷程記錄
  • 使用 AI 製作的運算式順暢建立中斷點。
  • 透過新的 Windows 應用程式開發工作負載輕鬆設定 WinUI

可以看到,六項新功能裡面有三項是直接提到 Copilot、還有一項也是 AI 的…

C++ 的部分可以參考《What’s New for C++ Developers in Visual Studio 2022 17.10》,不過個人覺得內容不算多就是。至於更完整的更新紀錄,則可以參考官方的 release note


GitHub Copilot

首先,以往 GitHub Copilot 在 Visual Studio 裡面應該都是以延伸模組的形式存在的,而現在應該是變成預設會安裝的功能了。

在更新後,右上角會多出「GitHub Copilot」的按鈕,理論上可以透過這邊來使用相關功能。但是由於這項功能是要付費的,所以 Heresy 這邊並不能使用。(茶

目前在設定內的選項如下:

  

而現在的功能,除了會自動完成外,還包含「chat」(聊天)這形式的對話功能,可以透過 / 下命令、並透過 # 來指定關聯的檔案。這項功能除了可以透過專有視窗來進行外,也可以直接在程式碼編輯器裡面進行操作,理論上應該會滿方便的。

此外,個人覺得比較有趣的是現在還可以讓 AI 協助建立條件是中斷點、更好地進行除錯。

不過,由於 Heresy 沒有錢玩這個,所以沒辦法進一步介紹了。有興趣地請自己玩、或是參考官方文件吧~而如果不想看到他的話,也可以在「工具」、「選項」、「環境」裡面,找到「隱藏 Copilot 功能表徽章」的選項。


從變數監控插入條件式中斷點

在偵錯的時候,現在可以從變數監看視窗(自動變數、區域變數這些)裡面,根據變數插入條件式中斷點(conditional breakpoint)或追蹤點(tracepoint)了~

在變數的右鍵選單會有「插入條件式中斷點」和「插入追蹤點」的選項。

點選「插入條件式中斷點」後,就會在程式碼當下的位置插入一個條件是中斷點、並開啟設定視窗、讓使用者設定條件。


程式碼加入斜體等設定

在「工具」、「選項」的「環境」、「字型與色彩」裡面,現在除了「粗體」,還多了「斜體」、「底線」、「刪除線」這些選項。

理論上願意花時間去調整的話,這些設定應該是可以增加程式碼編輯器的可讀性的?


程式碼中的圖檔預覽

再把滑鼠游標移到圖檔的路徑字串上的時候,Visual Studio 會試著去讀取這個檔案、並顯示預覽圖。

他在顯示的時候應該是會把圖片縮到 500 像素以下,但是遇到大檔案就不知道會不會反而拖慢 IDE 的反應了?


Build Insights 加入 template 的分析

「Build Insights」是 Visual Studio 用來分析專案建置過程的工具,它可以用來讓開發者知道那些地方在建置時花了比較多的時間。

而這邊則是在「工具」、「選項」的「Build Insights」、「追蹤集合」裡面多了一個「範本具現化集合」的選項;開啟之後,在使用 build insights 來分析建置過程之後的報告裡面,就會多出「範本」的頁籤,來確認 template 在各種實例化(instantiation)時所花費的時間了。

完整的說明可以參考《Templates View for Build Insights in Visual Studio》。

不過老實說,個人很少用這個功能,試了一下也覺得他出來的結果和 Heresy 想像的不太一樣就是了…


CMake 專案的目標檢視加入專案釘選功能

Visual Studio 處理 CMake 專案的部分,Heresy 之前有寫過《Visual Studio 2022 的 CMake 專案操作(Windows + Linux)》這篇文章來做簡單的說明了。

而這次的更新,則是在「目標檢視」的模式下,加入了釘選特定專案的功能。

在透過專案的右鍵選單點選「釘選」後,專案就會顯示在最上方的「已釘選的目標」裡面;透過這個方法,可以專注在自己需要的專案上、也算是很方便的功能了。


安裝程式的更新

在「Visual Studio Installer」這個安裝程式裡面,「更多」裡面的「更新設定」裡面多了一個「更新時為已安裝的工作負載新增建議元件」的選項。

這個選項預設是開啟的,基本上會在更新的時候把官方建議的新元件自動裝進來。


新的方案格式:slnx(預覽功能)

感覺這項功能微軟沒有特別強調?不過在「工具」、「選項」、「環境」、「預覽功能」中,似乎多了一個「使用解決方案檔案持續性模型」的選項。在開啟這個選項後,就可以使用新的方案(solution)檔案格式,可以將本來地 .sln 檔案儲存成 .slnx 這種基於 XML 的檔案。

新的檔案格式的主要改進一個是讓它改成用結構化的 XML 來儲存所有專案的資訊,同時也把本來很雜亂的 GUID 去掉了,連帶地檔案大小會大幅地縮小;這樣對於有要用另外的工具來閱讀、編輯方案的人來說,會相當方便!

下面就是一個有三個專案的方案的 .slnx 檔案內容:

<Solution>
  <Configurations>
    <Platform Name="x64" />
    <Platform Name="x86" />
  </Configurations>
  <Project Path="CppTest\CppTest.vcxproj" />
  <Project Path="QtConsole\QtConsole.vcxproj">
    <Configuration Solution="*|*" Project="*|x64" />
  </Project>
  <Project Path="QTest\QTest.vcxproj">
    <Configuration Solution="*|*" Project="*|x64" />
  </Project>
</Solution>

不過目前微軟自己也還沒有把 .slnx 關連到 Visual Studio,所以在檔案總管裡面會不知道要用什麼程式開啟、也不會顯示圖示。再加上選項還是預設關閉的,所以目前應該還不建議真的拿來使用了。


大概就這樣了?另外雖然他有說偵錯工具中的「附加至處理序」(Attach to Process Dialog)視窗有重新設計過,但是在 Heresy 看到的好像還是舊的介面?這個就不知道是什麼問題了。

整體來說,個人覺得對於沒在用 GitHub Copilot 的人來說,這次更新的功能變化應該算很少吧?但是 Heresy 自己總覺得,我的 Visual Studio 已經是花錢訂閱的了,結果要用 GitHub Copilot 還要另外花錢,其實實在是覺得有點花不下去啊…

話說,Heresy 這邊其實不時都有去看看 Visual Studio 到底有沒有比較好的延伸模組,可以透過自己的 LLM Server 來做到類似 GitHub Copilot 的工作,不過感覺上好像還是不太順利…

目前是有看到 Visual chatGPT Studio 這個延伸模組功能(連結)算是比較多功能的,但是透過感成自訂 base API URL 的形式來讓他使用自己架設的 OpenAI API 相容伺服器的話,總覺得效果頗糟糕啊…

Leave a Reply

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *