標籤:

有沒有比latex更加好的寫作排版軟體,或者怎麼解決latex邊寫作還要邊編代碼的問題?


話說什麼叫寫作排版軟體?

在工具這件事上,沒有最好的東西,多的是口味和權衡。內容與工具的契合度、人對工具的熟悉程度、交流的圈子、對輸出的要求等等,條件不一樣,結果也不一樣。

對一般純文字的作家來說,排版是不重要的,錯字拼寫檢查、自動保存之類功能重要,那麼文本編輯器或 Word 這種所見即所得工具就不錯。如果是寫推理小說、有詳細大綱和大量素材的長篇小說,那麼能整理大綱和素材、幫助檢查語法的更專業的輔助寫作工具才是合適的。而老派的作家,則用紙筆。至於排版,是出版社的事。

寫作時不排版,排版時不寫作。

對科技方面的作者來說,也是如此。儘管有時要身兼作者和排版者兩種角色,但也應該將兩項工作分開來。這樣,即使是用 LaTeX 語言寫作,也應該不需要多少標記語言。

再者,TeX 是宏語言和或實現它的排版軟體,LaTeX 是建立在 TeX 之上的文檔標記語言或實現它的排版軟體。它們都不是寫作軟體。如果用 LaTeX,支持你寫作的其實是 LaTeX 的編輯器,它可能像 LyX 一樣是半可見即所得的,可能像 WinEdt 那樣有豐富的工具命令和按鈕,也可能簡單如 TeXworks 只有一個輸入框和編譯按鈕。這些編輯器才是更大影響你使用感受的東西。

關於寫代碼,有人覺得寫 egin{equation} end{equation} 就算寫代碼了;但我這樣的人可能覺得那只是普通的寫文字標記,而只有寫

lstdefinestyle{demo}{
basicstyle={punctstyle{plain}CJKsetecglue{} tfamily},
stringstyle={itshape},
commentstyle={
mfamilyitshape},
backgroundcolor=color{shade},
columns=flexible,
keepspaces=true,
fontadjust=true
}

或者寫


enewcommandmaketitle{
egin{titlepage}
AtBeginShipoutNext{ hispagestyle{empty}}
vspace*{stretch{1}}
centering
egin{tabular}{c}
fserieszihao{2}@title \[2ex]
itshapezihao{4}@author
end{tabular}
vspace*{stretch{3}}
end{titlepage}
}

才算叫寫代碼。

前一種文字標記的工作是省不掉的。用 Word,一般是點按鈕或者按 Alt+= 快捷鍵;用 LaTeX,可能是老老實實輸入,更可能還是在 WinEdt 里點按鈕或在 TeXworks 里按 beq& 快捷鍵,其實沒什麼差別的。

如果不習慣讀大量的標記,特別是公式、表格,那麼 LyX 這類有 GUI 輔助的工具會更適合一些。LaTeX 功能複雜,標記也複雜(類似於寫 HTML);如果要寫作的內容結構簡單,那麼可以選擇更簡單的標記,比如 Markdown、reStructuredText 之類。

而後一種真正寫代碼的工作,在我們就叫做「排版」。這些代碼可能是設置一些影響排版效果參數,也可能是定義一些寫作時使用的命令。而寫作的時候,則應該盡量避免這種排版工作。為了做到這一點,按邏輯結構寫作,顯式標記邏輯結構,在 LaTeX 這類寫作工具中就是重要的。

而如果要寫作的內容沒有什麼結構,排版和寫作分不開,格式又複雜,那麼你需要的大概是平面設計類軟體了。Adobe InDesign/Illustrator/PhotoShop,CorelDraw,這類軟體也很多。


按排版需求的不同,LaTeX 並不是最好的排版軟體。LaTeX只是在學術界成為了一種規範而已,而且雖然方便但是學習曲線還是十分陡峭的。所以看你自己的功能需求吧,如果不願意花時間學,您大可不必用LaTeX。

至於題主的後面半句,我並不認同題主所說「LaTeX邊寫作邊編代碼」這一點。其實裡面所謂的「代碼」都不過是一些標記而已,和你在Office裡面點擊那些「插入特殊符號」沒有本質的差別。現在有很多圖形化的編輯器也可以像這樣插入環境、符號、公式。當你用LaTeX熟練以後,你會發現用鍵盤來完成這些動作可能會更加方便、操作會更加流暢,尤其是在有各種插件或者編輯器的支持的時候。而且我相信,就沖著LaTeX精美的排版效果,我願意花時間去學習。

我的建議,題主如果實在覺得「寫代碼」不方便,那可以去找一些好用的編輯器,可以方便你的工作。同時你可以考慮使用模板,這樣就不用操心導言區的那些東西了。如果這些你還是不願意折騰,那麼還是去用所見即所得的Office之類的東西吧。


看你的需求是什麼。

latex可以生成穩定的pdf文檔,不會因為你在不同的電腦或者系統中打開而造成排版移位(雖然tex排版時也會有諸多問題,不過可調試性能強)。如果你想快速成型,word也不過如此,編輯公式的時候不比tex省事多少,而且還要面臨著不同系統的折磨。在電腦上看還算過的去,想列印的話還是轉換pdf這條路。(手機上寫的,很多代碼、截圖都沒有,經歷過的大家應該都受過此傷)

剩下的latex衍生版本也不過是為了方便大家更方便更迅速上手,但一樣會發現達不到你所想要的排版樣式。

任何事、物、人都一樣,什麼都是從基礎開始的,沒有付出必然不會有收穫。過程的複雜性必不可少,可是得到的結果卻是令人欣慰的,經歷了自己親手親腦培養出來的文章,什麼都是值得的。


不同的需求對應不同的軟體。

如果沒有特別的排圖需求,沒特別麻煩的流程圖,沒有特別多的公式或者對公式要求低。那麼你完全可以選擇 Rmarkdown 之類。

但是 LaTeX 用久了之後多少有些強迫症於是就不好轉出去了

所以趁著 LaTeX 還沒有用熟多用用 Rmarkdown 之類的快速排版軟體

最後配個 gif 圖

http://yihui.name/en/2013/10/markdown-or-latex/


寫作的話還是首推Scrivener,排版的時候再用LaTeX,這樣對於寫作的思維連貫性會好很多。


首先你要確定你真正不喜歡或者覺得TeX語言在排版上有缺陷的原因是因為排版效果不佳還是記住語法麻煩還是不喜歡這種需要編譯才能看到結果的寫作模式?

如果是因為效果不好的話,坦白說我個人覺得雖然無論中英文,雖然LaTeX/TeX的效果不算出彩,但只要配置適當,對語言熟悉,至少在排版上出不了什麼岔子,算是不求有功但求無過的排版寫作方式吧,Word的功能確實比LaTeX不知道高到哪裡去了,但是做到比較常見的科技排版效果,Word的學習成本明顯更高。

如果是覺得需要用代碼來寫不習慣,更喜歡所見即所得的方式的話,Office Word/Google Docs也算是業內翹楚了,LyX也是可以實現所見即所得的LaTeX編譯器。

如果覺得要編譯才能看到結果很矯情,但還有個解決方法,就是找個功能好點IDE(我用WinEdt的時候也覺得寫LaTeX語言又麻煩又矯情),編譯預覽方便,Overleaf: Real-time Collaborative Writing and Publishing Tools with Integrated PDF Preview也是能做到實時預覽的在線編譯器。

另外,同樣是代碼完成排版,MarkDown的語法相對更接近自然語言一些,熟悉html語言更吼。另外可以用整合MarkDown+R語言的工具knitr在計算、作圖、演示方面都不錯,寫作排版部分基於md語法,計算作圖方面由R完成,我認為它的pdf的渲染效果絲毫不輸LaTeX,但捉急的是我一直沒明白怎麼支持中文。

如果是接觸數學比較多的人士的話,筆記或者幻燈片用Wolfram Mathematica也不錯,反正v10現在對語法也不怎麼考究了還有各種面板,即使毫無編程基礎的人也能玩的轉,計算和作圖效果也還挺不錯,還能一個命令轉latex或者存pdf。

最後,自稱用LaTeX編程寫作的人大部分就和我一樣,會幾條最基本的命令,用現場的模板往裡面填內容,也不用考究這些功能究竟怎麼實現,本質和用Word好像沒太大區別,甚至比用Word更不用動腦筋。因為事實上我們的排版需求也就那麼大。而真正用TeX語言編程的人都在造輪子,寫模板,最不濟的也是改新命令。無意批判好壞深淺,大家各取所需,弄清自己的需求,早點決定用什麼工具更適合才是最佳方案。像我們這種不求甚解的懶人,也一樣要盡懶人的責任,安裝好適合的編譯器,找到需要的模板,看看文檔記住需要用到的命令就行,如果覺得這也很麻煩很傷腦筋,那趁早換別的工具不要害人害己。

附贈一個幾年前的實例,某學長平時不太用LaTeX主要用Word,然後需要參加一個比賽最後交一份科技寫作性質的文檔上去,以往大家都是用Word,他突然心血來潮心想那麼多人吹LaTeX吼啊吼啊,於是這次換LaTeX寫作會不會讓人眼前一亮拔得頭籌?於是不作不死在沒什麼LaTeX經驗的情況下在十分緊湊的比賽時間內強行邊學邊寫LaTeX代碼,結果deadline前最後一天死活編譯不出來,那時正好在春節期間,大過年的,把另一位在家過年excited的精通LaTeX的學長強行從蛤爾濱拖到大連去幫他改bug。


試一試這個

https://www.madoko.net/


當你想輸入的內容或者符號並不只是單純的能直接體現在你的鍵盤上的時候, 你就已經不可能避免"邊寫作還要邊xx的問題"

或者寫"代碼", 或者點滑鼠插入符號/手動修改格式.


texmacs應該能滿足題主基本需求,如果不考慮穩定性以及中文支持好壞的話。。。


你要真受不了這種的話。。。markdown大概是更好的選擇吧。。。


如果是英文的論文,可以用lyx,做PPT的話中英文都可以


得看你怎麼定義「好」。按按鈕那種使用簡單的是「好」么?

可是太慢了。


有啊!php


word


推薦閱讀:

CTeX 2.0有哪些新功能?
如何在LaTeX數學模式中更好地使用粗體?
手機上怎麼使用LaTeX編輯呢?
LaTex怎麼下載?該下什麼版本
MathType 如何做出 LaTeX 的公式效果?

TAG:LaTeX |