latex 属于_LaTeX与化学写作:结构式自动编号

进行任何类型的写作,我们都希望达到一种行云流水般的感觉,但是前提是需要我们有灵感。这或许是任何写作的首要因素。然而当灵感迟迟不愿意进入我们的头脑时,随手写一写可能是迎接它的一种好办法。当你使用Microsoft Word时,可能每写几句,就会习惯性的点点鼠标,寻找和释放一下Word的功能。或许你只是希望你的文字变得更“漂亮”一些,或许只是在寻找灵感的间隙动弹一下手指。不管怎样,Word都会听话地照做,让你脑中所有设计好的一切都立即呈现在你面前,这就是Word所见即所得的魅力。

使用LaTeX写作,所有的一切都变得不同了。它不需要你写几句就点点鼠标,也不需要你去即时处理那些“看得见的漂亮”,它只会让你专注于写作。本文并不处理LaTeX和Word的种种感情纠葛。本文的目的,就是让你感受到使用LaTeX时那种行云流水般的感觉。而且,更重要的是,让所有需要处理化学结构的同行,了解需要处理众多附带编号的结构式时的另一种选择。

准备工作:

  1. 下载并安装LaTeX。
  2. 选用一种自己喜欢的编辑器。笔者使用的是兼容Mac和iOS系统Texpad,如不需云端,一次付费24.99 EUR,终身使用。
  3. 使用TeX Live Utility安装必要的软件包。此文涉及的功能需安装chemstyle,auto-pst-pdf等。

刚打开编辑器时当然是一片空白,现在我们就逐步在里面补充上一些东西,让它做好后续持续性写作的准备。

b20cfd5bdd3804005f05ab0b9e0c0df3.png
图1:新建文档之后的样子,视图可调

为了让LaTeX更加懂我们的写作,我们需要设置几项参数:

documentclass[a4paper]{article}         %此处设置页面大小及文档类型
usepackage[T1]{fontenc}                 %此处设置字体
usepackage{graphicx, auto-pst-pdf}      %此处使.eps文件可转化成.pdf并应用自动编号功能
usepackage[journal=angew]{chemstyle}    %此处设置图式的样式

以上四行的参数设置可以保证我们执行整个文档的格式统一性,其他的格式可以根据自己的喜好进行设置。此时,如果你在下一行键入“Hello Chemistry!”并执行排版,你并不会看到在生成的PDF的窗口显示出“Hello Chemistry!”字样,这是因为我们还并没有告诉LaTeX我们要正式开始文档的写作了。为了执行这项“通知”,我们需要键入以下命令:

begin{document}                         %告诉LaTeX此处开始便是文档内容了
Hello Chemistry!                         %同Hello World一样或许能带我们好运:)
end{document}                           %告诉LaTeX此处是文档的结尾

如上操作之后,点击“排版”按钮,我们便可以看到当前的效果了。

ada588da6a84a0cb72d7c51429196807.png
图2:让Hello Chemistry带给我们好运吧!

至此我们已经可以在一个设置好格式的文档中键入文字了,也可以开始行云流水般的写作体验了(如果你只是写纯文字的小说)。对于专业的化学文档来说还远远不够,我们接下来就需要来插入一些图式(Scheme)来说明如何对结构式进行自动编号。我们以一个经典的人名反应为例来进行说明。自动编号的核心步骤如下:

  1. 使用ChemDraw绘制结构式或反应式,并在对应结构式下方标注“标记代码”。该“标记代码”无固定格式要求,但是为了方便区分,可自定义一些格式,例如:反应条件箭头左方为反应物,可使用SM1, SM2, SM3...进行标记;同理,箭头右侧为生成物,可用PD1, PD2, PD3...进行标记;箭头上方如需要,也可用CT代表催化剂,RG代表试剂等。
  2. 保存为.cdx文件,以便后续修改。
  3. 保存为.eps文件,这样才能使LaTeX识别出“标记代码”并进行数字替换。

注意:此处所用的“标记代码”仅对一个特定的.eps文件有代表作用。例如你在图式1中标记苯甲酸为SM1,在图式2中仍然可以使用SM1标记苯酚,图式1和图式2需保存在2个不同的.eps文件。

使用ChemDraw绘制图式之后,如下图所示,其中3种化合物均使用了相应的“标记代码”。然后将其保存为scheme_BenzilicAcid.eps的文件。应当注意的是,所有的文件都应该处于同一个文件夹内

6ca41f056d9f17a510a63fc7b28a74cf.png
图3:使用ChemDraw绘制图式并分别保存为.cdx和.eps
begin{document}
section{Benzilic Acid Rearrangement}     %给内容加上分级标题
Rearrangement of benzil to benzylic acid via aryl migration.  %文本部分
begin{scheme}[ht]
  schemeref[SM1]{benzil}                 %将benzil指定给.eps中的“标记代码”SM1
  schemeref[RG1]{potassium hydroxide}    %将potassium hydroxide指定给.eps中的“标记代码”RG1
  schemeref[PD1]{benzylic acid}          %将benzylic acid指定给.eps中的“标记代码”PD1
    includegraphics[scale=0.8]{scheme_BenzilicAcid.eps}      %指定该图式来源于文件scheme_BenzilicAcid.eps
  caption{General scheme of benzilic acid rearrangement.}    %命名该图示
end{scheme}
end{document}

如上操作之后,点击“排版”按钮,我们便可以看到当前的效果了。

0040b442875a3f3c3e52deeed949a502.png
图4:“标记代码”被替换成了相应的数字

描述一个化学反应当然不仅仅需要一个反应通式,还需要相应的反应机理和反应实例,让我们继续加上这些内容,比如说机理部分:

bf299c655419e91e6cc06a5682920d53.png
图5:使用ChemDraw绘制反应机理并分别保存为.cdx和.eps

以及反应实例:

5a59d2eb27f1c110853c1e70803a32c5.png
图6:使用ChemDraw绘制反应实例并分别保存为.cdx和.eps
begin{document}

section{Benzilic Acid Rearrangement}
Rearrangement of benzil to benzylic acid via aryl migration.

begin{scheme}[ht]
  schemeref[SM1]{benzil}
  schemeref[RG1]{potassium hydroxide}
  schemeref[PD1]{benzylic acid}
    includegraphics[scale=0.8]{scheme_BenzilicAcid.eps} 
  caption{General scheme of benzilic acid rearrangement.}
end{scheme}

subsection{Mechanism}                                                     %给内容加上分级标题:机理部分

begin{scheme}[ht]
  schemeref[SM1]{benzil}
  schemeref[IM1]{nap anion}
  schemeref[IM2]{migration anion}
  schemeref[IM3]{benzilate anion}
  schemeref[PD1]{benzylic acid}
    includegraphics[scale=0.8]{mechanism_BenzilicAcid.eps} 
  caption{Proposed mechanism of benzilic acid rearrangement.}
Final deprotonation of the carboxylic acid drives the reaction forward.    %文本部分
end{scheme}

subsection{Example}                                                       %给内容加上分级标题:反应实例

begin{scheme}[ht]
  schemeref[SM1]{ex_BAR_diones}
  schemeref[PD1]{ex_BAR_acidpd}
    includegraphics[scale=0.8]{example_BenzilicAcid.eps} 
  caption{Proposed mechanism of benzilic acid rearrangement.}
end{scheme}

end{document}

这样以来,文档看起来就算是比较“饱满”的一页了:

38edbf720c0fa0e9e5ae609466fcefa7.png
图7:一个包括反应通式、机理与实例的有机反应

如果调整图式顺序,相应的编号则会自动调整,例如我们把反应实例放在机理的前面:

e886626fd77b8f4654fcbbfd6c3a1281.png
图8:调整图式顺序,相应的编号则会自动调整

总结:使用LaTeX进行写作有诸多方便之处。虽然前期会有一定的学习成本,例如各种代码用法的学习和记忆,然而一旦掌握,便会比使用Word更容易达到全身心写作的状态。本文所描述的对于化学文档中结构式的自动编号,大型文档的便利性高于小型文档。比如一篇含有上百个结构式的综述文章或者书籍,使用LaTeX进行自动编号处理则会节省很多后续修改的时间成本。在纯粹的写作过程中,不需要随时使用鼠标来进行功能操作。如果需要预览,可以在完成阶段性的写作之后进行排版,以方便我们后续的写作。

本文属于化学写作系列的一部分,会进行不定期的更新,更新内容则会展示在全文的末尾部分,以方便读者阅览。如在阅读和使用LaTeX进行写作的过程中有疑惑,欢迎与笔者一同探讨,共同进步。

欢迎各位关注,笔者将会不定期发布关于药物化学、有机化学、均相催化与化学写作的一些文字,以期与业内外人士交流学习。

参考文献:

  1. Joseph Wright, The chemstyle bundle — Schemes and style for chemistry, CTAN, Last accessed August 5th 2019.
  2. Jie Jack Li, Name Reactions, Springer, Berlin, Heidelberg, 2009.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值