标记语言Markdown介绍以及日常使用
Markdown介紹
- Markdown是一種文本標(biāo)記語(yǔ)言,用于快速文檔排版
- Markdown文件為純文本文件,后綴名為 .md
- Markdown介于Word和HTML之間
- 比起Word,Markdown是純文本,排版文檔輕量、方便、快速。
- 比起HTML,Markdown簡(jiǎn)單直觀,易讀、易寫、易修改
Markdown優(yōu)點(diǎn)
- 簡(jiǎn)單、流行、B格高且使用廣泛,排版功能足夠使用(不足之處可用HTML、CSS彌補(bǔ))
- 廣泛用于用于辦公、文字工作者、程序員等人員日常文檔的寫作排版
Markdown缺點(diǎn)
- 太簡(jiǎn)單,很多復(fù)雜的專業(yè)排版樣式功能無(wú)法實(shí)現(xiàn),只適用于要求不高的文字排版場(chǎng)合(辦公、技術(shù)文檔等)
Markdown編輯器
- 任意文本編輯器
- 專業(yè)Markdown編輯器:支持Markdown文檔排版后預(yù)覽,適合文字工作者
- MAC:mou,macdown
- Windows:MarkdownPad
- 自帶預(yù)覽功能的專業(yè)代碼編輯器:適合編程、分析等理工類應(yīng)用
- VSCode 原生支持預(yù)覽
- Atom 原生支持預(yù)覽,并可將md文件另存為HTML文件
- Jupyter Notebook 科學(xué)工作者和程序員用交互式筆記本,網(wǎng)頁(yè)版,可用于數(shù)據(jù)分析、教學(xué)、演講等
Markdown預(yù)覽
- Atom:
- 預(yù)覽快捷鍵:Ctrl+Shift+M
- 或:Ctrl+Shift+P - 命令窗口輸入 markdown ,回車
- VSCode:md文件右上方-打開側(cè)邊欄預(yù)覽
Markdown語(yǔ)法
Markdown有很多擴(kuò)展方言,這里使用GFM(Github Flavored Markdown)
如何速成Markdown?
一份Markdown格式的文件, 應(yīng)該要能以純文字形式直接發(fā)表, 并且一眼看過(guò)去不存在任何標(biāo)記用的標(biāo)簽或格式指令。- John Gruber- 不要機(jī)械記憶Markdown標(biāo)記,如果由我發(fā)明一種格式標(biāo)記語(yǔ)言,寫文章時(shí)候如何表示標(biāo)題、段落、列表,你就知道Markdown是怎么發(fā)明出來(lái)的了。
Markdown基本語(yǔ)法:
- 1:標(biāo)題(# h1-h6)
- 2:空格、段落和換行(<p><br>)
- 3:超鏈接([]() <a>)
- 4:圖片(![]() <img>)和公式
- 5:列表(<ul><ol><li>)
- 6:代碼塊(``` <pre>)
- 7:著重、強(qiáng)調(diào)(** <em><strong>)
- 8:表格(-|-|- <table>)
- 9:轉(zhuǎn)義字符(\)
- 10:分隔線(--- <hr>)
1:標(biāo)題(# h1-h6)
<!-- 標(biāo)題用 2個(gè)或2個(gè)以上的=或- -->一級(jí)標(biāo)題 ==二級(jí)標(biāo)題 --<!-- 或者: --># 一級(jí)標(biāo)題 ## 二級(jí)標(biāo)題 ### 三級(jí)標(biāo)題 #### 四級(jí)標(biāo)題 ##### 五級(jí)標(biāo)題 ###### 六級(jí)標(biāo)題一級(jí)標(biāo)題
二級(jí)標(biāo)題
三級(jí)標(biāo)題
四級(jí)標(biāo)題
五級(jí)標(biāo)題
六級(jí)標(biāo)題
2:空格、段落和換行(<p><br>)
- 空格:直接在編輯器空格或換行,md都只顯示為一個(gè)空格
- 段落:回車兩次,編輯器換兩行,顯示為段落(p標(biāo)簽)
少見情況:
- 多個(gè)空格:語(yǔ)義性原因不建議這么做,可直接寫HTML轉(zhuǎn)義字符
- 換行:上一行結(jié)尾加兩個(gè)空格再回車(<br>)。建議少用,可用無(wú)序列表代替
- 連續(xù)換行多行:語(yǔ)義性原因不建議這么做,可直接寫HTML換行標(biāo)簽<br>
空 格沒(méi) ????換行
段落
本行結(jié)尾空兩格
回車就會(huì)換一行
連續(xù)換行多行
換行結(jié)束
3:超鏈接([]() <a>)
3.1:直接寫鏈接地址:http://www.aaa.com/ (VSCode不支持)3.2:[超鏈接](http://www.aaa.com/)3.3:[本頁(yè)面錨點(diǎn)](#abc) <div id="abc">點(diǎn)擊跳轉(zhuǎn)到本頁(yè)面錨點(diǎn)位置,多用于文檔目錄</div>
4:圖片(![]() <img>)和公式
- 圖片只比超鏈接前面多個(gè) !
- 圖片路徑,相對(duì)鏈接、絕對(duì)鏈接均可
- 復(fù)雜的寫法,例如 圖片加超鏈接、圖片設(shè)寬高 等,建議用HTML或CSS實(shí)現(xiàn)
URL地址中帶括號(hào)的圖片,一般是公式,
圖片調(diào)用和URL鏈接隔行書寫,
- 一行調(diào)用(描述可以不寫),
- 一行定義圖片URL地址(括號(hào)內(nèi)名字或數(shù)字對(duì)應(yīng))。
5:列表(<ul><ol><li>)
* 無(wú)序列表1 * 無(wú)序列表2* 無(wú)序列表3* 無(wú)序列表4* 無(wú)序列表51. 有序列表1 1. 有序列表21. 有序列表31. 有序列表41. 有序列表5無(wú)序列表
- 無(wú)序列表1
- 無(wú)序列表2
- 無(wú)序列表3
- 無(wú)序列表4
- 無(wú)序列表5
- 無(wú)序列表3
有序列表
6:代碼塊(``` <pre>)
` 反引號(hào)
- 將編輯器內(nèi)程序代碼原格式顯示
- 內(nèi)部的HTML特殊符號(hào)如< > &和都會(huì)自動(dòng)轉(zhuǎn)義為< > &
- 代碼塊要離上下內(nèi)容空一行,否則易出問(wèn)題
1:行內(nèi)代碼塊,一個(gè)反引號(hào),HTML轉(zhuǎn)義為<code>包裹區(qū)塊,保留布局
這是`<strong>行內(nèi)代碼塊</strong>`都在一行內(nèi)效果:這是<strong>行內(nèi)代碼塊</strong>都在一行內(nèi)
2:塊級(jí)代碼塊,三個(gè)反引號(hào)包含,```,HTML轉(zhuǎn)義為<pre><code>包裹區(qū)塊,保留布局
``` <div>這是塊級(jí)代碼塊 </div> ```效果:
<div>這是塊級(jí)代碼塊 </div>如要帶代碼高亮效果,3個(gè)反引號(hào)開始處加上編程語(yǔ)言名
```html <div>這是塊級(jí)代碼塊 </div> ```效果:
<div>這是塊級(jí)代碼塊 </div>如要顯示一個(gè)反引號(hào)或者<pre>標(biāo)簽,用兩個(gè)反引號(hào)包裹文檔 ``
在這個(gè)``文本中夾雜一個(gè)`反引號(hào)如何顯示``?效果:在這個(gè)文本中夾雜一個(gè)`反引號(hào)如何顯示?
如要顯示3個(gè)反引號(hào),用<pre>標(biāo)簽標(biāo)簽包裹文檔
<pre> ```javascript function aaa(){var a = 1; } ``` </pre>效果:
```javascript function aaa(){var a = 1; } ```7:著重、強(qiáng)調(diào)(** <em><strong>)
著重 斜體 em *著重 斜體 em*
強(qiáng)調(diào) 粗體 strong **強(qiáng)調(diào) 粗體 strong**
8:表格(-|-|- <table>)
默認(rèn)左對(duì)齊
表頭1 | 表頭2 | 表頭3 ------|------|------ 行1列1 | 行1列2 | 行1列3 行2列1 | 行2列2 | 行2列3 行3列1 | 行3列2 | 行3列3| 行1列1 | 行1列2 | 行1列3 |
| 行2列1 | 行2列2 | 行2列3 |
| 行3列1 | 行3列2 | 行3列3 |
9:轉(zhuǎn)義字符(\)
\ 反斜杠
- 想在頁(yè)面顯示md標(biāo)記,
- 或者你不小心寫了其他重復(fù)md標(biāo)記,例如:
標(biāo)題
也是著重標(biāo)記
反斜杠轉(zhuǎn)義
\### 標(biāo)題\__也是著重標(biāo)記__1986\. 數(shù)字+點(diǎn),被轉(zhuǎn)成有序列表 1986\. 數(shù)字+點(diǎn),被轉(zhuǎn)成有序列表### 標(biāo)題
_也是著重標(biāo)記_
1986. 數(shù)字+點(diǎn),被轉(zhuǎn)成有序列表1986. 數(shù)字+點(diǎn),被轉(zhuǎn)成有序列表
10:分隔線(--- <hr>)
---
- 前面空一行
- 本行最少三個(gè)-表示水平線,分隔線
Markdown拓展應(yīng)用
1:Markdown保存為HTML
- 最簡(jiǎn)單的方法:Atom - 預(yù)覽界面右鍵 - Save As HTML(注意圖片路徑默認(rèn)為絕對(duì)路徑,需要修改為相對(duì)路徑)
- 高級(jí)方法:
- 使用基于Node.js的gitbook庫(kù)自動(dòng)生成HTML文檔
- 使用基于Python的Sphinx庫(kù)生成HTML文檔
- 使用基于Haskell的Pandoc轉(zhuǎn)換任意電子文檔格式
2:在Markdown中直接寫HTML/CSS/JavaScript
不在md范圍內(nèi)的標(biāo)記或樣式,或者說(shuō)用Markdown很難實(shí)現(xiàn)的標(biāo)記或樣式,可以直接寫HTML/CSS/JavaScript語(yǔ)言實(shí)現(xiàn)
你完全可以把md文檔當(dāng)成HTML文檔在里面寫原生HTML/CSS/JS代碼(注意環(huán)境支持度)
- HTML: 所有編輯器都支持
- CSS: 大部分支持。Atom VSCode支持,JupyterNotebook只支持行內(nèi)樣式
- JS: 基本都不支持。VSCode設(shè)置開啟后支持,其他環(huán)境如想寫JS可導(dǎo)出HTML文檔后自行編輯
3:在Markdown中載入基于文本的公式
上面圖片標(biāo)簽講了怎樣載入基于圖片的公式,怎樣載入基于文本的公式?
- MathJax是一個(gè)渲染公式的JS庫(kù),LaTex語(yǔ)法書寫
- 使用MathJax顯示公式,文檔瀏覽器必須支持JS
- Jupyter不需操作,原生支持
- VSCode需手動(dòng)載入MathJax.js,再啟用JS后支持
- Atom默認(rèn)過(guò)濾JS,不支持
使用方式:
效果(需啟用JS支持才可預(yù)覽):
$$ P(A \mid B) = \frac{P(B \mid A) \, P(A)}{P(B)} $$
- myscript網(wǎng)站可以手寫公式,自動(dòng)轉(zhuǎn)為L(zhǎng)aTeX語(yǔ)法:http://webdemo.myscript.com/views/math.html#
總結(jié)
以上是生活随笔為你收集整理的标记语言Markdown介绍以及日常使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: coturn的负载均衡特性_高性能负载均
- 下一篇: 5.搭建集群