MENU

typecho-markdown语法检测

July 20, 2019 • Read: 6119 • 教程·折腾

typecho-markdown语法支持检测

前言: 本文针对typecho开发版[18.10.23],在添加主题Mirages后的markdown语法检测支持情况及总结注意点

1.标题

标题以N个#符号开头,后面接空格+标题语,N>=1,n个#代表第N级标题,如:#xxx代表一级标题xxx,##xxx代表二级标题xxx

示例:

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
####### 七级标题

效果如下:

一级标题

二级标题

三级标题

四级标题

五级标题
六级标题
七级标题

可见,当前版本支持6级,大于6级自动转化为6级


2.文本字体

使用一些特殊标记符号将文本包裹起来,达到特殊显示,增强提示内容的效果

普通文本

直接书写,没有特殊符号包裹

斜体

将需要斜体的文字,使用一对*或_包裹起来(文字左右1个*或_)

加粗

将需要加粗的文字,使用一对**包裹起来(文字左右2个*)

斜体加粗

将需要斜体加粗的文字,使用一对***包裹起来(文字左右3个*)

删除线

将需要删除线的文字,使用一对~~包裹起来(文字左右2个~)

示例:

_斜体1_
*斜体2*
**加粗**
***斜体加粗***
~删除线~

效果如下:

斜体1
斜体2
加粗
斜体加粗
删除线


3.引用/注释

以>符号开头,后面接文字表示引用/注释.(多个>开头代表嵌套注释,真·没啥卵用)

示例:

> 引用1,
引用1中换行1次
引用1中换行2次

换行空白代表结束引用1

> 引用1,
引用1中换行1次
引用1中换行2次
>> 引用2
引用2中换行1次
引用2中换行2次

换行空白代表结束引用2

> 引用1,
> 引用1中换行1次
> 引用1中换行2次
>> 引用2
>> 引用2中换行1次
>> 引用2中换行2次

效果如下:

引用1,
引用1中换行1次
引用1中换行2次

换行空白代表结束引用1

引用1,
引用1中换行1次
引用1中换行2次

引用2
引用2中换行1次
引用2中换行2次

换行空白代表结束引用2

引用1,
引用1中换行1次
引用1中换行2次

引用2
引用2中换行1次
引用2中换行2次

可见,typecho引用中换行解析在本版本修复了,但建议新一行开头也用>开头,比较统一


4.分割线

在新的一行中,只使用连续的3个过3个以上的-或*符号,代表分割线

示例:

---
----
***
****

效果如下:





可见,3个或3个以上效果是一致的


5.图片

语法:

![alt](url 'title')
alt:可选项,图片下面的文字,相当于对图片内容的解释
title:可选项,标题,当鼠标移到图片上时显示的内容.

示例:

![漂亮的风景](https://cdn.liuzhicong.cn/img/mountain.jpg '超漂亮的风景')

效果如下:

漂亮的风景

可见,typecho没有对alt进行解析,title可以正常解析,且默认图片居中了.(Mirages主题对点击大图展示做了平滑优化


6.超链接

语法:

[name](url 'title')
name:必选项,超链接展示的名称
title:可选项,超链接的title,鼠标移动到超链接后的展示内容

示例:

[本文地址](https://liuzhicong.cn/index.php/default/markdown-advanced.html "这是超链接title")

效果如下:

本文地址

可见,typecho没有将title解析出来


7.列表

解析出<ul><li><li/></ul>,<ol><li><li/></ol>的html列表语句

无序列表

格式: -/+/* + 空格 + 文字

示例:

- a
+ b
* c
注意:-/+/* 跟内容之间要有空格

效果如下:

  • a
  • b
  • c

有序列表

格式: 数字 + 英文符号 '.' + 空格 + 文字

示例:

1. a
2. b
3. c
注意:序号跟内容之间要有空格

效果如下:

  1. a
  2. b
  3. c

可见,typecho 对列表有"强制性"解析,要对上一行缩进一个tab位!!!

列表嵌套

格式:下一级与上一级,用2或3个空格缩进即可(恰好下一级符号与上一级文字对齐)

示例:

**有序嵌套有序:**
1. AAA
   1. aaa
   2. aaa
2. BBB
   1. bbb
   2. bbb

**有序嵌套无序:**
1. AAA
   * aaa
   * aaa
2. BBB
   * bbb
   * bbb

**无序嵌套有序:**
* AAA
  1. aaa
  2. aaa
* BBB
  1. bbb
  2. bbb

**无序嵌套无序:**
* AAA
  * aaa
  * aaa
* BBB
  * bbb
  * bbb

效果如下:

有序嵌套有序:

  1. AAA

    1. aaa
    2. aaa
  2. BBB

    1. bbb
    2. bbb

有序嵌套无序:

  1. AAA

    • aaa
    • aaa
  2. BBB

    • bbb
    • bbb

无序嵌套有序:

  • AAA

    1. aaa
    2. aaa
  • BBB

    1. bbb
    2. bbb

无序嵌套无序:

  • AAA

    • aaa
    • aaa
  • BBB

    • bbb
    • bbb

8.表格

语法:

th|th|th
---|:---:|---:
content|content|content

|分割每列
第一行表示表头
第二行分割表头和内容,每个|分割的是限制对这一列的对齐方式,
(- 有一个就行,内容多加多几个为了代码美观对齐)
:---与默认---效果为居左对齐,
:---:效果为居中对齐,
---:居右对齐
从第三行开始到最后行,都是内容

示例:

name|gender|age
---|:---:|---:
Lee|Male|28
Lucy|Female|26

效果:

namegenderage
LeeMale28
LucyFemale26

9.代码

代码分为短代码(单行代码)和代码块

短代码(单行代码)

使用一对 ` 包裹起来(文字左右一个 `, ` :即键盘左上角,数字1旁边的反引号键),可以单独作一行或在任何需要短代码作为提示使用

格式:

`your code`

示例:

我是一只`小小小小`鸟哦哦~
`想要飞啊飞啊飞不高嗷~`

效果:

我是一只小小小小鸟哦哦~
想要飞啊飞啊飞不高嗷~

代码块

使用一对3个反引号```将代码包裹起来,并且,前后3个反引号均需要独立一行,第一个3个反引号后面可以接代码语言,用于代码语法高亮

格式:

\```language
code...
code...
code...
\```
请删除上方的\

示例:

\```javascript
let msg="Hello World !";
console.log(msg);
\```
请删除上方的\

效果:

let msg="Hello World !";
console.log(msg);

10.流程图

没使用过,暂无测试


11.折叠

格式:

<details>
<summary>title</summary>

content
</details>

注意:content必须与title隔一个空白行

示例:

<details>
<summary>点击查看代码</summary>

let msg="Hello World !";
console.log(msg);
</details>

效果:


点击查看代码

let msg="Hello World !";
console.log(msg);

可见,在开发版中已支持折叠,但是(已经写了js控制summary标签前后p和br标签的css样式为display:none),具体看:typecho添加自定义js

12.todolist

格式:

- [ ] todo something 1
- [ ] todo something 2
- [x] finish something 3

注意: []前后中间都必须有空格,完成时,用x代替中间空格

示例:

- [ ] 吃饭
- [ ] 睡觉
- [x] 打豆豆
- [x] [链接百度测试](www.baidu.com)

注意: []前后中间都必须有空格,完成时,用x代替中间空格

效果:

可见,本版本解析todolist是相对正常的,但在添加包含链接的任务,就会解析失败


总结

typecho绝大部分的标准语法都支持,可满足日常需求.但有些地方如todolist有瑕疵,无法添加链接,会解析错误
另外,typecho可以使用了[自定义代码],方式让文章展示方式更丰富多彩详情见:typecho自定义代码
为了兼顾与GitHub的markdown兼容,建议还是仅仅使用标准的语法即可.如无整合到Github的需求,则大可使用[自定义代码]

参考

Markdown基本语法:https://www.jianshu.com/p/191d1e21f7ed


本文由 ONE 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
如有版权疑问交流,请给我留言:oneisall8955@gmail.com
本文永久链接:https://liuzhicong.cn/index.php/guide/typecho-markdown-check.html

Last Modified: August 2, 2019
Archives QR Code Tip
QR Code for this page
Tipping QR Code
Leave a Comment

2 Comments
  1. 果然还是没有像原生的一样啊,受教了OωO

    1. @叶戈开启这个主题的markdown的一些语法解析功能后,和github的差不多了,整体还是满意的