|||
果子是这样的
结果子的花儿却是这样的:
----正文开始---
这几天在研究markdown语法在Sublime Text 3里面的实时预览,发现一个有意思的插件omniMarkupPreviewer,它可以用来预览Markdown语法的显示效果. 此外,它还支持MathJax库,而这个库正是设计用来显示数学公式的,支持LaTex的语法.
好些年前,我接触过一点点LaTex的语法,知道它是一种用明面上的字符来控制文本格式的方式,特别适合数字公式的排版,在理工科图书的出版中说是用得比较多.但可读性比较差,不象WORD那样所见即所得(WYSIWYG)玩"把控制格式的字符放在后台不显示".丑是丑了点,但是,LaTex很有用!
怎么玩呢?我在Sublime Text 3(以下简记为ST3)上先用package control 功能,安装OmniMarkupPreviewer插件(以下简称omni).完成之后,再打开omni的用户设置,修改启用mathjax的设置(默认是false)然后保存.
{
"mathjax_enabled": true,
}
启用Mathjax后,omni插件会后台下载这个库,按网上教程(教程),下载的mathjax.zip是2.1版的,而Mathjax.org官方网站已经更新到了2.7.4版, 我下了最新的mathjax_master.zip,解压压缩包内的目录,放到 指定的目录下面. 注意别放错了.我的电脑上如图所示,你的电脑上用户名不一样,要注意相应的修改.如果操作系统不一样(我的Win10)路径的前面部分(Roaming前面这一节)也应该不一样.我没有用压缩包的名字mathjax_master作为目录名,而是沿用了mathjax目录名.Mathjax除了支持Tex,LaTex,还支持MathML等语法,详见它的语法教程.
然后重新启动ST3和浏览器就可以了.
在ST3中写一份markdown文件(其实就是文本文件,只是后缀为.md或.mdown )并对比下它的预览:
HTML中,下标用<sub></sub>块来包围, 上标用<sup></sup>,右箭头用特殊字符表示法 → 向上的箭头用↑ 这样的写法没有什么问题,对多数化学方程式应该OK. 但是如果配平时用分数,就比较讨厌了---HTML没有生成分数的语法, 要么用 3/4这样的表示方法,要么用特殊字符(比如上图),但可用的分数特殊字符很少,没有通用性. 还有一种别扭的方法, 用绝对定位的方法来写,但这样的做法很生硬而且不方便.比如写个1/3要用这样的形式
<div>1</div><div style="border-top:1px solid black; width:10px" >3</div>
这样生成的分数要另起一行,不能很好的嵌入到行文本中.
相反, LaTex语法本来就是为了数理公式编辑设计的,因此支持这样简单的式子太轻松了.
解释一下LaTex代码:我从网上抓了一张Latex语法介绍的表用来自己备用,放在本文最后面.
$包围表示这是一个Mathjax代码块,用mathjax来渲染Latex代码.
下划线在MathJax语法中表示下标,下标的内容放在花括号内, ^表示上标, \to 表示向右箭头,沉淀的箭头用\downarrow来表示, 可逆反应符号用\rightleftharpoons. 设置字体颜色用{\color {red} {文本}}
源码中用1. 1.来起头表示数字编码,这是markdown的语法,解释时会按顺序生成数字而不是沿用原数字.但是Markdown格式控制不能在$...$包围块内用,这里要求mathjax语法.
按Omni指定的快捷键(Ctrl+Alt+O)启动"在浏览器中预览",就可以看到漂亮的效果了!
用右键在化学方程式上面点击,可以显示Mathjax的功能,比如
是不是有点意思?
附件: 抓自 www.mohu.org/info/symbols/symbols.htm
抓屏工具FastStone Capture
Update:
补充Mathjax资料.2018-6-15
更新HTML中表示分数的方法.2018-6-19
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-27 09:20
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社