The Will Will Web

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

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

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

... 繼續閱讀 ...

如何透過 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 不失為一個好選擇。

... 繼續閱讀 ...

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

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

... 繼續閱讀 ...

如何在 Windows 打造 OpenCC 中文繁簡轉換工具

OpenCC 是一個開源的中文繁簡轉換工具,可以用來將簡體中文轉換成繁體中文,或是將繁體中文轉換成簡體中文,我已經用十多年了,是個很棒的工具。不過,我以前一直都是在 Linux 底下使用它,因為官方並沒有提供 Windows 執行檔,如果要能在 Windows 直接執行,就需要自行編譯原始碼才行。這篇文章將介紹如何在 Windows 平台上建置 OpenCC 專案,以及分享如何透過 .NET 8 (C#) 載入 opencc.dll 直接呼叫 C++ 的函式庫。

... 繼續閱讀 ...

使用 NVM (Node Version Manager) 管理多個不同版本的 Node.js 執行環境

我們在 Angular 官網的 Version compatibility 頁面可以看到不同版本的 Angular 其實有匹配的 Node.js 版本,太新的 Node.js 不能用,太舊也不能用。不過,我們通常在開發 Angular 一段時間後,多少都會面臨到需要維護不同專案採用不同 Angular 版本的狀況,這時候你就會需要管理多個不同版本的 Node.js 執行環境,這時候就可以考慮使用 NVM 來管理多個不同的 Node.js 版本。

... 繼續閱讀 ...