Windows記事本

用於微軟視窗的簡單文本編輯器

Windows記事本[1],通稱記事本[2][3][4][5][6],官網名稱為Windows Notepad[7],是一個簡單的文本編輯器,自1985年發佈的Windows 1.0開始,所有的Windows版本都內建這個軟體。該軟件的程式設計師理查德·布羅迪英語Richard Brodie (programmer)(Richard Brodie),1983年5月,微軟亞特蘭大COMDEX上推出了由布羅迪編寫的基於鼠標的文本編輯器Multi-Tool記事本,並配備了195美元的微軟鼠標。

記事本
Windows 11中的記事本
Windows 11中的記事本
原作者理查德·布羅迪
開發者微軟
首次發布1983年,​41年前​(1983(初名Multi-Tool記事本)
操作系統Microsoft Windows
平台IA-32x86-64ARM(以前有安騰DEC AlphaMIPSPowerPC
前任MS-DOS編輯器英語MS-DOS Editor
類型文本編輯器
許可協議免費軟體
網站www.microsoft.com/en-us/p/windows-notepad/9msmlrh6lzf3

概要

編輯

此軟體相當常見,其儲存檔案的副檔名為.txt,檔案內容沒有任何格式標籤或者風格,所以相當適合在DOS環境中編輯。

特點

編輯

記事本的特點是只支持純文本。一般來說,如果把文本從網頁複製並粘貼到一個文字處理軟件,它的格式和嵌入的媒體將會被一起粘貼並且難以去除。但是,如果將這樣一個文本先粘貼到記事本中,然後從記事本中再次複製到下最終需要的軟件裡,記事本將會去除所有的格式,只留下純文本,在某些情況下相當有用。記事本幾乎可以編輯任何文本檔案,但僅限 DOS 風格的 CRLF 行尾(但自Windows 10 ver 1803開始,支援Unix/Linux/macOS的LF行尾)。

歷史

編輯

早期的記事本只提供最基本的功能,例如文字尋找功能。較新版本的Windows所搭載的新版記事本可以支援尋找及取代功能,快捷鍵是(Ctrl + H),而Ctrl + F則是傳統的尋找功能。在一些舊版的Windows中,例如Windows 95Windows 98Windows MeWindows 3.1,其所內建的記事本有64k的檔案大小的編輯限制,源自 Windows 的文本框控件的限制(此控件默認只能編輯 32767 個字符[8]);這一限制在 Windows XP 中已被克服。

Windows Me中,記事本仍不支援任何快捷鍵操作,亦不支援行數統計功能。從Windows 2000開始,一些普遍的功能開始有快捷鍵的操作,例如新增、開啟和儲存。同時,狀態列亦開始出現,有行數統計器,在自動換行功能取消時才會出現。

Windows 95中,記事本只支持Fixedsys字體,到了Windows NT 4.0Windows 98,記事本便開始支援字體變更。在Windows 2000Windows XP中,預設字體已變為Lucida Console。

在以Windows NT為基礎的作業系統中,記事本可以編輯傳統的 ANSI/MBCS 文字檔案,同時支援Unicode文字檔案(UTF-8UTF-16,後者包括大頭 / 小頭字節序)。

記事本亦集成了一個簡單的日誌功能,每一次開啟檔案,都可以記下一個新的時間標籤。要啟用這個功能,在文件開頭的第一行,必須是".LOG",不包括引號。[9]

直到最近,記事本仍然是一款只可以在Windows下運行的軟體。但如果利用開源的ReactOS作業系統,並配合Wine,就可以在非微軟的作業系統中,運行記事本。該軟體是開源的,並且是GNU寬通用公共許可證的軟體。

Windows XP開始(Windows MEWindows 2000未經確認)附帶的記事本,若在自動換行功能打開時保存,且當前窗口內有任何行長度超過編輯窗口寬度,則保存後該行會如同在原自動換行位置插入硬回車一樣「斷開」,更改窗口寬度(無論是擴大還是縮小)便可發現此現象。但是,保存至文件中的內容並不會受到影響。

由於記事本無論是功能還是結構都相當簡單(事實上它就是一個裝在窗口裡的多行文本框 + 菜單欄 + 工具欄 + 若干通用對話框),稍有經驗的程式設計師都可以開發出與記事本功能近似的小軟體,所以在一些程式語言工具書上也會出現仿照記事本功能作為參考的範例,有趣的是,記事本亦可用來撰寫軟體,但不包含程式的編譯功能,編譯程式仍得透過外部程序解決。

從Windows 10 ver 1803開始,支援Unix/Linux的LF行尾及macOS的CR行尾,亦即可正常顯示在Linux、macOS下編輯的文字檔案,但記事本預設保存的檔案仍使用CRLF行尾。[10]

在最新版的Windows 11中,記事本有了全新的外觀。配合Windows 11整體的視覺風格,改以Fluent UI的形式設計記事本的全新介面,並加入深色模式,功能上大致無更動。是記事本自推出以來,外觀上最大的改變。

Unicode格式bug

編輯

Windows NT、2000和XP版本的記事本能夠識別缺乏字節序標記的Unicode檔案。這個功能由名為IsTextUnicode()的Windows API提供。[11]但是該功能存在一個缺陷,一些小寫字體的ASCII文字會錯誤判斷為UTF-16。[12]

在2006年5月18日,有報道稱,對於一個含有類似「this app can break」這樣短語的文件(甚至是類似「aaaa aaa aaa aaaaa」的簡單短語),記事本會將其打開並顯示為Unicode二進制文本。如果安裝了相關中文字體則會顯示二進制碼所對應的漢字。造成這個錯誤的字符串可能形如「4個字母+空格+3個字母+空格+3個字母+空格+5個字母」,或者「4個字母+空格+5個字母+空格+5個字母+空格+5個字母」,並且文件末尾沒有換行符。有人認為這是一個彩蛋,但也有人認為這是由於記事本的Unicode的檢測算法缺陷所引起的。這個問題已在Windows Vista版本的Notepad中被修復。

另外,在中文簡體環境下用ANSI(對於相應的ANSI變體,為GBK)保存的文件有時會被誤認為Unicode編碼。如在記事本中輸入「聯通」或「聯繫」並保存,再次打開的時候會顯示亂碼。這個問題已在Windows 8版本的Notepad中被修復。

競爭軟體

編輯

對很多用戶來說,記事本已被WordPad或其他的文字處理軟體取代,例如Microsoft Word。但是,記事本開啟一個文件並不需要加。即是就算已有其他軟體,其他用戶開啟該文件,記事本都可以再次開啟它。而WordPad就不可以。此外,由於記事本並沒有高級的格式編輯功能,很多人都發覺記事本的簡單外觀,可以更有效處理基本的文字操作。而MS-DOS Editor英語MS-DOS Editor文字處理軟體,在Windows 95更新後,已成為一個MDI軟體。它可以提供更多記事本沒有的功能。

現在,有很多的第三方軟體可以取代記事本。那些軟體同時有更多功能,包括自由軟體Notepad++Notepad2,和免費軟體AkelPadTED NotepadEditPad Lite商業軟體EmEditor等。

參見

編輯

參考文獻

編輯
  1. ^ Windows系統內:「Windows 記事本 11.2405.13.0 © 2023 Microsoft。保留所有權利。」
  2. ^ 秦玉海.电子数据 [DB/OL] (2022-12-23) [2024] // 陳奎元中国大百科全书. 3版網絡版.北京:中國大百科全書出版社.
  3. ^ 宋丙劍,張艷軍.记事本、Excel在Mapsource和Mapgis数据转换中的应用探讨 [J/OL].礦山測量, 2008 (2): 27-30+71+4. 中國知網.
  4. ^ 梁筱.记事本、画图等Win 11原生应用悄悄发生了这些变化 [N/OL].電腦報, 2023-09-18 (44). 中國知網. https://doi.org/10.28184/n.cnki.ndina.2023.000697.
  5. ^ 王志軍.利用记事本实现行首添加固定字符 [J/OL].電腦知識與技術(經驗技巧), 2015 (6): 41. 中國知網.
  6. ^ 黃肇祥. Windows 內建記事本變得超好用!3 大新功能讓你不必再開 Word. 自由時報. 2024-03-22 [2024-07-07] (中文(臺灣)). 
  7. ^
    • Windows Notepad. apps.microsoft.com. [2024-07-07] (中文(中國大陸)). 
    • Windows Notepad. apps.microsoft.com. [2024-07-07] (中文(臺灣)). 
  8. ^ 存档副本. [2016-01-01]. (原始內容存檔於2018-05-09). 
  9. ^ Features of LOG and Time/Date Command in Notepad. [2007-10-11]. (原始內容存檔於2014-12-14). 
  10. ^ 终于,微软修复了 Notepad 长达 33 年的换行“Bug” - 开源中国社区. www.oschina.net. [2018-05-11]. (原始內容存檔於2019-08-16) (中文(中國大陸)). 
  11. ^ IsTextUnicode() at Microsoft.com URL last accessed July 3, 2006.
  12. ^ "this api can break."頁面存檔備份,存於網際網路檔案館) URL last accessed August 2, 2006.

外部連結

編輯