PS:作者很懒,所以能展示源码他就不会多说话
先来测试一下简书的Markdown语法支持,再bb
首先是简书支持的:
h1标题
h2标题
h6标题
这也是h2
这个是h1
- 无序列表
- 无序列表
- 各种无序列表
- 有序列表
- 有序列表
这是 | 一个 | 表格 |
---|---|---|
真的 | 爱信 | 不信 |
斜体 粗体 粗斜体
斜体 粗体 粗斜体
删除线
引用
引用中的引用
# 简书只支持一种代码块么??
# 不是的,四个空格也行的
还有inline
代码
上述特性的markdown源码:
# h1标题
## h2标题
###### h6标题
---
***
这也是h2
-----
这个是h1
===
- 无序列表
+ 无序列表
* 各种无序列表
1. 有序列表
1. 有序列表
| 这是 | 一个 | 表格 |
| :-- | :--: | --: |
| 真的 | 爱信 | 不信 |
*斜体* **粗体** ***粗斜体***
_斜体_ __粗体__ __*粗斜体*__
~~删除线~~
[链接](https://github.com/ "链接说明不支持")
![图片](https://upload.wikimedia.org/wikipedia/commons/thumb/2/24/GitHub_logo_2013_padded.svg/250px-GitHub_logo_2013_padded.svg.png "链接说明不支持")
> 引用
>> 引用中的引用
/`/`/`
# 简书只支持一种代码块么??这里的“/”只是转义用,记得删掉
/`/`/`
# 不是的,四个空格也行的
还有`inline`代码
简书不支持的特性:
<!-- markdown(html)注释 -->
<!-- 下面基本是GFM的特性 -->
这是 | 另一种 | 表格
| :-- | :--: | --: |
真的 | 爱信 | 不信
[引用][跳转标签]链接
/`/`/`cpp
//特定语言代码块,上面的/只是为了转义,显然我也没找到简书的转义功能
/`/`/`
- [x] 任务列表。。。
- [ ] 其实也勉强
<!-- emoji表情 -->
:smile:
<!-- 其它 -->
[TOC]
<!-- 流程图 -->
flow
st=>start: Start
op=>operation: Your Operation
cond=>condition: Yes or No?
e=>end
st->op->cond
cond(yes)->e
cond(no)->op
<!-- mathjax -->
$$
J(\theta) = \frac 1 2 \sum_{i=1}^m (h_\theta(x^{(i)})-y^{(i)})^2
$$
整体上来讲简书的markdown引擎算是“还可以用”的地步吧,有个缺点是段落规则混乱,似乎是开发者想要简化用户对于换行的操作,但是规则没有统一起来。这是Markdown本身的缺点:语法在细节上依赖于实现
markdown作为简化的html是一种十分适合简单写作的文本标记语言,大多数的markdown解析器都采用讲其转化为html的方式,因此markdown可以使用部分html标签来进行扩展,比如彩色文字可以:
<font color="red">红色,简书不支持</font>
最后关于markdown inline code,我认为:
- 大段代码肯定不能用inline code
- 如果只有一个单词,并且这个单词在上下文中指的是某种编程语言的关键字,可以用inline code
- 如果有多个单词组成一个短语,并且在上下文中指的是代码中的关键字,最好用inline code