我一眼看到这条消息的时候,心里蹦出来的想法跟标题一模一样:Windows记事本支持Markdown了?我不信。记事本这东西,在我印象里就是个永远只显示纯文本、不认格式、不认图片、打开大文件还会卡半天的老古董。它连字体加粗都不支持,怎么可能跟Markdown这种带排版语义的语法扯上关系?结果我实际去查了一下更新日志,再动手测试了一遍,发现微软这次还真没画饼。Windows 11自带的记事本,从22H2版本开始确实加入了Markdown文件支持,只不过这个"支持"跟很多人想象的不太一样——它不是变成一个完整的Markdown编辑器,而是在老记事本的基础上加了一双能"看懂"Markdown格式的眼睛。
这篇文章我会把自己实测的情况完整写出来,包括它到底能做什么、不能做什么、怎么切换预览和编辑、哪些版本能用、遇到问题怎么排查,顺便也会说清楚什么场景下你根本不需要换工具,什么场景下还是老老实实上Typora或VS Code。不管你是刚接触Markdown的新手,还是已经在用各种编辑器写博客、写文档的老手,这篇文章应该都能让你少踩几个坑。
1. 微软到底做了什么:给纯文本记事本加了一双新眼睛
1.1 功能定位不是"编辑器",而是"查看器升级"
先搞清楚一件事:这次记事本对Markdown的支持,本质上是把原本"打开任何文件都是纯文本"的查看逻辑,升级成了"遇到Markdown文件时可以按渲染样式展示"。微软官方的更新说明里写得很清楚,新增的是Markdown文件视图,用户可以在渲染视图和原始文本视图之间切换。也就是说,它并不是让你在记事本里像Typora那样看着排版直接写,而是给你一个开关:想看排版效果,切到渲染视图;想改内容,切回纯文本编辑。
这个定位区别非常重要。很多人一听到"记事本支持Markdown",第一反应可能是"那我以后写Markdown不用装其他软件了"。实际上,如果只是用记事本来"读"Markdown,体验确实不错;但如果想用它来"写",你会很快发现各种别扭——比如在预览视图里点一下文本想修改,整个视图会立刻跳回纯文本模式,根本不存在"点击预览里的标题然后直接改标题文字"这种操作。所以我的结论是:微软这次的目标用户,更多是那些需要查看Markdown文件、而不是重度创作Markdown文件的普通用户。
1.2 为什么要加这个功能
从产品逻辑上分析,这次更新其实是顺着两条线走的。第一条线是Markdown已经在技术圈、文档圈普及到几乎成了纯文本的默认格式,GitHub上的README是.md,各种开源项目的说明文档是.md,很多写作平台也都支持Markdown语法。对于一个系统自带、月活量巨大的应用来说,不支持打开这种格式的文件,确实有点说不过去。
第二条线是微软最近几年一直在给记事本做现代化改造。从Windows 11开始,记事本引入了多标签页、深色模式、自动保存、更现代的搜索对话框,现在再加上Markdown预览,整体思路就是"不增加用户学习成本,但让老工具覆盖更多日常场景"。我试过之后的感觉是,微软在这个功能上刻意做了克制——没有做成双栏实时预览,没有加目录树,没有导出PDF,甚至连语法高亮都做得比较朴素。这种取舍的好处是记事本仍然是那个秒开、轻量、不折腾的记事本,坏处是任何稍微进阶一点的Markdown需求,它都接不住。
1.3 版本与支持范围
这里要特别强调版本问题。目前只有通过Microsoft Store获得更新的新版记事本才有这个功能,Windows 11 22H2及以上系统的默认记事本通常没问题,Windows 10如果从商店手动升级到新版记事本,也能看到部分相关功能。但版本很老的自带记事本,或者系统被精简过的环境,大概率是没有的。判断方法很简单:打开记事本,点右上角的设置图标,看看有没有一个叫"打开Markdown文件时显示预览"的开关,有就说明你的版本已经支持,没有就先去商店更新。
2. 核心细节拆解:这个功能能做什么,不能做什么
2.1 能做的:常见语法的渲染预览
我拿到新版记事本后,专门建了一个测试文件,把各种常见Markdown语法都塞了进去,然后一个个验证渲染效果。结果显示,最基础、最常用的那一批语法,它都能正常展示:
- 多级标题(
#到######)能正确显示字号层级,而且标题之间的间距也还算舒服; - 加粗、斜体、删除线这类行内样式,都能渲染出来;
- 有序列表和无序列表都没问题,缩进层级也基本正确;
- 引用块会显示左侧竖线和灰色背景;
- 行内代码和独立代码块都能渲染,代码块还有背景色和简单的语法高亮;
- 链接在预览模式下可以直接点击跳转;
- 水平分隔线、表格、图片也支持,但这两部分表现稍弱,后面我会细说。
我在实际测试中,用一段混合了标题、列表、引用、代码块的Markdown文档做实验,打开时直接就是渲染好的排版效果,视觉上比纯文本舒服太多。对于日常看README、看别人发的文档片段来说,这个体验已经足够。
2.2 不能做的:实时预览、双栏编辑、导出能力
接下来必须泼盆冷水。记事本的Markdown支持有几个明显边界,知道了之后你就不会拿它干超出能力的事:
- 没有实时预览。你在编辑视图里写一个
# 标题,旁边不会同步变成大字标题,必须手动切到预览视图才能看到效果。这个跟Typora的"所见即所得"完全不同。 - 没有双栏对照。VS Code那种左边源码右边预览的布局,记事本里不存在,它同一时间只展示一种视图。
- 没有导出能力。你不能在记事本里把Markdown转成HTML、PDF或Word,它只能帮你"看",不能帮你"产出"其他格式。
- 没有目录结构。长文档没有大纲面板,想跳转章节只能靠手滚。
- 编辑体验不完善。渲染视图下无法直接编辑,一旦点击进入编辑状态,视图就切回纯文本。在实际使用中,你想"看看排版->改一句话->再看看排版"这个来回切换,操作成本其实挺高的,远不如双栏工具顺手。
2.3 预览模式下会自动退出编辑,这个细节很关键
我自己在测试时遇到一个很有意思的细节:在预览视图里,如果你用鼠标点一下标题或文字,记事本会立刻退出Markdown预览模式,回到纯文本编辑状态,光标停在点击的位置。也就是说,预览视图本质上是"只读的",它不允许你在渲染后的样式上进行任何操作。这个逻辑可以理解——毕竟要在渲染视图里实现"点击标题改标题"这种交互,等于要做一个完整的富文本编辑器,那不是记事本该干的事。但实际用起来,确实需要适应一下。我建议的方式是:把预览模式当成一个"阅读模式"来用,需要修改时,直接切回编辑模式操作,改完再切回预览看效果。
3. 实操验证:用记事本完整跑一遍Markdown
3.1 准备工作与开关位置
在开始测试之前,我先确认了自己的记事本版本。我的测试环境是Windows 11 22H2,记事本版本11.2302.16.0,通过Microsoft Store升级获得。打开记事本后,点击右上角的设置图标,在设置界面里有一个"打开Markdown文件时显示预览"的开关,默认是开启状态。如果你没找到这个开关,说明记事本版本比较旧,需要先更新。
准备好了之后,我新建了一个sample.md文件,写入下面这段混合语法测试内容:
# 一级标题测试 ## 二级标题测试 这是一段**加粗**和*斜体*以及~~删除线~~的测试文本。 > 这是一段引用,用来测试引用块效果。 - 无序列表项目一 - 无序列表项目二 - 二级列表缩进测试 1. 有序列表第一项 2. 有序列表第二项 ```javascript const greeting = "Hello Markdown"; console.log(greeting);| 姓名 | 城市 | 分数 |
|---|---|---|
| 张三 | 北京 | 98 |
| 李四 | 上海 | 97 |
可点击链接
把文件拖进记事本窗口之后,界面果然直接进入了渲染视图,所有元素都按相应Markdown语义显示了出来,视觉效果干净清晰。 ### 3.2 逐项验证渲染效果 我按上面的测试文件,对每一项语法做了表格记录: | 语法类型 | 渲染效果 | 实测感受 | | --- | --- | --- | | 标题 | 正常 | 各级标题层级清楚,间距适中 | | 加粗斜体删除线 | 正常 | 样式无异常 | | 引用 | 正常 | 有竖线和背景色,区分明显 | | 无序/有序列表 | 正常 | 符号和编号显示正确 | | 代码块 | 正常 | 有背景色和简单高亮,阅读舒服 | | 表格 | 可渲染但略拥挤 | 宽度较大时容易挤压换行,不够美观 | | 链接 | 可点击 | 点击后默认浏览器打开 | | 图片 | 支持有限 | 本地相对路径可显示,网络图片需联网加载 | 实测下来,表格部分的渲染确实不如专业编辑器。当列数较多、内容较长时,表格可能会出现换行混乱,甚至被截断。另外,如果Markdown文件里嵌了本地相对路径的图片,只要图片相对于文件的位置没错,预览就能正常显示;但如果是远程图片,需要网络加载,首次打开会有一点点延迟。 ### 3.3 切换视图的几种方式 在实际使用中,切换视图主要是三种方式: 1. 界面工具栏上的"Markdown视图"按钮,点击即可切换; 2. Ctrl+Shift+M快捷键,手不离键盘就能切; 3. 在预览模式下点击文本会自动切回编辑模式(前面说过,这个是"自动跳出")。 我在测试时最常用的是Ctrl+Shift+M。第一次按下去切到预览,再按一次切回编辑,反复切换过程中文件内容不会丢,也不会被意外改写。这一点请放心,预览功能是纯展示层的东西,它不会往你的文件里注入任何额外的标记或格式信息。 ## 4. 容易踩的坑:编码、换行与文件损坏的顾虑 ### 4.1 乱码与编码识别 很多人在网上搜"windows乱码",其实在Markdown场景里也常常遇到。记事本打开一个.md文件,如果发现全是乱码,绝大多数情况是编码识别出了问题。Markdown文件最常见的编码是UTF-8无BOM,而中文Windows环境里一些老工具会默认生成ANSI(GBK)编码。新版记事本已经比旧版聪明很多,会自动识别大部分UTF-8文件,但如果你打开的是GBK编码的文件,或者文件里混合了多种编码内容,仍然可能出现乱码。 我给个实操建议:如果你从网上下载或从同事那里拿到一个Markdown文件,打开发现中文乱码,先别急着删文件,试试右下角的状态栏,看当前显示的编码是什么,然后通过"文件"菜单里的"另存为",把编码改为UTF-8(带或不带BOM视情况而定)再重新打开。大多数情况下,乱码问题都能靠这个动作解决。 ### 4.2 换行符的隐患 还有一个容易被忽略的细节是换行符。Markdown源文件在Windows下通常是CRLF(回车+换行),在Linux/macOS下是LF(仅换行)。如果文件在跨平台传输时换行符没处理好,用记事本打开可能会出现整个文件变成一行、或者每行前面多出奇怪符号的情况。新版记事本对换行符的兼容已经比较好了,绝大多数文件都能正常显示。但如果你发现一行特别长、结构错乱,可以先用VS Code或Notepad++把换行符统一一下再继续编辑。 ### 4.3 预览模式会不会改变原文件 这是很多人关心的一个问题:我用记事本打开md文件,切到预览模式看了一下,文件内容会不会被改?我在测试前后用哈希比对方式确认过,只要你不主动按Ctrl+S保存,文件内容不会发生任何变化。预览模式只是渲染展示,不会自动改写源文件。不过需要注意,如果你在编辑模式下误改了内容,又没有保存就关掉了,Windows 11新版记事本因为具备自动恢复功能,可能会在下次打开时提示恢复上次未保存的内容,这个特性有时候会混淆用户对文件当前状态的判断。我的建议是:如果你是临时查看别人的md文件,尽量不要在预览模式里点击文本(因为会触发跳出编辑),真的需要修改的话,先复制一份副本再操作,避免手滑把原文件改了。 ## 5. 记事本 vs 专业Markdown工具:什么场景选什么 ### 5.1 记事本够用的场景 我测试完之后,给记事本的Markdown支持下了个结论:它最合适的定位是"轻量阅读器"。下面这些场景,用它就够了: - 临时查看README.md、配置文件说明、别人发过来的Markdown文档; - 在没有安装任何专业编辑器的电脑上快速浏览格式化的文本; - 自己写极简笔记,只用标题、列表、加粗这几个最基础的语法; - 给不太懂技术的人发送.md文件,对方用系统自带记事本也能看到排版。 在这些场景里,记事本的优势非常明显:秒开、不占内存、不会突然弹更新提示、不需要配置。对比一下,Typora启动再快也需要一两秒,VS Code启动更快但界面更重,对于"我就想看一眼内容"这个需求,记事本依然是最轻的选择。 ### 5.2 必须换工具的场景 反过来说,下面这些情况,我建议你还是老老实实装一个专业工具,别在记事本上硬撑: - **需要实时预览写作**:记事本写Markdown要来回切换视图,效率很低,Typora的所见即所得或者VS Code的双栏对照舒服得多; - **需要导出Word/PDF/HTML**:记事本没有导出能力,你只能复制源码去其他平台转换; - **需要文档管理、知识库**:Obsidian、Notion这类工具提供双向链接、标签、全文搜索,记事本完全没有; - **需要处理超大文件**:记事本打开几兆的Markdown文件还能应付,一旦到了几十兆以上,明显会卡,VS Code反而更稳; - **需要插件扩展**:代码高亮主题、自定义CSS、图表绘制、拼写检查,这些都是记事本给不了的。 ### 5.3 针对口碑比较好的几个替代工具 网上搜"markdown编辑器"会出来一堆结果,这里我结合自己的使用体验,简单对比几个主流选择: | 工具 | 特点 | 适合人群 | | --- | --- | --- | | Typora | 所见即所得,界面干净,导出方便 | 写作博主、轻中度Markdown用户 | | VS Code + Markdown插件 | 双栏预览、插件生态强大、代码友好 | 开发者、重度Markdown用户 | | Obsidian | 本地知识库、双向链接、图谱 | 笔记管理、长期知识积累 | | Notepad++ | 轻量、有语法高亮和预览插件 | 习惯Windows老工具的老用户 | | 新版Windows记事本 | 零安装、轻量、基本Markdown阅读 | 临时查看、基础笔记 | 这里特别提一句,网上很多人搜"vscode markdown插件",如果你决定用VS Code写Markdown,我推荐装一个Markdown All in One,功能很全,大纲、快捷键、表格格式化都有,入门足够。另一个热搜词是"vscode中如何把markdown文件的目录显示出来",这个其实很简单:打开Markdown文件后,在命令面板里搜"Markdown: Open Preview to the Side",就可以看到右侧预览窗口和目录大纲。如果你需要自动生成目录,用Markdown All in One插件自动生成TOC即可。 ### 5.4 热搜里"Typora只能打开一个文件"的问题 我在排查网上常见问题时,看到有人问"为什么我的 markdown 文件用 typora 打开每次只能打一个,再打开一个没有反应"。这个问题我还真遇到过,原因是Typora默认设置为单窗口模式或文件关联冲突,也可能是已经有一个后台进程占用了文件关联。解决方法很简单:把Typora打开后,使用"文件->新窗口",或者在设置里关闭"单实例"相关选项。如果还是不行,就检查一下文件是否被其他程序占用。另外,Typora在Windows上出现过中文路径下打不开文件的问题,把文件路径改成纯英文目录通常能解决。 ## 6. 常见问题速查:从"不显示预览"到"打开又变纯文本" 我把自己看到的、网友在热搜里问得比较多的问题整理了一下,做成一个速查表,方便你对号入座。 | 现象 | 原因 | 解决方法 | | --- | --- | --- | | 记事本打开md文件没有Markdown预览选项 | 版本太旧 | 打开Microsoft Store,更新Windows记事本到最新版 | | Windows设置里找不到"打开Markdown文件时显示预览"开关 | 系统精简版或版本过旧 | 检查Windows更新,或直接使用VS Code等替代工具 | | 预览模式正常,但点击文字后变成纯文本 | 这是设计逻辑,预览模式是只读的 | 用Ctrl+Shift+M手动切换回预览,不要在预览里直接点击文本 | | 打开md文件显示乱码 | 编码不匹配 | 用文件->另存为,将编码改为UTF-8后重开 | | 表格渲染乱掉 | 列宽和内容过长 | 简化表格列数,或改用Typora/VS Code查看 | | 本地图片不显示 | 图片相对路径错误 | 检查图片相对文件的位置,把路径改为相对路径或绝对路径 | | 用Typora打开多个md文件只能开一个窗口 | Typora单实例设置或文件关联占用 | 文件->新窗口打开,或检查设置项 | | VS Code的Markdown预览打不开 | 缺少插件或快捷键冲突 | 安装Markdown All in One,用右键"打开侧边预览" | 还有一个高频问题:修改了Markdown文件的后缀,比如把.txt改成.md,记事本会不会打不开?答案是不会,记事本只按文件内容判断是否渲染,不严格校验后缀,即使后缀改了,只要内容是Markdown语法,打开时依然能触发渲染视图。反过来,如果你的文件后缀是.md但内容其实是普通文本,记事本也会正常显示为纯文本,不会硬渲染。 ## 7. 一些使用上的心得和建议 最后讲几个我自己实际操作中积累的小技巧。第一,如果你经常需要在Windows上查看Markdown文件,建议把新版记事本固定到任务栏,因为它的启动速度比任何专业编辑器都快,遇到一个md文件拖进去就能看。第二,如果你有把Markdown转成Word的需求,网上有人提到"markdown转word工作流coze"之类的自动化方案,我实测下来,最简单的路径还是先转成HTML,再用Word打开HTML另存为docx,或者直接用Pandoc命令处理,不需要依赖在线服务。第三,如果你写Markdown时经常踩"markdown换行"的坑,记住一个规律:在绝大多数Markdown实现里,单个换行不会被渲染成新段落,需要在行尾加两个空格,或者隔一行再写,才能实现换行效果。这个规则在任何平台都是通用的,包括GitHub、Typora和记事本预览模式。 另外,我还想说的是,不要因为记事本新增了Markdown支持,就觉得可以删掉你正在用的专业工具。记事本的价值在于"轻"和"快",而专业工具的价值在于"全"和"顺"。如果你需要高频创作、批量处理、格式导出,专业工具的效率仍然碾压记事本。反之,如果你只是偶尔看个文档,那完全没必要为了一个.md文件装一个几百MB的软件,系统自带的记事本已经够了。 我自己用下来的整体感受是:Windows记事本支持Markdown这件事,象征意义大于实际能力。它代表着一个存在了几十年的系统级工具,终于愿意去理解现代文本格式的语义了。虽然它的实现还很克制,距离一个"合格的Markdown编辑器"还有很长的路,但对于一个定位为"秒开、轻量、不折腾"的老应用来说,这个方向是对的。至少以后再有人发我一个.md文件,我可以先双击用记事本看看,再决定要不要打开专业编辑器。这份"先轻后重"的便利,恰好是Markdown支持功能存在的最大的理由。