1. 程式人生 > >聊聊各種win系統下的markdown

聊聊各種win系統下的markdown

的確 文本 準備 寬度 相同 不能 視頻會議 核心 修改

使用markdown進行文字編輯已經差不多都要有三年了,這個時間放在我年方20出頭的芳齡裏,好像也差不多是一個初中,或者一個高中的年紀。本來沒有想過要在這件事情上,這麽一本正經地進行一次安利。都是在各種聊天裏滿懷熱情地去細心推薦的,但是發現收效甚微。
隨著我年齡漸長啊……我發現我對這種感染他人的事情,越來越力不從心了,再也沒法那樣元氣滿滿地跟別人拍胸脯了……但是好的東西始終還是要分享的,這不是我們的核心精神嗎。
markdown的基礎語法其實根本不太用多說,去百度一下“作業部落”什麽都一清二楚了。雖然這樣生硬地打了一波軟廣,但是我並沒有收錢。作業部落的確是我認為樣式優化還有編輯體驗都不錯的一個編輯器,並且一登錄就可以看到語法提示頁面,我經常在有時候忘了一些高級用法的時候去看看。但是他並不是我最推薦的編輯器。

一個好的編輯器真的是影響文字編輯體驗的核心啊。既然md已經把所有的語法操作都能放在鍵盤上解決了,而且我們也不考慮鍵盤顯示屏這些外因的時候,編輯器的字體,同步滾屏預覽的效果,最終渲染的效果和通用程度……這些才是“當我們在討論markdown的時候,我們談論的重要因素”。接下來我就圍繞這幾點,給大家談談我的想法。

  • 編輯器字體
    這篇文章我是直接在cnblogs的文檔編輯器上寫的,說實話寫到這時候,我已經基本不太想接著寫下去了。行間距,字體大小,分段的段間距,以及特殊語法生效的小提示一個都沒有。打了半天跟在寫字板上寫並沒有啥差別。這種編輯體驗本身就很不舒適,很多程序員其實在選擇IDE的時候也會有類似的需求,要有看著不累的字體,合適的字體大小,還有適合理清思路的分段間距。這一點其實大部分專門做md的編輯器都會做的比較好,但是也難保有些極客喜歡用VIM來寫小的md文檔,例如readme?

    如果你想要一種,比較特別和舒適的編輯環境,我比較推薦專門為了寫md下載合適的編輯器。所以我們淘汰掉這種,不友好的cnblogs內置編輯器或者寫字板,大家應該沒意見吧。

  • 同步滾屏
    既然我們選擇了md專用的編輯器,那麽一般都會是有“預覽”效果的,但是其實這個真的……我覺得到最後,這種同步預覽的效果大部分md使用者熟練掌握語法後是會摒棄掉的。理由如下:
  1. 我在使用md進行編輯的時候,大部分是做課堂筆記(寫字不如打字快系列),或者是開視頻會議的時候做紀要。本身筆記本的屏幕就不是那麽空間寬裕了,因為橫向分辨率更高的視頻占去了不小比例的時候,我一般把筆記都縮減到屏幕三分之一寬度或者更小的區域去做。這種時候是不太可能開啟同步預覽的。
  2. 假設我並沒有開啟視頻,而是單純輸出文字而已。那我的編輯器寬裕到充滿整個屏幕,但是開啟同步滾屏就會把我編輯區放到屏幕左邊(有些編輯器是可以調整編輯區和預覽區的左右位置的)。這就有點別扭……並不能說我長時間頭偏向左邊或者右邊這麽一小個角度就會多難受,只是感覺沒有“雨露均沾”就很不舒服。我相信有這種感覺的肯定不是就我一個,因為在簡書裏,如果開啟文檔編輯,會有一個“寫作模式”的選項,那種舒適的居中顯示,並且底色和字體顏色也很恰到好處,的確是可以讓人更加集中註意力放在寫作上的。
  3. 雖然上面兩點已經足夠讓我忽略這個同步滾屏,但是還是要再補上一刀,那就是其實是有比同步滾屏更好的解決方案的,就是有一些編輯器在你不是很熟悉語法的階段,可以讓你直接在預覽界面進行修改和編輯,例如我現在也在用的Typora,他有一個code模式和一個preview模式,並沒有同步滾屏,輸入體驗好到讓你基本忘記掉還有同步滾屏這回事
  • 語法渲染效果和通用程度
    在上面的第三點中,我們提到了Typora的雙模式切換實現預覽渲染效果的目的。其實渲染就是我們通過語法實現md排版的方式,不同的平臺或者編輯器,針對相同的語法文本渲染的結果是不一樣的。打個比方就是Typora這個編輯器不支持多級無序列表,但是有些例如為知筆記的mdedit插件是支持的。但又或者說為知筆記的部分md語法例如框圖和甘特圖是特殊的,和別的平臺不同,也是可能的……
    除了上面說的語法渲染的通用性不同,最終我們生成PDF或者HTML或者是保存在博客的渲染效果也是不同的。但是這一部分就不贅述了,因為大部分極客用戶會去網上選擇自己喜歡的CSS渲染樣式或者是自己寫一個。如果硬要說通用性你要通過自己去寫JS文件來補充或者是修改一部分語法……那我也沒得反駁。
    其實我們大部分不會真的去修改CSS或者是JS文件,所以我們還是會依賴編輯器本身自帶的主題和默認的渲染樣式(我這樣說是不是又斃了一堆用sublime和atom做markdown編輯的大佬的,罪過罪過)。那在考慮這點的時候,就需要同誌們在上手一個編輯器的時候,基本就確定了解自己大部分編寫的文檔是否經常需要使用一些特殊語法(例如流程圖和甘特圖或者是數學公式等),如果需要,就去對這類支持較好的平臺上進行寫作;如果需求不高,那就找一個比較通用支持的渲染,例如git上的渲染類型就很多平臺都支持。

  • 是否支持直接輸出渲染文檔
    上面的那個問題,可能會出現一種難以取舍的問題。“我真的好喜歡這個文檔輸出的樣式啊”,“我真的好享受在這個編輯器上編輯的感覺啊”……諸如此類,如果你真的很喜歡他的渲染樣式,你就要考慮,這種渲染樣式能不能保存輸出。保存成PDF就不會出現別的地方的渲染問題了呀,發布到關聯的博客上也不會有太大問題了呀;我就在本地瀏覽,不準備發布的,也不用考慮這個問題……
    但是如果編輯器僅僅是編輯器,不具備發布功能,那你在把它復制到博客(例如這個cnblogs,或者CSDN或者簡書)的時候,就要仔細檢查一下語法是否會出現問題了。因為我有過這種情況,在編輯器上的時候,渲染還是挺好的,直接復制到博客上然後發布,發現代碼段和文章段都有錯位的問題。
    有些編輯器是支持一鍵將渲染好的文檔發布到博客的,例如為知筆記就有這種功能,但是我嘗試過將為知筆記發布到cnblogs,體驗應該說不是很好,修改也很不方便。而且因為想要修改cnblogs的CSS樣式的時候,發現這種一鍵發布的博文都是還是用的<wiz-markdown>類型,無法直接統一修改。

  • 是否能方便從剪切板中獲取截圖
    重要的都說完了,我再說一小點點關於我自己要吐槽的。大家都知道md的實現其實就是HTML渲染,所以添加圖片,就成了一個很特別的動作,不再是直接復制粘貼就可以的了,而是要通過編輯器生成一串字符,最後通過渲染生成。這個操作就違背了我們最初使用markdown“拋棄鼠標”的目的了。目前為止,我感覺在這塊做的最好的還是為知筆記的editmd插件(恕在下真的沒有用過印象筆記,更沒用過馬克飛象)。

最後我就直接說結論吧,我現在最喜歡用的還是為知筆記,配合他的editmd插件,可以選擇多種樣式和渲染主題,並且支持雲端存儲筆記,一鍵導出pdf,剪貼板圖片無縫轉換成字符插入文檔……
唯一一點我覺得他做的不好的就是準備寫作環境很麻煩,界面需要七七八八按很多按鈕才能最後調整成一個沒有預覽、沒有側邊欄目錄導航,工具欄lite的界面,而且文檔超過兩百行之後,有明顯的延遲;查看完預覽模式後暫未找到快捷鍵退出預覽模式回到編輯模式,還要用鼠標點……
剛想和wiz討一點軟廣費,發現自己要吐槽的還真的不少。不過愛和恨都是並存的啊,它的確是目前為止我覺得最適合我的一款文字編輯器了,雖然還是有很多缺點……
通過上面的幾個維度的考量,相信你也能找到自己喜歡和合適的md文檔編輯器。
別怕麻煩……我們不是要變成極客的人嘛?

聊聊各種win系統下的markdown