close
我冒着被編輯部投票放逐的風險,有點抱歉地寫下這個大不韙的標題。但我還是要真誠地推薦:你真的應該試試一句話換一行,半句話換一行,如果感到高興就拍拍回車換一行。只不過……
這裡說的不是最終的帶格式文本,而是在寫作階段的Markdown 版本中這麼做。數字也很重要:你應該換並且只換一(1)行。
我去年偶然意識到這個小技巧,之後一直受用,只是擔心過於瑣碎和個人化,便未單獨介紹。但最近發現類似主張至少在十年前便已出現,至今不時被重提,知名作者 Derek Sivers 本周還在發文提倡;便有動力拿出來做些分享和註解。
用 Markdown 寫作的朋友都知道,Markdown 文件中的兩個換行,在生成的 HTML 結果中會產生一個新的段落。那麼,一個換行符會產生什麼呢?答案是只會變成一個空格。
事實上,不僅那個換行符自己會變成空格,任何緊鄰它前後的空格和制表符(tab)——不管是一個還是一百個——都會被一起清理,壓縮到只剩一個空格。在 HTML 語境下,這稱為「空白字符壓縮」(whitespace collapse),在渲染段內文本這種行內格式化上下文(inline formatting context)時,屬於默認做法。
技術上的描述聽起來有點無聊,但如果在寫作過程中巧妙地利用這一點,就可以帶來極大的自由。
因為,這意味着你可以像寫大綱和寫詩一樣來寫文章;換言之,隨意在段落內部回車和縮進,而不會影響到最終渲染結果。
不過,由於空白字符壓縮是基於西文環境開發的規則,如果在中文寫作使用本文方法,需要在最後統一清理一下句號後多餘的空格,對此全局查找替換即可;雖然多出一步,但相對於益處來說是可以接受的。
下圖是一個直觀的演示:
在左側的源文件中,分割線上下的版本有明顯差異:
上面是語文課本里的原版,只在分段時用了換行;

下面則是本文所建議的「寫一句換一行」風格,還通過行首的空格,為具有從屬關係的分句設置了縮進。

從右側的預覽可以看出,這兩種寫法產生的結果沒什麼區別,但後一種卻有一些潛在的好處。回想寫作過程,不難發現這種做法則更符合思考的節奏。一句話就是一個事實、一個觀點;寫完後按回車的動作,則自帶一種確認和前進的隱喻。遇到從句較多、邏輯艱澀的場合,多出的留白和層次結構還能起到視覺上的輔助作用,有助於理清思路,避免左右互搏、顧前忘後。
這種做法的好處甚至不限於寫文章,在工作中也可以用到。比如,如果你有幸……幫馬斯克搞錢,也許這就能幫你避免近視度數加深:
其實,不少有經驗的寫作者本來就有類似習慣,只是一般會用第三方的大綱、思維導圖等工具整理好思路,再導出為 Markdown 加工。但既然 Markdown 本身就能當作「草稿紙」來用,連導入導出的過程都省去了,何樂而不為呢?
除了方便謀篇布局,Sivers 的文章還提到了一些額外的好處,這裡就直接複述:

方便單獨審視每個句子,刪減無用廢話;

方便控制句子的長短變化,讓行文有節奏感;

方便上下移動句子,特別是批量移動;

方便關注句子首尾措辭,讓開頭更有力、收尾更有餘韻。

如果你有一定編程基礎,相信更能理解這種做法的價值:在很多語法中,換行和縮進都不影響編譯結果(沒有針對 Python 和 YAML 的意思……),但確實會有約定俗成的語法風格,其目的就是讓代碼結構清晰、易於閱讀。諸如代碼格式器(formatter)、美化器(beautifier)等輔助工具,也是通過添加和調整換行和空格來發揮功能的。
此外,如果你對操作效率有較高要求,「一句換一行」更能錦上添花。因為從古老的 ed 開始,文本編輯器骨子裡就更擅長以行為單位的操作;越順應這種特點、積極分行,也就越能充分發揮編輯器的功能。
首先,在 VS Code 等大多數現代編輯器中,縮進的行會自動添加視覺輔助線,展示上下級從屬關係;還可以通過行號旁邊的箭頭按鈕,與上一層級摺疊在一起。
其次,編輯器一般都支持用快捷鍵上下移動行,可以讓你手不離鍵盤就調整句子順序,省下大量剪切粘貼的功夫。一些常見編輯器的相關快捷鍵如下表所示:
對於 Mac 用戶而言,即使編輯器本身不支持用快捷鍵上下移動行(如瀏覽器中、iA Writer、Typora 等),別忘了 macOS 各處通用的經典 Emacs 快捷鍵:
用 Control - A 移動到行首;
用 Control - K(kill)剪切從光標位置直到行尾的文本;

在合適位置用 Control - Y(yank)把剪切的文本粘貼出來。

至於創建縮進,除了在光標位於行首時按 Tab 鍵這一標準做法,大多數編輯器都支持通過 macOS 下的 Command -]或 Windows 下的 Ctrl -]來增加光標所在行文本的縮進。
最後,如果你用 git 來管理寫作版本,在有分行的情況下,可以很方便地看出哪裡發生了修改。否則,就要使用--word-diff 選項,並且對於中文效果很差。
當然,不是所有的文章都是從頭寫起。很多時候,我們是在他人的內容上加工和編輯。這種場合,如果將現有文本轉換為「一句換一行」的樣式,就能方便整理思路、仔細審視。
我們可以用正則表達式實現這一目的。具體而言,可以搜索如下內容:
(。|?|!|:|;|\. |\? |! |: |; )([^\n])
也就是任何中文句號、問號、感嘆號、冒號或分號,或相應的英文符號加一個空格,且之後不是緊接着換行([^\n])。
然後批量替換成:
$1\n$2
也就是在上述那些標點(第一對括號里的匹配項,$1)和它們之後的字符(第二對括號里的匹配項,$2)之間加入一個換行符(\n)。
當然,本文的方法並不一定適合所有人(維基百科的貢獻者們就分成兩派),但也可以作為一個例子說明:人腦是一種濕件,視覺和心理上看似瑣碎的提示,可能就會帶來意外的幫助。有時,一點留白就能給思考增加深度,一段距離就能給創意留出空間。
最後需要重申——以防我被開除,也方便直接空降來看結尾的朋友——本文討論的「一句話換一行」是指Markdown 的使用技巧,不是在倡導那種「一句話分一段」的公眾號寫法。在少數派發文章時,請千萬不要嘗試後一種做法。
如果硬要嘗試會發生什麼?你問。
會被褫奪上首頁的權利。:P
原文鏈接:
https://sspai.com/post/73957?utm_source=wechat&utm_medium=social
作者:PlatyHsu
責編:被期待去參加《青春有你》出道的普拉提
/更多熱門文章/

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()