微軟傳奇開發者、“Windows任務管理器之父”Dave W. Plummer近日開源了一款純古法編程的項目:Retropad,一個完全用C語言編寫的Windows記事本。
![]()
Dave W. Plummer于1993年加入微軟,他親手打造了任務管理器、計算器和紙牌等Windows自帶軟件,于2003年離開微軟后轉型為YouTube視頻博主。前不久還怒噴了Windows 11:
Retropad的目標非常明確——在不使用任何現代框架的情況下,完整復現經典Windows記事本的每一個功能。它的技術實現嚴格遵循了Charles Petzold在《Programming Windows》中開創的Win32 API編程范式。項目完全采用純C編寫,不依賴任何外部庫,只使用Windows原生API。該軟件體積僅為2749字節,約合2.7KB,運行高效且資源占用極低。
2749字節是什么概念?對比一下就能看出差距——Windows XP時代的自帶記事本程序體積約為65KB,而RetroPad僅為前者的約1/24。這意味著RetroPad可以輕松裝入一張1.44MB軟盤還有大量富余。
![]()
在功能上,Retropad幾乎做到了對經典記事本的像素級復刻:完整的菜單系統和快捷鍵綁定(Ctrl+N/O/S打開新建保存、Ctrl+F搜索、Ctrl+H替換、Ctrl+G跳轉、F5時間戳),自動隱藏的狀態欄,查找替換對話框,字體選擇器,拖拽文件打開,以及BOM感知的文件I/O——系統會自動檢測UTF-8和UTF-16編碼,保存時默認使用UTF-8 BOM格式。唯一被刻意省略的功能是打印支持,項目作者認為在現代瀏覽器和PDF閱讀器普及的背景下,打印功能已經不再是編輯器的基礎需求。
從構建系統看,Retropad同時支持Visual Studio 2022(MSVC+nmake)和MinGW-w64(gcc+make)兩套工具鏈。項目結構簡潔:retropad.c處理主窗口和UI邏輯,file_io.c/.h處理編碼相關的文件操作,retropad.rc定義菜單、快捷鍵、對話框和圖標資源。這種模塊化設計讓代碼結構清晰易懂。
![]()
(還提供了現代化的Dark Mode“深色模式”)
Retropad的意義不在于替代Windows自帶的記事本——微軟早已在其基礎上增加了現代化的標簽頁和Copilot輔助功能。這個項目的價值在于它提供了一種可能性:在AI代碼生成工具盛行的今天,人類仍然可以完整理解一個編輯器從窗口創建、菜單系統、文件I/O到Unicode處理的全部細節。每一行代碼都是可讀的,每一個系統調用都是可追溯的。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.