The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在 Visual Studio Code 正確啟用「資料行選取模式」(區塊選取模式)

我之前有在我的 YouTube 頻道發佈過一部《示範 VS Code 強大的多重游標編輯能力》影片,當時有提到「資料行選取模式」(Column Selection Mode) 的功能,但是沒有特別說明如何正確啟用這個功能。重點是,我自己每次要找這個啟用的設定都要找個老半天,因為 VSCode 會自動同步設定,只要登入就會自動復原,而我上次調整這個設定已經是很多很多年前的事了。我為什麼還要找這個設定呢?因為有上課的學員會來問我,但我每次都找不到!所以我決定寫一篇文章來記錄這個設定。

... 繼續閱讀 ...

從 .NET 7 開始就不鼓勵使用 .NET Generic Host 建立應用程式

這應該算是 .NET Core 的歷史包袱吧,任何軟體都一樣,沒有人可以預料未來的需求,所以當初設計的時候,多多少少一定會遇到一些不合理的地方。然而,因為當年 .NET Core 算是有承諾「絕對不會」有破壞性的 API 變更,所以一些早期設計不當的 API 全部都留下來了,也因為這樣,.NET 就需要設計一些新的 API 來取代「包裹」舊的 API,雖然會帶來一些困擾,但是只對老人困擾而已,對新人來說,這些都是「新」的 API,所以不會有任何問題。這篇文章我要來介紹 .NET 7 / 8 通常該如何初始化應用程式,以及跟舊版有什麼不一樣的地方。

... 繼續閱讀 ...

如何透過 FFmpeg 將 MP3 音檔、圖片與 ASS 字幕寫入到 MP4 影片中

我之前寫過一篇鉅細靡遺的如何透過 FFmpeg 將 SRT 字幕檔寫入到 MP4 影片檔中文章,也寫過一篇如何使用 FFmpeg 進行圖片壓縮與製作家庭影片文章,我覺得已經涵蓋了許多應用情境了。前陣子嘗試用 Gemini API 翻譯國外知名的 Podcast 節目,想說把翻譯好的轉錄稿直接跟 MP3 聲音檔結合,配一張圖片,就可以輸出個含字幕的 MP4 影片了,方便我邊聽、邊看字幕、邊學英文,誰知道 AI 問個老半天都問不出來。最終我還是搞定了這個需求,這篇文章來記錄一下重要的背景知識與觀念。

... 繼續閱讀 ...

如何讓 LINQPad 查詢直接當成 Console 來執行

我現在幾乎所有的 Side Project 都是在 LINQPad 寫的,因為實在是太方便,不但啟動速度快,而且也很好管理,萬能的 Dump() 方法有好多神奇用法,實在讓人愛不釋手。除此之外,你其實也可以拿 LINQPad 來寫「腳本」(C# Script),使用上雖然不能直接編譯成 *.exe 可執行檔,但是搭配 lprun8 來執行其實也不會很麻煩,對於需要快速 Prototyping 的時候,使用 LINQPad 不失為一個好選擇。

... 繼續閱讀 ...

如何攔截並記錄 HttpClient 發出的所有 HTTP Request 與 Response 資料

在 .NET 要呼叫 REST API 時,最常使用的就屬 HttpClient 類別莫屬,但有時候真的想看他到底送出了什麼 HTTP 封包,或是收到了什麼 HTTP 回應 (原始內容),這時候就需要一個方法來攔截並記錄實際 HTTP 傳送的 Request 與 Response 封包內容。其實是有方法的,這篇文章就來介紹如何實作。

... 繼續閱讀 ...

Microsoft 365 帳號遭到詐騙或被駭客入侵後的解鎖方法

我們公司主要採用 Microsoft 365 (M365) 為主要的協作平台,背後自然使用的是地表最強大的 Microsoft Entra ID 服務。我們上個月有位同事被 Entra ID 判定有 MFA 異常登入的狀況,導致帳號被鎖定,無法使用 MFA 登入,因此導致他完全無法使用任何 M365 服務。我當時也不知道怎樣處理的,可能是設定讓他重新設定 MFA 之類的,反正他就正常可以登入了。結果過了一個多月,就在前幾天,同一個人,他的帳號又再次被鎖定,這次鎖的更緊了,害我怎樣都解鎖不了,還必須要動用微軟技術支援中心才能解決。這次我還是認真做一下筆記好了,以免日後再有同仁遇到帳號被鎖定的狀況。

... 繼續閱讀 ...

快速上手 Visual Studio Code (VSCode) 擴充套件開發

我個人開發過不少 VS Code 擴充套件 (這裡),工作上只要遇到現有功能不方便的地方,或是現有 VS Code 擴充套件不好用的地方,可以說是一言不合就自造輪子。由於都是用 JavaScript/TypeScript 撰寫,再加上微軟的文件與工具都非常齊全,因此開發的難度並不高。今天我想分享一下如何快速上手 Visual Studio Code 擴充套件開發,也期待看到大家的 Visual Studio Code 擴充套件作品。

... 繼續閱讀 ...

使用 Ollama 執行 TAIDE 的 TAIDE-LX-7B-Chat-4bit 大語言模型

我自從寫了 介紹好用工具:Ollama 快速在本地啟動並執行大型語言模型 文章後,就幾乎都在本機用 Ollama 執行各種大語言模型的推論。由於幾天前 TAIDE 團隊發表了一套符合台灣語言和文化特性的大語言模型(TAIDE-LX-7B),我當下就立刻用 Ollama 跑起來了。這篇文章我將分享幾個簡單的小步驟,幫助大家也可以很順利的在本機將 TAIDE-LX-7B-Chat-4bit 模型跑起來。

... 繼續閱讀 ...