在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称(OpenSource Name):mzlogin/markdown-intro开源软件地址(OpenSource Url):https://github.com/mzlogin/markdown-intro开源编程语言(OpenSource Language):开源软件介绍(OpenSource Introduction):自从 2014 年左右接触到 Markdown 以来,对它的使用就一发而不可收拾。从最开始使用它在 GitHub Pages 里写博客,到用它编辑项目的 README 文件,再到撰写开发文档,编辑微信公众号文章和邮件内容等等,这期间也见证了它在各类平台和网站上的普及和被原生支持,可以说,Markdown 如今已经渗透了我在技术和网络活动的方方面面,成为了我撰写文本文档的首选。 那么首先我们一起来看一下它的「定义」:
本文档的目的不在于面面俱到地介绍 Markdown,只是作为我对其理解的笔记整理,希望能同时帮助一些对 Markdown 感兴趣的人快速上手,或是作为一个工具,供对其已经有所了解的人在需要时参考。 接下来请随我一起深入了解这门并不神秘的实用标记语言。 背景优点
使用场景
个人感觉比较遗憾的一点是各平台可能采用不同语言实现的 Markdown 解析引擎,或采用同一解析引擎的不同版本,而且可能有不同程度的定制与扩展,这导致在不同平台上使用 Markdown 写作时体验并不完全一致。不过幸好对于大家公认的一些标准语法,各家都是支持的。 编辑工具理论上任何一款文本编辑器都能用于编辑 Markdown 文档,它们分别提供了不同程度的语法高亮、预览等功能,以下只是列举其中一部分,选择自己称手的即可。
语法标题Markdown:
预览效果:
对应 HTML: <h1>atx-style 一级标题</h1>
<h2>二级标题</h2>
<h6>六级标题</h6>
<h1>Setext-style 一级标题</h1>
<h2>二级标题</h2> 段落中间没有空行的连续不断的几行文字被视为一个段落。 Markdown:
预览效果: 白日依山尽, 黄河入海流。 (句号后面没空格) 欲穷千里目, 更上一层楼。 对应 HTML: <p>白日依山尽,</p>
<p>黄河入海流。
(句号后面没有空格)</p>
<p>欲穷千里目,</p>
<p>
更上一层楼。
<br>
(句号后面有俩空格)
</p> 行内格式对段落或者部分文本的强调效果。 Markdown:
预览效果: 后面俩字加黑 后面俩字斜体 对应 HTML: <p>
后面俩字
<strong>加黑</strong>
</p>
<p>
后面俩字
<em>斜体</em>
</p> 引用块Markdown:
预览效果:
对应 HTML: <blockquote>
<p>引用块段落一。</p>
<p>引用块段落二。</p>
<blockquote>
<p>内嵌引用块段落一。</p>
</blockquote>
<h3 id="引用块内的标题">引用块内的标题</h3>
</blockquote> 超链接Markdown 支持行内式链接和引用式链接。 Markdown:
预览效果: 行内式 博客 链接,带 title。 行内式 GitHub 链接。 引用式 博客 链接。 引用式 GitHub 链接,带 title。 对应 HTML: <p>行内式 <a href="https://mazhuang.org" title="我的个人博客">博客</a> 链接,带 title。</p>
<p>行内式 <a href="https://github.com/mzlogin">GitHub</a> 链接。</p>
<p>引用式 <a href="https://mazhuang.org">博客</a> 链接。</p>
<p>引用式 <a href="https://github.com/mzlogin" title="我的 GitHub 主页">GitHub</a> 链接,带 title。</p> 图片在超链接的写法前加一个 Markdown:
预览效果: 对应 HTML: <img src="https://mazhuang.org/favicon.ico" alt="Alt text" title="favicon"> 列表包括有序列表和无序列表。 Markdown:
预览效果:
对应 HTML: <ul>
<li>苹果</li>
<li>葡萄</li>
<li>榴莲</li>
</ul>
<ol>
<li>苹果</li>
<li>葡萄</li>
<li>榴莲</li>
</ol> 其中无序列表的标记可以使用 代码块支持行内代码和代码块。 Markdown:
预览效果: Android 里使用 if (TextUtils.isEmpty(text)) {
return null;
} 对应 HTML: <p>Android 里使用 <code>TextUtils</code> 类的 <code>isEmpty</code> 方法来判断字符串是否为空。</p>
<div class="highlight highlight-source-java"><pre><span class="pl-k">if</span> (<span class="pl-smi">TextUtils</span><span class="pl-k">.</span>isEmpty(text)) {
<span class="pl-k">return</span> <span class="pl-c1">null</span>;
}</pre></div> 上例中的语言标记 块式代码也可以对整个代码段缩进四个空格,或一个 Tab 来实现。 水平分割线使用一个单独行里的三个或以上 Markdown:
预览效果: 对应 HTML:
嵌入 HTMLMarkdown 标记语言的目的不是替代 HTML,也不是发明一种更便捷的插入 HTML 标签的方式。它对应的只是 HTML 标签的一个很小的子集。 对于那些没有办法用 Markdown 语法来对应的 HTML 标签,直接使用 HTML 来写就好了。 扩展语法本节的内容是介绍一些受到广泛支持的 Markdown 扩展语法。 表格Markdown:
预览效果:
对应 HTML: <table>
<thead>
<tr>
<th>编号</th>
<th align="left">姓名(左)</th>
<th align="right">年龄(右)</th>
<th align="center">性别(中)</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td align="left">张三</td>
<td align="right">28</td>
<td align="center">男</td>
</tr>
<tr>
<td>1</td>
<td align="left">李四</td>
<td align="right">29</td>
<td align="center">男</td>
</tr>
</tbody>
</table> 任务列表在 GitHub / GitLab 里有较好的支持。 Markdown:
预览效果:
对应 HTML: <ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> 洗碗</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> 清洗油烟机</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> 拖地</li>
</ul> 如果是在 GitHub / GitLab 的 Issue 里,会附赠任务完成比例提示效果: 还可以直接在网页上拖动调整顺序,勾选和取消勾选。 删除线Markdown:
预览效果: 后面三个字打上 对应 HTML: <p>后面三个字打上<del>删除线</del>。</p> 自动链接自动链接扩展,即:当识别到 URL,或用 Markdown:
预览效果: 对应 HTML: <p><a href="https://github.com">https://github.com</a></p>
<p><a href="mailto:[email protected]">[email protected]</a></p> emoji以 GitHub Pages 为例。 Markdown:
预览效果: |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论