天问

为博客添加公式支持

twtccw markdown语法

MathJax简介

MathJax是一个用在浏览器上的javascript库,能够让网页显示非图片格式的公式,支持LaTeX语法,是基于APache协议的开源软件。 效果如下:

$ 表示行内公式:

质能守恒方程可以用一个很简洁的方程式 $E=mc^2$ 来表达。

$$ 表示整行公式:

$$\sum_{i=1}^n a_i=0$$

$$f(x_1,x_2,\ldots,x_n) = x_1^2 + x_2^2 + \cdots + x_n^2 $$

为博客添加MathJax支持的方法

参照: http://blog.kamidox.com/write-math-formula-with-mathjax.html

因为每个页面都包含header.html或者footer.html,只需要在这两个页面中添加以下代码: (「纸小墨」对应在theme目录里面)

<!-- mathjax config similar to math.stackexchange -->
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
    jax: ["input/TeX", "output/HTML-CSS"],
    tex2jax: {
        inlineMath: [ ['$', '$'] ],
        displayMath: [ ['$$', '$$']],
        processEscapes: true,
        skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']
    },
    messageStyle: "none",
    "HTML-CSS": { preferredFont: "TeX", availableFonts: ["STIX","TeX"] }
});
</script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>

即可在各个页面提供MathJax支持。

以下为作业部落所作Markdown 简明语法手册,包含了多数我想测试的内容,目的是希望能够让自己的博客支持多种效果

『Cmd 技术渲染的沙箱页面,点击此处编写自己的文档』

Cmd Markdown 简明语法手册

标签: Cmd-Markdown


1. 斜体和粗体

使用 * 和 ** 表示斜体和粗体。

示例:

这是 斜体 ,这是 粗体

2. 分级标题

使用 === 表示一级标题,使用 — 表示二级标题。

示例:

这是一个一级标题
============================

这是一个二级标题
--------------------------------------------------

### 这是一个三级标题

你也可以选择在行首加井号表示不同级别的标题 (H1-H6),例如:# H1, ## H2, ### H3,#### H4。

3. 外链接

使用 [描述](链接地址) 为文字增加外链接。

示例:

这是去往 本人博客 的链接。

4. 无序列表

使用 *,+,- 表示无序列表。

示例:

  • 无序列表项 一
  • 无序列表项 二
  • 无序列表项 三

5. 有序列表

使用数字和点表示有序列表。

示例:

  1. 有序列表项 一
  2. 有序列表项 二
  3. 有序列表项 三

6. 文字引用

使用 > 表示文字引用。

示例:

野火烧不尽,春风吹又生。

7. 行内代码块

使用 `代码` 表示行内代码块。

示例:

让我们聊聊 html

8. 代码块

使用 四个缩进空格 表示代码块。

示例:

这是一个代码块,此行左侧有四个不可见的空格。

9. 插入图像

使用 ![描述](图片链接地址) 插入图像。

示例:

我的头像

Cmd Markdown 高阶语法手册

1. 内容目录

在段落中填写 [TOC] 以显示全文内容的目录结构。

[TOC]

2. 标签分类

在编辑区任意行的列首位置输入以下代码给文稿标签:

标签: 数学 英语 Markdown

或者

Tags: 数学 英语 Markdown

3. 删除线

使用 ~~ 表示删除线。

这是一段错误的文本。

4. 注脚

使用 [^keyword] 表示注脚。

这是一个注脚[^footnote]的样例。

这是第二个注脚[^footnote2]的样例。

5. LaTeX 公式

$ 表示行内公式:

质能守恒方程可以用一个很简洁的方程式 $E=mc^2$ 来表达。

$$ 表示整行公式:

$$\sum_{i=1}^n a_i=0$$

$$f(x_1,x_2,\ldots,x_n) = x_1^2 + x_2^2 + \cdots + x_n^2 $$

访问 MathJax 参考更多使用方法。

6. 加强的代码块

支持四十一种编程语言的语法高亮的显示,行号显示。

非代码示例:

$ sudo apt-get install vim-gnome

Python 示例:

@requires_authorization
def somefunc(param1='', param2=0):
    '''A docstring'''
    if param1 > param2: # interesting
        print 'Greater'
    return (param2 - param1 + 1) or None

class SomeClass:
    pass

>>> message = '''interpreter
... prompt'''

JavaScript 示例:

/**
* nth element in the fibonacci series.
* @param n >= 0
* @return the nth element, >= 0.
*/
function fib(n) {
  var a = 1, b = 1;
  var tmp;
  while (--n >= 0) {
    tmp = a;
    a += b;
    b = tmp;
  }
  return a;
}

document.write(fib(10));

7. 流程图

示例

st=>start: Start:>https://www.zybuluo.com
io=>inputoutput: verification
op=>operation: Your Operation
cond=>condition: Yes or No?
sub=>subroutine: Your Subroutine
e=>end

st->io->op->cond
cond(yes)->e
cond(no)->sub->io

更多语法参考:流程图语法参考

8. 序列图

示例 1

Alice->Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob-->Alice: I am good thanks!

示例 2

Title: Here is a title
A->B: Normal line
B-->C: Dashed line
C->>D: Open arrow
D-->>A: Dashed open arrow

更多语法参考:序列图语法参考

9. 表格支持

项目 价格 数量
计算机 \$1600 5
手机 \$12 12
管线 \$1 234

10. 定义型列表

名词 1
定义 1(左侧有一个可见的冒号和四个不可见的空格)
代码块 2

这是代码块的定义(左侧有一个可见的冒号和四个不可见的空格)

代码块(左侧有八个不可见的空格)

11. Html 标签

本站支持在 Markdown 语法中嵌套 Html 标签,譬如,你可以用 Html 写一个纵跨两行的表格:

<table>
    <tr>
        <th rowspan="2">值班人员</th>
        <th>星期一</th>
        <th>星期二</th>
        <th>星期三</th>
    </tr>
    <tr>
        <td>李强</td>
        <td>张明</td>
        <td>王平</td>
    </tr>
</table>
值班人员 星期一 星期二 星期三
李强 张明 王平

12. 内嵌图标

本站的图标系统对外开放,在文档中输入

<i class="icon-weibo"></i>

即显示微博的图标:

替换 上述 i 标签 内的 icon-weibo 以显示不同的图标,例如:

<i class="icon-renren"></i>

即显示人人的图标:

更多的图标和玩法可以参看 font-awesome 官方网站。

13. 待办事宜 Todo 列表

使用带有 [ ] 或 [x] (未完成或已完成)项的列表语法撰写一个待办事宜列表,并且支持子列表嵌套以及混用Markdown语法,例如:

- [ ] **Cmd Markdown 开发**
    - [ ] 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
    - [ ] 支持以 PDF 格式导出文稿
    - [x] 新增Todo列表功能 [语法参考](https://github.com/blog/1375-task-lists-in-gfm-issues-pulls-comments)
    - [x] 改进 LaTex 功能
        - [x] 修复 LaTex 公式渲染问题
        - [x] 新增 LaTex 公式编号功能 [语法参考](http://docs.mathjax.org/en/latest/tex.html#tex-eq-numbers)
- [ ] **七月旅行准备**
    - [ ] 准备邮轮上需要携带的物品
    - [ ] 浏览日本免税店的物品
    - [x] 购买蓝宝石公主号七月一日的船票

对应显示如下待办事宜 Todo 列表:

Cmd Markdown 开发

  • [ ] 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
  • [ ] 支持以 PDF 格式导出文稿
  • [x] 新增Todo列表功能 语法参考
  • [x] 改进 LaTex 功能

    • [x] 修复 LaTex 公式渲染问题
    • [x] 新增 LaTex 公式编号功能 语法参考

      七月旅行准备

    • [ ] 准备邮轮上需要携带的物品

    • [ ] 浏览日本免税店的物品

    • [x] 购买蓝宝石公主号七月一日的船票

[^footnote]: 这是一个 注脚文本

[^footnote2]: 这是另一个 注脚文本

作者 @ghosert
2015 年 06月 15日

twtccw
现已装备物理学圣剑