标签归档:LaTex

用Mendeley替代EndNote管理PDF科技文献

作为科研人员,很多人可能用EndNote管理科技文献,但我不用它,主要是因为商业化软件EndNote太贵了,一份最便宜的学生版本授权费都需要113.95美元——都赶上一份Windows 8操作系统的价格了。

我的原则是当有替代开源软件存在时,尽量使用开源软件——它们通常是免费的。那么,如果不用EndNote管理科技文献,用什么呢?介绍一款我经常用的EndNote替代品软件:Mendeley

这款软件能自动管理电脑上所有的PDF科技文献,当然也可以设定指定的文件夹。不过,我不清楚是否支持中国知网、重庆维普等文档格式。Mendeley最大的特点是免费(开源?)、跨平台,可以安装在Windows, Linux, Mac OS和iOS等操作系统上。

Mendeley支持全文搜索,并支持软件内打开PDF文档。它还具备在线上传文献功能,实现将文档保存在云端,免费用户有1G空间,需要更多空间则需要付费——这就是Mendeley的盈利模式。

对于我这种LaTeX用户来说,Mendeley还有一些独到的特性。如果是从ElseVier www.ScienceDirect.com等SCI期刊网下载的文档,会自动被Mendeley分析好文章的标题、作者等信息,生成导出JabRef数据库,并保持与这份数据库同步。

这一点非常方便,尤其是如果已经在电脑上保存了很多文献后却没有文献数据库,通过它能批量导出一份完整的JabRef数据库,方便在用LaTeX写作时,方便是插入参考文献。

当然,对于非LaTeX用户,Mendeley也支持Word和OpenOffice用户直接插入参考文献。

我知道很多人肯定会给我一个“好办法”:找一个破解序列号,将EndNote破解不就可以了?我觉得作为科研一分子,不应该使用盗版软件,这是对知识产权最起码的尊重。

拥抱Markdown格式文档

曾经质疑使用Markdown语法来编写文档,因为我总觉得,使用带有代码的东西有一种故意为了表现极客的感觉。我推崇纯文本,因为纯文本是最简单的形式,所以我也痛恨Microsoft Word这种复杂笨重的私有文档格式。

其实我有时候也使用LaTeX写文档,虽然是纯文本,但语法规则还是有些复杂。LaTeX的好处是可以严格精准地控制格式,一切都以命令方式实现,能做到所想即所得,而非所见即所得——所见的背后不一定是所想。

我甚至连演示文档(即通常所说的PPT)都是用LaTeX Beamer编写,最后生成PDF,简洁漂亮,而且做成一个模板后,以后就方便一些。

写博客或者日常写点乱七八糟的东西没有那么多格式。但格式还是有的,比如加粗,超链接、引用、列表等,有点格式总还是能把文字表现得更美观,提高可读性,就像一个清秀的女子稍微打扮一下回头率会更高一些。

要实现必要的格式时,纯文本的不足就出来了:纯文本没有格式。HTML语法可以实现网络上几乎所有的格式(HTML5可以播放视频),可惜HTML语法规则太复杂繁琐,用它来写博客简直打击所有的灵感。任何事情走到极端就不好了。

出于好奇,我上周阅读了一下Markdown语法,发现它的简单超乎我的想像——我读完后心里直说:怎么就这么一点点内容?它基于纯文本,使用很简单的语法规则,写完后预览一下就可以生成HTML格式,实现常用的排版格式,再把它复制粘贴到博客中,就可以避免以前需要的在线排版操作。

如此看来,Markdown做了一个折衷,兼顾纯文本的简洁和HTML的丰富格式。看来我当初看不上Markdown真的先入为主了。

分享一下我使用的Markdown写作工具(其实都未必要工具),使用Chrome浏览器插件:Writebox(Nocs应用也不错),可通过离线或在线方便结合Dropbox编写存储文本,这款工具还有iOS应用(12块钱的样子),好用又轻便,安装后就可以实现手机上也随时记录自己的想法,并随时通过Dropbox同步到电脑端。

工具没有绝对的好坏,关键是在于使用工具的那个人,但工具的相对优劣还是有的。

How to Display Decimal Numbers in Chemical Equations with LaTeX mhchem Package?

Like many people who use LaTeX, I like using the mhchem package to type chemical equations, but there was a problem I met when I was typing numbers with decimal in mhchem package, e.g. if an equation is written as follows,

\ce{3.043 Fe2O3}

decimal numbers in chemical equations

mhchem would gives the result 3·043 Fe2O3 instead of the expected 3.043 Fe2O3. The dot here is actually for the center dot in chemistry equations. But we need the mathematical decimal dot (period).

because mhchem normally does not render the dot as decimal. I tried several methods to make the decimal dot does not display at the middle, e.g. a possible method can be

\ce{\text{3.043} Fe2O3}

though it is not so handy and looks a bit weird (numbers display as plain texts). Finally, I found the following trick works:

\ce{$3.043$ Fe2O3}

decimal numbers in chemical equations

just use maths-escape mode, using $$ to embrace the number. There should not be any white spaces between $ and the number otherwise the compiling would go wrongly, though this is not the case in normal equations.

中文:在LaTeX mhchem包中输入带小数点数字的化学公式时,用美元符号$$将小数点数字包括起来,就可以正常显示小数点而不是在中间位置的点,$与数字之间不得有空格。