![]()
我才剛開始用Markdown不到一年,怎么現在Markdown就要被淘汰了?
事情經過是這樣的,Claude Code團隊成員Thariq在X上發表了一篇文章,標題叫《Using Claude Code: The Unreasonable Effectiveness of HTML》。
他說他自己現在已經完全停用Markdown了,轉而用HTML作為AI輸出的默認格式。
不是,先等一會的,Thariq的觀點讓我更糊涂了。
你說Markdown格式過時這我還能理解,畢竟這幾年用下來,或多或少我也能說出點Markdown的缺點。可是要用HTML去替換Markdown……這玩意比Markdown還早誕生了10多年啊!
本身Markdown就是因為HTML不好用才誕生的,怎么現在反過來要被HTML替代了呢?
所以,要搞清楚Thariq的邏輯,咱們得先從Markdown這個格式本身說起。
它到底是個什么東西?為什么這么多人在用?又為什么現在突然就不夠用了?
01
Markdown是怎么來的,為什么現在又要被淘汰?
2004年,約翰·格魯伯(John Gruber)與亞倫·斯沃茨(Aaron Swartz)共同設計了Markdown。
他們要解決的痛點很明確,那就是寫博客。
2004年前后,博客正在興起,但當時的博客平臺像WordPress、TypePad的編輯器功能很有限。格魯伯自己寫 Daring Fireball 博客時,每次發文章都得手寫HTML代碼,
、這些標簽寫到煩。
如果從Word復制粘貼,又會帶來一堆亂七八糟的格式代碼,在不同瀏覽器里顯示還會出問題。
格魯伯想要的很簡單,就是一種“看起來像普通文本,但能自動轉成網頁”的格式。
寫作者只需要打字,不用記那些 HTML 標簽,不用在可視化編輯器和代碼視圖之間來回切換,寫完直接發布。
于是,Markdown就是這樣誕生的。用#表示標題,用*表示列表,用**表示加粗,幾個符號就夠了。
最巧妙的地方,是即使不轉換成網頁,你也能通過這些符號,能明白哪里是標題,哪里是重點。
通過Jekyll、Hexo這些工具,就可以用Markdown來寫博客,然后一鍵生成靜態網站。
隨后,技術博客平臺比如Medium、Dev.to也開始支持Markdown寫作。
久而久之,整個技術社區形成了“默認用Markdown”的集體習慣。
不過Markdown爆火并不是因為這事,其實Github才是它的第一推手。
當GitHub將Markdown作為README標準,整個開源社區一夜之間有了統一的文檔語言。
README 是一個文檔文件,用于介紹項目的基本信息、使用方法、安裝步驟等內容,是項目的說明書。它一般是訪問者打開項目時首先看到的文檔。
程序員們發現,用Markdown寫文檔比用純文本清晰,比用Word方便,比用HTML簡潔。
更重要的是,Markdown是純文本格式,可以完美融入Git等版本控制系統。
每次修改都能清晰追蹤diff,這對程序員來說簡直是剛需。
以前README常用txt格式,但是txt沒辦法像Markdown一樣能給人直觀的感受。你打開一個txt文件,除了文字還是文字,沒有任何結構提示。
但Markdown不一樣,即使不渲染,你也能認清#號、*號以及普通文字的區別。
接下來就是各類筆記軟件。
Bear、Obsidian、Notion這些工具都把Markdown作為底層格式。
用Markdown記筆記有一個好處,你可以把這個筆記放在任何一種文本編輯器里面打開和編輯,不需要編程軟件,也不會因為軟件版本或平臺差異而出現兼容性問題。
你今天用Obsidian寫的筆記,明天可以用VS Code打開,后天可以用Typora編輯,大后天可以用Vim修改。
Word就不行。你用Word寫,你就只能用Word類的工具打開,普通記事本工具都沒辦法打開。
而且97-2003版本的.doc文件,和2007版本以后的.docx文件還有差別,如果使用SmartArt、高級圖表這些功能,那文件就不能以.doc命名,否則再次打開的時候就會顯示錯誤。
程序員們非常喜歡用Markdown,還有一個原因是它原生支持代碼塊語法高亮。
用三個反引號加語言名,就能在文檔里插入代碼示例。這讓程序員可以在同一份文檔里無縫混合文字說明和代碼示例。
到了AI時代,Markdown又成為了大語言模型的首選格式。
原因很簡單,它語法簡單、token開銷低,非常適合大語言模型生成和解析。
而且結構清晰,便于模型在訓練中學習標題、段落、列表的層次語義。
關鍵是它對人類友好,我們能直接看懂Markdown格式的原文。
ChatGPT、Claude、Gemini這些模型在回答問題時,默認都用Markdown格式輸出。程序員用的Cursor、Windsurf、Cline、Aider這些編程Agent,也都把Markdown作為標準輸出格式。
從一個小眾的寫作格式,變成了整個技術社區的通用語言,再到現在,Markdown成為了AI時代的標準輸出格式。
那為啥要淘汰Markdown呢?
Thariq給出的原因是Markdown只能表達基礎文檔結構,無法原生承載表格樣式、SVG插圖、交互組件、空間布局等富媒體信息。
Claude在Markdown里不得不用ASCII畫圖、用Unicode字符估算顏色。
![]()
Thariq在文章里貼了一張截圖,Claude試圖用Unicode字符來表示顏色。
這就像讓你你去畫一幅油畫,但只給你一支鉛筆。你可以用鉛筆畫出明暗關系,但那終究不是油畫。
更關鍵的問題是,當Agent能一次性產出數百行的規格文檔、實現方案、研究報告時,純文本的Markdown就沒辦法閱讀了。
Thariq坦言自己基本不會讀超過100行的Markdown文件,他的同事們也不會。
這不是他懶,這是人類認知的極限。
當一份文檔超過一定長度,如果沒有視覺層次、沒有顏色編碼、沒有可折疊的區塊,你的大腦就會自動放棄處理。你會滾動鼠標,假裝自己在看,但其實什么都沒看進去。
最后一個問題,Thariq認為也是最致命的問題。
Markdown原本的優勢之一是人類方便手改,但在agent工作流里,用戶越來越少親自編輯文件,而是讓Claude去改。
這讓Markdown易于手寫的核心優勢在當下變得無關緊要。
你想想,如果你不需要自己寫Markdown,只需要看Claude生成的結果,那Markdown的簡潔語法還有什么意義?
反而是它的表達能力不足,成了最大的短板。
所以Thariq的結論是,Markdown在AI時代已經不夠用了。
它曾經是最好的選擇,但現在它的優勢正在消失,而它的劣勢正在放大。
02
HTML這么古老,為什么反而要來淘汰Markdown?
HTML至今已有30多年歷史,比Markdown早了整整10多年。
它是萬維網的底層文檔語言。
從一開始,HTML就是為了在網頁上展示各種內容而生的。你可以點擊鏈接跳轉、可以嵌套多層結構、可以插入圖片視頻、可以添加交互按鈕,正是因為HTML。
Markdown是為了讓寫作更簡單而生的,它的本質是做減法,只保留最基礎的文檔結構。
HTML是為了讓表達更豐富而生的,它的本質是做加法,能表達的東西越多越好。
在人類手寫的時代,Markdown贏了,因為簡單就是優勢。
但在AI生成的時代,HTML贏了,因為豐富就是優勢。
Thariq的論斷是,Claude能讀懂的幾乎所有信息,都能用HTML高效表達。
HTML可以一次性表達表格、CSS樣式、SVG插圖、腳本交互、空間定位、圖像嵌入等。
你想展示一個數據表格,Markdown只能用豎線和橫線拼出一個簡陋的表格,而且還不能合并單元格,不能設置列寬,不能給單元格上色。
HTML可以做到這一切。
你想畫一個流程圖,Markdown只能用ASCII字符拼,或者插入一張圖片。
HTML可以用SVG直接畫,而且是矢量的,放大不失真,還可以加交互。
你想做一個可折疊的區塊,Markdown做不到。
HTML可以用details和summary標簽,一行代碼搞定。
不僅如此,HTML也不挑設備。
任何設備上的瀏覽器都能原生渲染HTML,上傳到S3就能一鍵分享鏈接。但是Markdown卻需要專用渲染器。
Thariq舉了一個例子,說你用Claude生成了一份項目規格文檔,然后你想把這個文檔分享給你的項目成員,此時你會怎么做?
如果是Markdown,你得先把它轉成HTML或PDF,或者把它上傳到GitHub,或者把它粘貼到Notion里。
如果是HTML,你直接把文件上傳到S3,把鏈接發給同事,他們點開就能看。
哪個更方便不言而喻。
HTML還可以做響應式布局、標簽頁、折疊區塊、顏色編碼,讓數百行內容依然易讀,這是純文本Markdown永遠無法做到的。
Thariq在文章里展示了一個例子,他讓Claude生成了一份實現計劃,用HTML格式輸出。
![]()
整個文檔有幾百行,但因為用了標簽頁、折疊區塊、顏色編碼,閱讀起來非常清晰。你可以先看概覽,然后點開感興趣的部分,深入了解細節。
這種體驗是Markdown永遠給不了的。
最關鍵的來了,HTML可以讓Claude生成帶滑塊、按鈕、拖拽卡片的一次性編輯器,用戶調完參數后一鍵導出為JSON或Prompt粘回對話。
Markdown生成的內容是不能交互的。
Thariq舉了一個例子,他想調整一個動畫的參數,他讓Claude生成一個HTML文件,里面有幾個滑塊,可以調整動畫的速度、延遲、顏色。
![]()
他拖動滑塊,實時看到動畫效果的變化,找到滿意的參數后,點擊復制按鈕,把參數粘貼回Claude對話框,讓Claude用這些參數生成最終代碼。
整個過程行云流水,完全不需要來回修改代碼。
這就是HTML的交互能力,也是Markdown永遠做不到的事情。
以前我們選擇工具,看的是它好不好寫。
現在我們選擇工具,看的是它好不好讀,好不好交互。
所以Thariq說,他現在已經完全停用Markdown了,轉而用HTML作為AI輸出的默認格式。
這不是復古,這是進化。
03
哪些工具和模型還在用Markdown?它們會被HTML取代嗎?
當下還有大量的工具都在使用Markdown。
比如ChatGPT、Gemini、DeepSeek、Kimi等主流聊天界面,以及Cursor、Windsurf、Cline、Aider等編程agent。還有飛書文檔、語雀這樣的寫作工具。
這些工具和場景,Markdown仍然是主流選擇。
但這不代表它們可以高枕無憂了。
事實上,HTML已經在一些場景里開始取代Markdown了。
需要視覺結構和圖表支撐的長文檔,HTML的閱讀體驗優勢明顯。
當你需要生成一份幾千字的研究報告,里面有數據表格、流程圖、架構圖、代碼示例,如果用Markdown輸出,用戶看到的就是一堆文字和ASCII圖形,很難抓住重點。
但如果用HTML輸出,你可以用標簽頁把不同章節分開,用折疊區塊把細節隱藏起來,用顏色編碼把關鍵信息高亮,用SVG把圖表畫出來。
![]()
用戶打開文件,第一眼就能看到整個報告的結構,然后根據自己的興趣深入閱讀。
這種體驗差異是質的飛躍。
另外,代碼審查也是一個非常具有代表性的場景。
GitHub的diff視圖已經很好了,但Thariq說他現在給每個PR都附上一個HTML代碼解釋器,比GitHub原生diff更直觀。就像下圖展示的這樣。
![]()
HTML可以渲染diff、流程圖、模塊依賴關系,可以用顏色編碼標注不同嚴重程度的問題,可以在代碼旁邊加注釋,可以把復雜的邏輯用圖表展示出來。
尤其是當你不熟悉某個模塊的時候,一個好的HTML代碼解釋器可以讓你在幾分鐘內理解整個PR的邏輯,這樣你就不會迷失在幾百行diff里面了。
鑒于HTML的種種優勢,Anthropic選擇以身作則,因此網頁AI設計工具Claude Design現在全面基于HTML運行。
因為設計本身就是視覺化的工作,用Markdown描述設計其實是一件非常別扭的事情。
但用HTML就不一樣了,HTML本身就是一種設計語言,它可以直接表達布局、顏色、字體、間距、動畫。
Claude可以在HTML里畫出設計稿,加上交互效果,讓用戶直接體驗,然后根據用戶的反饋調整參數,最后生成最終的代碼。
整個流程完全不需要離開HTML環境。
不過話又說回來了,其實還是有很多場景依然離不開Markdown。
最基礎的,比如日常聊天、快速記錄、短答復,Markdown的token成本和即時性依然無可替代。
如果你只是問Claude一個簡單的問題,它回答兩三句話,用Markdown完全夠了。
用HTML反而顯得多余,因為生成HTML需要更多token,渲染HTML也需要更多時間。
所以在需要版本控制的場景下,Markdown仍然是更好的選擇。
訓練語料和結構化Prompt中,Markdown的簡潔性直接關系到token效率和穩定性。
大語言模型的訓練語料里,Markdown是一種非常常見的格式。
HTML不會完全取代Markdown,但它會在越來越多的場景里成為更好的選擇。這并不代表說Markdown失敗了,是我們的時代和環境在改變。
就像以前用GPU玩游戲,現在用GPU來跑大模型一樣。外部變了,工具就得跟著改變。
Markdown贏了這么久,也該輪到HTML了。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
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.