这个说法有点像SICP中的一句话:Programs should be written for people to read, and only incidentally for machines to execute.
所以,生成漂亮的pdf文档只是个顺便的事情。那怎么写出漂亮的code呢?就要明确,不要用使用word的方式来用LaTeX。这里没有一点黑word的意思,有很多人说LaTeX的那些做法,如做section, subsection的标注,引用等这些功能word都能干。这当然不错,但一这种所见即所得的编辑方式本身就在暗示你“先撸出个效果看看”;二中国的计算机课是不教如何在word里划分文档结构的,而是交你如何把效果做出来:加粗,文字环绕。又是把效果撸出来。
而LaTeX要求是:告诉我你写的是什么,我来决定效果。这点挺重要的。举个例子,你要打个带单位的数据,如 3km,发现直接在数学模式下输入,出来的效果是这样的,你觉得这有问题,(如果你觉得没问题,你需要这个强迫症玩转 LaTeX - All about TeXnique - 知乎专栏)似乎应该是这样的:这时,你就要去百度怎么做了,这时候,怎么提问题就很重要了。如果你搜:LaTeX 数学模式 正体。那么完了,你得到的答案将是$3\mathrm{km}$,如果你在写实验报告,通篇的\mathrm{}。但实际上你应该搜:LaTeX 单位。这样得到的答案是,有一个宏包siunitx专门负责单位的输入的,草草的一看恩,可以这样写了:$3\si{km}$。似乎不错了。你告诉了LaTeX km是一个单位。但这够了吗?还不够。这就是下一个问题了:看文档。
你用texdoc siunitx 打开了siunitx包的文档,不长,截头去尾也就几十页。发现原来还有一种更好的方式\SI{3}{km}。从结果来看,3和km之间多了一点点空格,但从代码上,你告诉了LaTeX更多的东西:3是km前面的数字。初学的时候看文档还是非常重要的,你现在遇到了一个输入3km的问题,但看了siunitx的文档,你就知道如何输入度这个符号,如何更好的输入科学计数。为将来的可能遇到的问题做一些储备。通过上面那个原则,你也可以判断出网上给的方法是不是正确的(国内偶尔会遇到些奇奇怪怪的解决方法,外文网站就好的多了。)
关于其他,也就是多用了,无它。装备个好的编辑器也是挺重要的,比如Vim(提醒:这也是个坑)
能写出好的代码,如果没有其他特别的需求,就可以了,因为投稿只要你最原始的代码,其他排版的事自然有编辑帮你做的。但这样总是不爽。喂,说好的高大上的pdf文档呢?
这倒是蛮容易解决的,去下个模版,一套就有了。不过很多模版不是说套就套的,还是要看模版的文档,没有文档的可能要自己去看源代码了。在看源代码的时候,也可以学到很多东西。看着看着,手痒了,想自己写模版了。It's another story. 这时候,实际上不一个技术问题,而是一个设计的问题了。虽然是设计,但总还是有点章法可循的,可以看我提的这个问题如何排出精美的中文论文? - 设计的前两个回答。
再后来,我也不知道了。