Markdown基礎語法

lsgxeva發表於2024-03-18

Markdown基礎語法

來源 https://www.cnblogs.com/liuzhongkun/p/15647326.html

目錄
  • Markdown語法
    • 1、Markdown標題
    • 2、Markdown段落
    • 3、Markdown字型
    • 4、Markdown分隔線
    • 5、Markdown刪除線
    • 6、Markdown下劃線
    • 7、Markdown腳註
    • 8、Markdown列表
    • 9、Markdown區塊
      • 區塊和列表的組合使用
    • 10、Markdown程式碼
      • 程式碼區塊
    • 11、Markdown連結
      • 高階連結
    • 12、Markdown圖片
    • 13、Markdown表格
    • 14、Markdown高階技巧
    • 15、公式
    • 16、流程圖的繪製
    • 17、生成目錄的方法

Markdown語法

1、Markdown標題

  • 使用#表示1-6級標題,以及標題對應一個#號

2、Markdown段落

Markdown段落沒有特殊的格式,直接編寫文字就好,段落的換行是使用兩個以上空格加回車

3、Markdown字型

Markdown可以使用一下幾種字型

*斜體文字(號)

_斜體文字_(_號)

**粗體文字號)

_粗體文字_(__號)

字型可以相互組合

4、Markdown分隔線

你可以在一行中用三個以上的*號 、-號 、_號 來建立一個分隔線,行內不能有其他東西。也可以在星號或是減號中間插入空格。下面幾種都可以建立分隔線:

***
* * *
*****
- - -
-----
___
_ _ _

5、Markdown刪除線

如果段落上的文字要新增刪除線,只需要在文字的兩端加上兩個波浪線即可

~~baidu.com~~

6、Markdown下劃線

下劃線可以透過HTML的標籤實現

<u>帶下劃線文字

7、Markdown腳註

腳註是對文字的補充說明

Markdown腳註的格式

8、Markdown列表

Markdown支援有序列表和無序列表

無序列表使用(*)、(+)或(-)作為列表的標記,這些標記後面要加一個空格

  • 第一項
  • 第二項
  • 第三項
    • 3.1
    • 3.2

有序列表使用數字並加上(.)表示

  1. 第一項
  2. 第二項
  3. 第三項
    1. 3.1項

列表巢狀

列表巢狀只需要在子列表中的選項前面新增四個空格(tab)即可

  1. 第一項
    1. 第一項的第一個元素
    2. 第一項的第二個元素
  2. 第二項

9、Markdown區塊

Markdown區塊引用是在段落開頭使用>符號,後面緊跟一個空格符號

區塊的引用

這是區塊

區塊是為了讓文字顯得更加突出

另外區塊是可以巢狀的,一個>符號代表最外層,兩個>符號是第一層巢狀,以此類推

最外層

第一層巢狀

第二層巢狀

區塊和列表的組合使用

如果要在列表專案內放進區塊,那麼就需要在>前新增四個空格縮排

列表中使用區塊

  • 第一項

    • 這是區塊

      在列表中使用區塊

  • 第二項

10、Markdown程式碼

如果是段落上的一個函式或片段的程式碼可以用反引號把它包裹起來

print('hello world')python

程式碼區塊

使用```包裹一段程式碼,並指定一種語言(也可以不指定)

import requests
resp = requests.get(url='https://www.baidu.com')
resp.enconding = 'utf-8'
print(resp.text)

11、Markdown連結

連結使用方法

[連結名稱](連結地址)

或者

<連結地址>

這是一個連結百度一下

直接使用連結地址https://www.baidu.com

高階連結

我們可以透過變數來設定一個連結,變數賦值在文件末尾進行

這個連結用1作為網站變數[Google][1]

然後在文件的末尾為變數賦值(網址)[1]:https://www.googole.com "可選標題"

例如

Runoob

12、Markdown圖片

Markdown圖片語法格式如下

![alt 屬性文字](圖片地址 "可選標題")

開頭一個歎號!接著一個方括號,裡面放上圖片代替文字接著一個普通括號,裡面放上圖片的網址,最後還可以用引號包住並加上選擇性的'title'屬性的文字

alt meinv

Markdown還沒有指定圖片的高度與寬度,如果你需要的話,你可以使用普通的Markdown基礎語法標籤

Markdown基礎語法

13、Markdown表格

Markdown製作表格使用|來分隔不同單元格使用(-)來分隔表頭和其他行

語法格式如下

|表頭|表頭|

|------|------|

|單元格|單元格|

對齊方式

我們可以設定表格的對齊方式

  • -: 設定內容和標題欄居左對齊
  • :- 設定內容和標題欄居右對齊
  • :-: 設定內容和標題欄居中對齊
左對齊右對齊居中對齊
單元格 單元格 單元格

14、Markdown高階技巧

支援HTML元素,不在Markdown涵蓋範圍內的標籤,都可以直接在文件裡面使用HTML編寫

目前支援得的HTML元素有:

轉義Markdown使用了很多特殊符號則需要使用跳脫字元,Markdown使用(\)轉義特殊字元

15、公式

當你需要在編輯器中插入數學公式時,可以使用兩個$包裹Tex或LaTeX格式的數學公式來實現。提交後,問答和文章也會根據需要載入Mathjax對數學公式進行渲染

16、流程圖的繪製

  • 定義元素

    • Markdown基礎語法
    • 使用示例

      ```mermaid
      flowchat
      st=>start: 開始
      e=>end: 結束
      op1=>operation: 操作1 | past
      op2=>operation: 操作2 | current
      op3=>operation: 操作3 | future
      pa=>parallel: 多輸出操作4 | approved
      cond=>condition: 確認? | rejected
      st->op1->cond
      cond(true)->e
      cond(no)->op2(right)->op3->pa(path1,right)->op1
      pa(path2,left) ->e
      st@>op1({"stroke":"Blue"})@>cond({"stroke":"Green"})@>e({"stroke":"Red","stroke-width":6,"arrow-end":"classic-wide-long"})
      ```
  • 定義元素的走向

    • 標誌方向
      TB、TD top bottom - 從上到下
      BT bottom top - 從下到上
      RL right left - 從右到左
      LR left right - 從左到右

      上面那張圖片在這樣使用Markdown基礎語法

    • 使用 -> 來連線兩個元素

      Markdown基礎語法
    • 對於condition型別,有yes和no兩個分支,cond(yes)和cond(no)

    • 每個元素可以制定分支走向,預設向下,也可以用right指向右邊,如sub1(right)。

  • 節點型別

    • 預設節點: A
    • 矩形節點: B[矩形]
    • 圓角矩形節點: C(圓角矩形)
    • 圓形節點: D((圓形))
    • 非對稱節點: E>非對稱]
    • 菱形節點: F

17、生成目錄的方法

在文章開始地方輸入[toc],即可在對應位置插入目錄

基本用法差不多就這些,如有遺漏,請留言!

Markdown輸出公式

來源 https://www.cnblogs.com/liuzhongkun/p/15684511.html

目錄
  • Markdown編寫公式
    • 一、修改設定
    • 二、希臘字母
    • 三、一些資料結構
    • 四、定界符
    • 五、可變大小的符號
    • 六、函式名稱
    • 七、二進位制運算子和關係運算子
    • 八、箭頭符號
    • 九、其他特殊符號
    • 十、上下標
    • 十一、矩陣
    • 十二、分段函式
      • 1、分段函式
      • 2、多行表示
      • 3、方程組
    • 十三、字型
    • 十四、表格
    • 十五、公式標記和引用

Markdown編寫公式

一、修改設定

使用的是Typora

檔案->偏好設定->Markdown->內聯公式

二、希臘字母

在行內輸入:$ + esc,會出現$$字樣,在這兩個美元符號之間輸入LaTex語法,即可實現在行內插入公式

在行間輸入:$$ + 回車,會出現一對的符號,在這一對符號之間輸入LaTex語法,即可實現在行間插入公式

注:美元符號需在英文輸入法下進行輸入

Markdown基礎語法

$\alpha$
$$
\chi\alpha\kappa
$$

當希臘字母的LaTex語法首字母大寫時,即輸出大寫的希臘字母;首字母小寫時,輸出小寫的希臘字母

三、一些資料結構

Markdown基礎語法

$\frac{abc}{xyz}$
$$
\frac{abc123}{xyz123}
$$

方法和上面是一樣的,只要替換相應的LaTex語法即可

四、定界符

Markdown基礎語法

$|$
$$
|\vert
$$

方法和上面是一樣的,只要替換相應的LaTex語法即可

將上述定界符與\left\right組合使用可以使得定界符匹配其內容的高度

$$
\left|\begin{matrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{matrix} \right|
$$

五、可變大小的符號

Markdown基礎語法

$\sum$
$\int$
$\oint$
$\iint$
$$
\bigcap\bigcup\bigoplus\bigotimes
$$

六、函式名稱

Markdown基礎語法

$\sin$
$\cos$
$\tan$
$\log$
$$
\tan(at-n\pi)
$$

七、二進位制運算子和關係運算子

Markdown基礎語法

$\times$、$\ast$、$\div$、$\pm$、$\mp$、$\leq$、$\geq$、$\lessgtr$

八、箭頭符號

Markdown基礎語法

$\leftarrow$、$\Leftarrow$、$\nLeftarrow$、$\rightleftarrows$

九、其他特殊符號

Markdown基礎語法

$\heartsuit$、$\infty$、$\iiint$、$\partial$

十、上下標

使用^來輸出上標,使用_來輸出下標

$$
\sin^2(\theta) + \cos^2(\theta) = 1
$$
$$
\sum_{n=1}^\infty k
$$
$$
\int_a^bf(x)\,dx
$$
$$
\lim\limits_{x\to\infty}\exp(-x) = 0
$$

十一、矩陣

矩陣中的各元素透過用&來分隔,\\來換行

大概有以下六種形式

$$
\begin{matrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{matrix}
$$
$$
\begin{pmatrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{pmatrix}
$$
$$
\begin{bmatrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{bmatrix}
$$
$$
\begin{Bmatrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{Bmatrix}
$$
$$
\begin{vmatrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{vmatrix}
$$
$$
\begin{Vmatrix}
0&1&2\\
3&4&5\\
6&7&8\\
\end{Vmatrix}
$$

十二、分段函式

1、分段函式

\begin{cases}\end{cases}來構造分段函式,中間則用\\來分段

使用\ +空格表示空格

使用& 指示需要對齊的位置

$$
f(x) =
\begin{cases}
2x,\,\,x>0\\
3x,\,\,x\leq0\\
\end{cases}
$$

2、多行表示

其中begin{equation} 表示開始方程,end{equation} 表示方程結束;begin{split} 表示開始多行公式,end{split} 表示結束;公式中用\\ 表示回車到下一行,& 表示對齊的位置

$$
\begin{equation}\begin{split}
a&=b+c-d \\
&\quad +e-f\\
&=g+h\\
& =i
\end{split}\end{equation}
$$

3、方程組

使用\begin{array}...\end{array}\left \{\right. 配合表示方程組

$$
\left \{
\begin{array}{c}
a_1x+b_1y+c_1z=d_1 \\
a_2x+b_2y+c_2z=d_2 \\
a_3x+b_3y+c_3z=d_3
\end{array}
\right.
$$

通常MathJax透過內部策略自己管理公式內部的空間,因此a…ba…….b.表示空格)都會顯示為ab 。可以透過在ab 間加入\ ,增加些許間隙,\; 增加較寬的間隙,\quad\qquad 會增加更大的間隙

十三、字型

$\mathbf{ABCDEFGHIJKLMNOPQRSTUVWXYZabc123}$
黑體字
$\mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZabc123}$
$\mathfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZabc123}$
$\mathsf{ABCDEFGHIJKLMNOPQRSTUVWXYZabc123}$
$\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZabc123}$
黑板粗體字

十四、表格

使用\begin{array}{列樣式}…\end{array} 這樣的形式來建立表格,列樣式可以是clr 表示居中,左,右對齊,還可以使用| 表示一條豎線。表格中各行使用\\ 分隔,各列使用& 分隔。使用\hline 在本行前加入一條直線

$$
\begin{array}{c|lcr}
n & \text{Left} & \text{Center} & \text{Right} \\
\hline
1 & 0.24 & 1 & 125 \\
2 & -1 & 189 & -8 \\
3 & -20 & 2000 & 1+10i \\
\end{array}
$$

十五、公式標記和引用

使用\tag{yourtag} 來標記公式,如果想在之後引用該公式,則還需要加上\label{yourlabel}\tag 之後,如$$a = x^2 - y^3 \tag{1}\label{1}$$ 顯示為:
<span class="MathJax_Preview"><span id="MathJax-Element-2-Frame" class="mjx-full-width mjx-chtml MathJax_CHTML" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;><mtable displaystyle=&quot;false&quot;><mlabeledtr><mtd id=&quot;mjx-eqn-311&quot;><mtext>(1)</mtext></mtd><mtd><mi>a</mi><mo>:=</mo><msup><mi>x</mi><mn>2</mn></msup><mo>&amp;#x2212;</mo><msup><mi>y</mi><mn>3</mn></msup></mtd></mlabeledtr></mtable></math>"><span id="MJXc-Node-3" class="mjx-math"><span id="MJXc-Node-4" class="mjx-mrow"><span id="MJXc-Node-5" class="mjx-mtable"><span class="mjx-box"><span class="mjx-table"><span id="MJXc-Node-6" class="mjx-mlabeledtr"><span id="MJXc-Node-10" class="mjx-mtd"><span id="MJXc-Node-11" class="mjx-mrow"><span id="MJXc-Node-12" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">a<span id="MJXc-Node-13" class="mjx-mo MJXc-space3"><span class="mjx-char MJXc-TeX-main-R">:<span class="mjx-charbox MJXc-TeX-main-R">=<span id="MJXc-Node-14" class="mjx-msubsup MJXc-space3"><span class="mjx-base"><span id="MJXc-Node-15" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">x<span class="mjx-sup"><span id="MJXc-Node-16" class="mjx-mn"><span class="mjx-char MJXc-TeX-main-R">2<span id="MJXc-Node-17" class="mjx-mo MJXc-space2"><span class="mjx-char MJXc-TeX-main-R">−<span id="MJXc-Node-18" class="mjx-msubsup MJXc-space2"><span class="mjx-base"><span id="MJXc-Node-19" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">y<span class="mjx-sup"><span id="MJXc-Node-20" class="mjx-mn"><span class="mjx-char MJXc-TeX-main-R">3<span class="mjx-strut"><span class="mjx-itable"><span class="mjx-label"><span id="mjx-eqn-311" class="mjx-mtd"><span id="MJXc-Node-8" class="mjx-mrow"><span id="MJXc-Node-9" class="mjx-mtext"><span class="mjx-char MJXc-TeX-main-R">(1)<span class="mjx-strut"><span class="MJX_Assistive_MathML">(1)�:=�2−�3<br> 如果不需要被引用,只使用<code>\tag{yourtag}</code>&nbsp;,<code>$$x+y=z\tag{1.1}$$</code>顯示為:

x+y=z(1.1)(1.1)�+�=�

\tab{yourtab} 中的內容用於顯示公式後面的標記。公式之間透過\label{} 設定的內容來引用。為了引用公式,可以使用\eqref{yourlabel} ,如$$a + y^3 \stackrel{\eqref{1}}= x^2$$ 顯示為:
<span class="MathJax_Preview"><span id="MathJax-Element-4-Frame" class="mjx-chtml MathJax_CHTML" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;><mi>a</mi><mo>+</mo><msup><mi>y</mi><mn>3</mn></msup><mrow class=&quot;MJX-TeXAtom-REL&quot;><mover><mrow class=&quot;MJX-TeXAtom-OP MJX-fixedlimits&quot;><mo>=</mo></mrow><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MathJax_ref&quot; href=&quot;#&quot;><mtext>(???)</mtext></mrow></mrow></mover></mrow><msup><mi>x</mi><mn>2</mn></msup></math>"><span id="MJXc-Node-35" class="mjx-math"><span id="MJXc-Node-36" class="mjx-mrow"><span id="MJXc-Node-37" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">a<span id="MJXc-Node-38" class="mjx-mo MJXc-space2"><span class="mjx-char MJXc-TeX-main-R">+<span id="MJXc-Node-39" class="mjx-msubsup MJXc-space2"><span class="mjx-base"><span id="MJXc-Node-40" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">y<span class="mjx-sup"><span id="MJXc-Node-41" class="mjx-mn"><span class="mjx-char MJXc-TeX-main-R">3<span id="MJXc-Node-42" class="mjx-texatom MJXc-space3"><span id="MJXc-Node-43" class="mjx-mrow"><span id="MJXc-Node-44" class="mjx-munderover"><span class="mjx-stack"><span class="mjx-over"><span id="MJXc-Node-48" class="mjx-texatom"><span id="MJXc-Node-49" class="mjx-mrow"><a href="https://www.cnblogs.com/liuzhongkun/p/15684511.html#" data-mce-href="https://www.cnblogs.com/liuzhongkun/p/15684511.html#"><span id="MJXc-Node-50" class="mjx-mrow MathJax_ref"><span id="MJXc-Node-51" class="mjx-mtext"><span class="mjx-char MJXc-TeX-main-R">(???)=x2�+�3=(???)�2

或者使用\ref{yourlabel} 不帶括號引用,如$$a + y^3 \stackrel{\ref{111}}= x^2$$ 顯示為:
<span class="MathJax_Preview"><span id="MathJax-Element-5-Frame" class="mjx-chtml MathJax_CHTML" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;><mi>a</mi><mo>+</mo><msup><mi>y</mi><mn>3</mn></msup><mrow class=&quot;MJX-TeXAtom-REL&quot;><mover><mrow class=&quot;MJX-TeXAtom-OP MJX-fixedlimits&quot;><mo>=</mo></mrow><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MathJax_ref&quot; href=&quot;#&quot;><mtext>???</mtext></mrow></mrow></mover></mrow><msup><mi>x</mi><mn>2</mn></msup></math>"><span id="MJXc-Node-55" class="mjx-math"><span id="MJXc-Node-56" class="mjx-mrow"><span id="MJXc-Node-57" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">a<span id="MJXc-Node-58" class="mjx-mo MJXc-space2"><span class="mjx-char MJXc-TeX-main-R">+<span id="MJXc-Node-59" class="mjx-msubsup MJXc-space2"><span class="mjx-base"><span id="MJXc-Node-60" class="mjx-mi"><span class="mjx-char MJXc-TeX-math-I">y<span class="mjx-sup"><span id="MJXc-Node-61" class="mjx-mn"><span class="mjx-char MJXc-TeX-main-R">3<span id="MJXc-Node-62" class="mjx-texatom MJXc-space3"><span id="MJXc-Node-63" class="mjx-mrow"><span id="MJXc-Node-64" class="mjx-munderover"><span class="mjx-stack"><span class="mjx-over"><span id="MJXc-Node-68" class="mjx-texatom"><span id="MJXc-Node-69" class="mjx-mrow"><a href="https://www.cnblogs.com/liuzhongkun/p/15684511.html#" data-mce-href="https://www.cnblogs.com/liuzhongkun/p/15684511.html#"><span id="MJXc-Node-70" class="mjx-mrow MathJax_ref"><span id="MJXc-Node-71" class="mjx-mtext"><span class="mjx-char MJXc-TeX-main-R">???=x2

======== End