Markdown語法筆記

舟清颺發表於2024-04-10

序言

下述筆記為個人結合網上的相關參考資料總結的常用標準markdown語法筆記。

支援工具

  • 記事本

  • Typora(編輯器,不具備管理功能)

  • Obsidian (編輯+管理)

  • Bear

  • Ulysses

  • 石墨文件

  • 幕布

常用語法

自動生成目錄

[TOC]

部分軟體不支援, 例如obsidian

標題

# 文字
關於標題:
# 一級標題, 一般是書籍的章標題或課程的章標題
## 二級標題, 一般是節內容
### 三級標題, 一般是重要知識點內容
四級以上的標題基本上不用, 用加粗或分割線代替, 最大支援六級標題

加粗

**文字**

斜體

*文字*

* 刪除線

```markdown
~~文字~~

列表

(按tab按鍵縮排控制)

有序列表

    1. 文字 
    2. 文字

無序列表

    * 文字
    * 文字

輸入文字內容後,敲擊 Enter 自動補全格式,並進入 下個 有序列表
若需要在同個列表內,增加 換行顯示 的內容 (但不進入下個列表) 敲擊 Shift + Enter ,即可另起一行輸入文字
有序列表會強制按順序顯示, 若需要不嚴格按照順序, 只能採用無序列表

引用(支援嵌入)

>文字
>~~文字嵌入~~

中間沒有空格,同個引用段落內的換行直接敲擊 Enter 即可, 若需新增 第二個獨立引用段落 ,連續敲擊 兩下Enter 即可

引用的縮排&退格

  • 引用的 縮排 和列表 不同
    引用需另起一行,並額外多打一個 > 來完成 縮排
  • 引用的 退格 與列表 相同
    Shift + Tab
    Ctrl + ] (右中括號)

Obsidian 中,如果想讓已經縮排的引用 退回一層, 得使用
Shift + Enter 保持縮排空一個行,
配合方向鍵,
enter 實現退回一層, 在多個 > 之間靈活斷行 並在下一行 根據需要 選擇性補充 >

連結

網頁連結

[標題](連結)
例如:
[檔案引用](./Database/檔案.PDF) 其中 ./ 表示當前目錄, ../表示上級目錄, ../../表示上上級別的目錄
[網頁](https://www.bilibili.com/)

影像連結

影像格式:
	通用: 
		![文字資訊](圖片連結 "提示文字資訊") 
	特殊:
    	![[]]
影像格式,就是在網頁連結前面加個 ! (英文格式的),! 代表 可見
圖片的提示資訊,和網頁連結一樣,寫在 " " 內
[ ] 方括號裡的文字資訊在 Markdown 沒啥實質的作用,只是方便在原始碼模式下,知道這個圖片是什麼,在渲染介面是不會顯示的。有點類似於HTML img標籤 裡的 alt屬性。
![文字資訊](圖片連結 "提示文字資訊")  

![湘湖1](https://z3.ax1x.com/2021/08/06/fuNkXq.jpg "湘湖一角")
補充:
	影像連結可以是本地的,也可以是線上的
	本地影像直接 Ctrl + C 黏貼,Ctrl + V 複製 就可以
	線上影像推薦使用 圖床

	調整影像的大小需要使用 HTML 和 CSS,在 Typora編輯器 中右鍵可以直接縮放圖片 本質是轉成了HTML的格式,最後會有一個 style="zoom: %;" ,這裡數值可以自己修改
	如果有使用 Obsidian 的朋友,線上圖片連結是通用的。不過,因為 Obsidian 是雙向鏈筆記 它的本地圖片格式不太一樣
	![[圖片名]]
	Obsidian 中的圖片是以雙鏈的格式引用在目標筆記中,用 ! 使它可見
	Obsidian的圖片設定大小是用 | 分隔,後面寫寬度數值,單位是px。 設定好寬度,高度會自動等比例調整
	![[圖片名|寬度數值]] - 若想自主調整圖片寬高,則用: - ![[圖片名|寬度數值x高度數值]] - #提示 這裡的 x 是 英文字母x
如果是線上圖床,需要調整圖片大小:
![圖床|寬度數值](連結地址)

程式碼域

行內程式碼

`程式碼`

如何在行內程式碼裡顯示反引號, 首尾各用 兩個反引號`` + 空格` 包裹

程式碼塊

```語言種類
程式碼內容
程式碼內容
程式碼內容
```

任務列表

- [ ] 文字
- [X] 含X表示代表事項已完成

在obsidian中, 第一次按下Ctrl+回車會建立一個無序列表, 再次按下ctrl+回車會變為任務列表

分界線

--- 

註釋

Markdown註釋HMTL 一樣,註釋的內容在 渲染介面 不可見 (部分編輯器可見)

  • 註釋 的格式:

  • <!-- 這裡是註釋的內容 -->

    • 註釋可以是單行,也可以是多行
  • 如果有在使用 Obsidian 的,它的註釋格式是不一樣的

    • %%這是Obsidian的註釋內容%%

表格

| 標題1 | 標題2 | 標題3 |
| ----- | ----- | ----- |
| 內容1 | 4     | 7     |
| 2     | 5     | 8     |
| 3     | 6     | 9     |

其中:
| :----- | ----- | ----- | 左對齊
| :-----: | ----- | ----- | 居中
| -----: | ----- | ----- | 右對齊
  • Markdown的表格,比HTML簡單很多
  • | 是構成表格的主要 框架
  • - 區分 表頭表格主體
  • : 控制 表格內 文字內容對齊方式
  • Typora編輯器中 輸入 Ctrl + T 即可快速插入表格,自由定義樣式
  • 表格中文字內容的換行, 可以在 中間 插入一個 <br> ( 換行標籤 )

下劃線

<u>這是一段加了下劃線的文字</u>

縮排&退格

在列表和引用的書寫過程中,我們需要利用 縮排退格 ,讓文章肌理分明,更具層級

縮排:
	Tab
	Ctrl+[ 
退格:
	Shif+Tab
	Ctrl+]

其它

<br> 換行
Ctrl+. 切換中英文標點

高階用法

變數

網頁連結變數

  • 網頁連結變數 的格式:

  • 首先輸入

    • [顯示文字內容] + [變數名]
    • 變數名可以自己取,沒啥限制,任意字元都可以
  • 在文件任意一個區域,輸入:

    • [變數名] + : + 空格 + 連結地址 (這個空格 不打也沒事)
[百度一下,你就知道][度娘]
[知乎-有問題,就會有答案][知乎]

<!-- 這裡是變數區域 -->
[度娘]: http://www.baidu.com 
[知乎]: https://www.zhihu.com

示範

百度一下,你就知道

知乎-有問題,就會有答案

腳註

  • 腳註 的格式:

  • 在需要腳註的地方,輸入:

    • [^腳註代號] ( 腳註代號會直接顯示在渲染介面 )
    • 腳註代號可以隨便命名,不過推薦使用 數字序號
  • 在其他區域,輸入:

    • [^腳註代號] + : + 空格 + 腳註內容 (這個 空格 不打也沒事)
魯迅原名是什麼[^1] ,浙江哪裡人[^2]

<!-- 這裡是變數區域 -->
[^1]: 周樹人
[^2]: 紹興人

示範

魯迅原名是什麼^1,浙江哪裡人^2

擴充文字格式標記

  • Markdown 想實現更多的文字顯示效果,只能依賴HTML標記實現
  • 個人不是很推薦在 MD 中使用 HTML,不過一些簡單的標記還是可以 輕度使用

鍵盤文字

  • 鍵盤文字的 格式:

  • <kbd>鍵盤文字</kbd>

  • <kbd>Ctrl</kbd> + <kbd>X</kbd>

  • 效果:

    鍵盤文字

  • Ctrl + X

  • 說明:

    鍵盤文字也不一定非得是鍵盤按鍵,也可以作為著重文字突出顯示

    • 效果: 這也算一種著重文字的方式

加粗鍵盤文字

  • 加粗鍵盤文字的格式有兩種

    • <kbd>**鍵盤文字**</kbd>
    • **<kbd>ctrl + x</kbd>**
  • 效果:

鍵盤文字

ctrl + x

放大文字

  • 放大文字 的格式:

  • 這是一段普通文字<big>這是一段放大文字</big>

  • 效果:

    • 這是一段普通文字 這是一段放大文字

放大粗體文字

  • 放大加粗文字的格式有兩種
  1. **<big>這是一段放大粗體文字</big>**
  2. <big>**這是一段放大粗體文字**</big>
  • 效果:

這是一段放大粗體文字

這是一段放大粗體文字

縮小文字

  • 縮小文字 的格式:

  • 這是一段普通文字 <small>這是一段縮小文字</small>

  • 效果:

    這是一段普通文字 這是一段縮小文字

縮小斜體文字

  • 斜體縮小文字 的格式有兩種
  1. <small>*這是一段縮小斜體文字*</small>
  2. *<small>這是一段縮小斜體文字</small>*
  • 效果:

這是一段縮小斜體文字

多彩文字

  • 多彩文字 的格式:

  • <font color=orange>這是一段橘色文字</font>

  • 效果:

  • 這是一段橘色文字

    • color 裡的顏色支援 英文單詞,16進位制rgbrgba

多彩粗體文字

  • 只需要在上面示例的基礎上,加上 加粗識別符號,有兩種格式:
  1. 格式1: **<font color=teal>這是一段加粗的水鴨色文字</font>**
  • 效果: 這是一段加粗的水鴨色文字
  1. 格式2:<font color=teal>**這是一段加粗的水鴨色文字**</font>

這是一段加粗的水鴨色文字

  • 若上述混搭方法的樣式失效 ,可以使用 純HTML標記

    • 格式:<strong style="color:teal;">這是一段加粗的水鴨色文字</strong> (標記略複雜,不是很推薦)
    • 效果:****這是一段加粗的水鴨色文字

多彩斜體文字

  • 跟多彩加粗文字完全一樣,只需把首尾的 ** 換成 * 即可

  • 格式1:*<font color=teal>This is an italic teal text</font>*

    • 效果: *This is an italic teal text
  • 格式2: <font color=teal>*This is an italic teal text*</font>

    • 效果: This is an italic teal text

多彩粗斜體文字

  • 首尾換成 ***

  • 格式1: ***<font color=teal>This is a bold italic teal text</font>***

    • 效果: This is a bold italic teal text
  • 格式2:<font color=teal>***This is a bold italic teal text***</font>

    • 效果: This is a bold italic teal text

注意 多彩文字儘量慎用,Markdown 的核心就是 簡潔精煉,注重 實質內容,而非花哨的 顏色樣式

擴充文字顯示效果

  • 擴充顯示效果既不是原生 Markdown語法 支援的,也非 HTML標記,而是部分編輯器 提供的 額外識別符號,屬於擴充語法,旨在為 Markdown使用者 提供更多樣式選擇
  • 不同編輯器,支援不一樣,這裡以 Typora編輯器 為例

文字高亮

  • 文字高亮 的格式:
  • ==這裡是一段高亮文字==
  • 效果:
  • 這裡是一段高亮文字

上標

  • 用一對 ^ 包裹 (Shift+ 6)

  • 格式: x^2^

  • 效果: x2

  • Obsidian 沒效果的,可以用後面會講的 Latex

  • 或者,也可以使用 HTML標記

    • <sup>這裡是上標內容</sup>
    • X<sup>2</sup>
  • 效果:

  • X2

12.3 下標

  • 用一對 ~ 包裹 (Shift + `)

  • 格式: H~2~O

  • 效果: H2O

  • Obsidian 沒效果的,可以用後面會講的 Latex

  • 或者,也可以使用 HTML標記

    • <sub>這裡是下標內容</sub>
    • H<sub>2</sub>O
  • 效果:

    • H2O

12.4 Emoji 符號

用一對 : 包裹,裡面是 Emoji 符號的 語義化文字 ( Typora編輯器 中,輸入 : 就會帶提示器 )

  • 示例:

    • :smile: :sweat: :cat: :woman_cartwheeling:
  • 效果:

    • 😄 😓 🐱 🤸‍♀️
  • 補充:

    • 不支援上述方式的 MD編輯器或筆記軟體,直接用 輸入法 輸入也是可以的
    • Windows系統 使用者 win + . 就可以輸入 Emoji 了
    • Obsidian 使用者可以安裝第三方外掛來支援 Emoji 的輸入,推薦兩個
  1. Emoji Shortcodes
  2. Emoji Toolbar

跳脫字元

  • Markdown 中,我們 透過 識別符號 改變 文字顯示效果

  • 現在我們希望它不作為識別符號,而是 作為字元本身呈現出來 (不具備改變文字顯示效果的功能,只是一個普通字元)

  • 首先我們可以用前面介紹的 程式碼域 ,因為程式碼模式的顯示效果就是原始碼完全一致

  • 還有一種方法,可以利用跳脫字元,在這些識別符號 前面 加上 反斜線**** ( 反斜線要緊貼在識別符號前面,不能** 有 空格 )

    • 原理:

    • \ 的作用是讓識別符號 轉義 變為一個普通字元,完成這個效果後,反斜線會自動隱藏

    • 隱藏後的反斜線僅在原始碼介面可見,在渲染介面不可見

    • 反斜線只爭對識別符號起作用,其他字元新增 \\ 不會自動隱藏

    • 補充:

    • 如果想給已經被加在識別符號前面,會自動隱藏的 \ 顯示出來,可以在反斜線前面再加一個 * ,用它自己來轉義自己*

      • 示例:****這裡緊跟在識別符號前面的反斜線\\*會被轉義成普通字元顯示出來,不會自動隱藏,且這段檔案會是斜體\*
      • 效果: 這裡緊跟在識別符號前面的 反斜線*會被轉義成普通字元顯示出來,不會自動隱藏,且這段檔案會是斜體*

例1 以普通字元顯示星號

  • 如何讓被一對或多對 \* 號 包裹的文字內容,能夠正常顯示 \* ,且文字不改變格式

    • \*這段文字被一對星號包裹,但不會傾斜\*
    • 效果: *這段文字被一對星號包裹,但不會傾斜*
    • \*\*這段文字被2對星號包裹,但不會加粗\*\*
    • 效果: **這段文字被2對星號包裹,但不會加粗**
    • \*\*\*這段文字被3對星號包裹,但它既不傾斜也不加粗\*\*\*
    • 效果: ***這段文字被3對星號包裹,但它既不傾斜也不加粗***

例2 表格內 單元格中的豎槓

  • 在表格中,使用 | 作為單元格的內容,但不會被識別為表格的結構,不會增加額外的單元格
|表頭1|表頭2|
|-|-|
|這裡的文字被\|分隔|這裡的文字也被\|分隔|
  • 效果:
表頭1 表頭2
:------------------: :--------------------:
這裡的文字被|分隔 這裡的文字也被|分隔

補充 該技巧可用於 Obsidian 表格內 雙鏈的文字修飾

文字修飾:

在 雙鏈[[ ]]內 以 | 引導的內容 - 格式: [[連結的內容|文字修飾]] - 說明: 文字修飾是渲染介面實際顯示的文字,便於更好地融入語境

表格內的格式:

| 前面加上 \ - [[表格內的連結內容\|文字修飾]]

示例:

|                  表頭1                  |                        表頭2                        |
|:---------------------------------------:|:---------------------------------------------------:|
| [[#例2 表格內 單元格中的豎槓\|單元格中的豎槓]] | [[#例3 不會變成程式碼的反引號\|不會變成程式碼的反引號]] |

效果:

| 表頭1 | 表頭2 | |:---------------------------------------😐:---------------------------------------------------😐 | [[#例2 表格內 單元格中的豎槓|單元格中的豎槓]] | [[#例3 不會變成程式碼的反引號|不會變成程式碼的反引號]] |

例3 不會變成程式碼的反引號

使用 轉義符號\ 讓 反引號``` 變成普通字元,不再具有[[#7 1 行內程式碼|行內程式碼]]的識別符號功能

格式:

\這段被反引號包裹的內容不會變成行內程式碼``

效果:

這段被反引號包裹的內容不會變成行內程式碼

例4 連結中的中括號

網頁連結顯示文字內容 中,使用 中括號 [ ]

  • 在顯示文字內容中,在其中一箇中括號前面,加上轉義符號 反斜槓 **
  • 格式:****[連結裡的 \[中括號\] 能被正常顯示](https://www.runoob.com)
  • 效果:[連結裡的 中括號] 能被正常顯示

例5 不是列表的連線符(橫槓)

  • 引用一段話,一般會在換行之後,加上 - 出處
  • 因為 - 是識別符號,會變成一個無序列表

如下所示:

The Web, the Tree, and the String. 寫作之難,在於把網狀的思考,用樹狀結構,體現線上性展開的語句裡。 - 史蒂芬·平克

  • 解決方法:
  • - 前面加上 轉義符號 **

```md

The Web, the Tree, and the String. 寫作之難,在於把網狀的思考,用樹狀結構,體現線上性展開的語句裡。 - 史蒂芬·平克 ```

  • 效果:

The Web, the Tree, and the String. 寫作之難,在於把網狀的思考,用樹狀結構,體現線上性展開的語句裡。 - 史蒂芬·平克

例6 不是標題的 \

# 不被識別為標題識別符號

格式:

\# 這裡的內容不會被識別為標題

效果:

# 這裡的內容不會被識別為標題

例7 不會註釋的 %

Obsidian 中 註釋是前後各兩個 %

使用 轉義符號\,讓 %% 作為普通字元顯示出來,不具備註釋的功能

  • 格式:\%\%這裡的內容可以被顯示喔\%\%
  • 效果: %%這裡的內容可以被顯示喔%%

例8 木有連結的雙鏈

Obsidian 的雙向鏈格式是2個方括號 [[ ]] (雙方),使用 轉義符號\,讓 [ ] 不再具有 雙鏈功能

格式:

\[\[這段文字被雙方包裹,但不是一個雙向鏈\]\]

效果:

[[這段文字被雙方包裹,但不是一個雙向鏈]]

例9 頁連結裡 顯示文字內的 中括號

使用轉義符號\,讓中括號可以作為顯示文字 在[[#5 1 網頁連結|網頁連結]]中顯示出來

格式:

[\[這是一個帶中括號的網頁連結顯示文字,點選會跳轉至百度\]](https://www.baidu.com/)

效果:

[這是一個帶中括號的網頁連結顯示文字,點選會跳轉至百度]

特殊情況 文字修飾的中括號

文字修飾的 中括號[ ] 不需要使用 轉義符號\

示範:

[[#例8 木有連結的雙鏈|[這是一個帶中括號的文字修飾]]]

效果:

[[#例8 木有連結的雙鏈|[這是一個帶中括號的文字修飾]]]

空格&換行&強制刪除

空格

  • 在一些編輯器或者支援MD的筆記軟體裡,無論你打多少個空格,它只會顯示單個 空格 的距離

  • 可以使用 HTML中 空格字元實體 —— &nbsp;

  • 若要新增 多個 空格,就輸入多個 —— &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

  • 格式:

    這裡有&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6個空格分隔

  • 效果:

    這裡有 6個空格分隔

換行

場景1: - 在一些編輯器或者支援MD的筆記軟體裡,無論你打多少個 回車,它只會顯示單個 回車 的空行間距 - 可以使用之前表格裡提到的 <br> 標籤,在 單獨一行 中使用,增加額外的空行間距 - 如果要增加 多個,就輸入 多個 —— <br><br><br><br><br> - #注意 當單獨一行使用 <br> 標籤的時候,如果前後有標題識別符號或者列表識別符號,確保 br元素 前後兩行都是空白行

格式:

這裡是第一段文字

<br><br><br><br><br>     <!-- 這裡插入了5個空行間距 -->

這裡是第二段文字

效果:

這裡是第一段文字

這裡是第二段文字

場景2: - 在列表中也可以插入換行符

- 這是一段無序列表
  <br>     <!-- 插入一個空行間距,需單獨一行,上下不用預留空格 -->
  這是同一段無序列表中,空一行距離顯示的內容
- 這是第二段無序列表

效果:

  • 這是一段無序列表


    這是同一段無序列表中,空一行距離顯示的內容

  • 這是第二段無序列表

  • 補充:

  • 有一些MD編輯器或筆記軟體,嚴格遵循MD的換行規則,你敲一個回車是沒法換行的,必須在 行末2個空格,再按Enter鍵

    • 格式:
    • 這裡是一段想換行的文字空格 空格 Enter 這是換行後的文字

強制刪除

  • 很多編輯器都有英文標點自動補全功能,自動生成一對,游標落在中間 只想刪除前面1個,卻會把 一整對 都刪掉

  • 在多個列表的巢狀中,也許會遇到一些 無法被刪除列表識別符號

  • 解決方法: 使用 Shift + Backspace 即可強制刪除

    • Bcakspace ( 退格鍵 )

嵌入

  • 嵌入都是依賴 HTML標籤 實現的,嵌入的都是線上連結格式
    • 如果是本地的,Obsidian 中音訊是有自帶的可錄製的錄音機外掛的,其他的 音訊、影片 直接複製黏貼就可以了,也可以直接拖拽到OB的筆記介面
    • 其他的媒體檔案在 Obsidian 也和圖片一樣,以雙鏈的格式引用在目標筆記中,使用 ! 使它可見

嵌入音訊

格式:

<audio controls="controls" preload="none" src="音訊連結地址"></audio>

示例:

嵌入影片

  • 格式:
<video width="600" height="420" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
  <source src="movie.webm" type="video/webm">  
</video>
  • 說明:
  • width ( 寬度 ) height ( 高度 ) ,可以自己設定,直接輸入數字即可,單位預設是 px(畫素) 也可以使用 百分比****width=100% 代表水平撐滿整個視窗 height=50% 代表垂直撐滿半個視窗
  • Video標籤 支援的影片格式 :MP4 ogg webm

嵌入頁面

  • 格式: <iframe width=600 height=400 src="頁面連結地址" scrolling="auto" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

  • 效果:

  • iframe標籤 除了嵌入頁面,也可以嵌入線上影片,主流的影片網站都會提供嵌入程式碼
  • 具體可以看這個 iframe影片嵌入教程
  • B站 的影片,得在 // 前面補充 http:
  • 不是所有的 編輯器和筆記軟體 都支援這個
  • 示例:
<iframe width=600 height=400 src="http://player.bilibili.com/player.html?aid=20190823&bvid=BV1yW411s7og&cid=32964980&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
  • 寬高設定和前面的 video 一樣

  • 效果:

Latex 數學公式

主要用於 數學公式化學公式 的書寫

行內公式

  • 格式:

  • $ + 行內公式 + $

  • 示例:

    $x^2 + 2x + 5 + \sqrt x = 0$

    $\ce{CO2 + C -> 2 CO}$

  • $\ce{CO2 + C -> 2 CO}$

  • $\ce{2Mg + O2 ->[燃燒] 2 MgO}$

  • 效果:

    • $x^2 + 2x + 5 + \sqrt x = 0$
    • $e^{i\pi} + 1 = 0$
    • $\ce{CO2 + C -> 2 CO}$
    • $\ce{2Mg + O2 ->[燃燒] 2 MgO}$

公式塊

  • 格式:

  • $$ 公式塊 $$

  • 示例:

% 化學公式
$$
\ce{Zn^2+  <=>[+ 2OH-][+ 2H+]  $\underset{\text{amphoteres Hydroxid}}{\ce{Zn(OH)2 v}}$  <=>[+ 2OH-][+ 2H+]  $\underset{\text{Hydroxozikat}}{\ce{[Zn(OH)4]^2-}}$}
$$
% 麥克斯韋方程組
$$
\begin{array}{lll}
\nabla\times E &=& -\;\frac{\partial{B}}{\partial{t}}   
\ \nabla\times H &=& \frac{\partial{D}}{\partial{t}}+J   
\ \nabla\cdot D &=& \rho
\ \nabla\cdot B &=& 0
\ \end{array}
$$
% 薛定諤方程
$$
i\hbar\frac{\partial \psi}{\partial t} = \frac{-\hbar^2}{2m} \left(\frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2}+\frac{\partial^2}{\partial z^2} \right) \psi + V \psi
$$

% 化學公式
$$
\ce{Zn^2+ <=>[+ 2OH-][+ 2H+] $\underset{\text{amphoteres Hydroxid}}{\ce{Zn(OH)2 v}}$ <=>[+ 2OH-][+ 2H+] $\underset{\text{Hydroxozikat}}{\ce{[Zn(OH)4]^2-}}$}
$$
% 麥克斯韋方程組
$$
\begin{array}{lll}
\nabla\times E &=& -;\frac{\partial{B}}{\partial{t}}
\ \nabla\times H &=& \frac{\partial{D}}{\partial{t}}+J
\ \nabla\cdot D &=& \rho
\ \nabla\cdot B &=& 0
\ \end{array}
$$
% 薛定諤方程
$$
i\hbar\frac{\partial \psi}{\partial t} = \frac{-\hbar^2}{2m} \left(\frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y2}+\frac{\partial2}{\partial z^2} \right) \psi + V \psi
$$

  • 補充:
  • 需要詳細教程的,可戳下方連結
  • Latex詳細教程

Mermaid

  • 一些 MD編輯器筆記軟體 支援透過 Mermaid 及其所提供的 編譯器 來為使用者提供圖表的繪製功能
  • 這裡只提供一些演示的圖表,具體教程可戳下方
  • [[MOC Mermiad 教程 Obsidian版| Mermiad 超級教程 Obsidian版]]

繪製流程圖

原始碼1:

graph TB %% s=start e=end f=fork n=normal s([開始])-->f1{{if條件}}; %% 分支點1 f1--true-->n1[if語句塊]-->e([結束]); f1--false-->f2{{else if條件}}; %% 分支點2 f2--true-->n2[else if語句塊]-->e; f2--false-->n3[else語句塊]-->e;

渲染1:

graph TB
    %% s=start  e=end  f=fork  n=normal

    s([開始])-->f1{{if條件}};

    %% 分支點1
    f1--true-->n1[if語句塊]-->e([結束]);
    f1--false-->f2{{else if條件}};

    %% 分支點2 
    f2--true-->n2[else if語句塊]-->e;
    f2--false-->n3[else語句塊]-->e;

渲染2:

graph TB %% s=start e=end f=fork n=normal s([開始])-->f1{{if條件}}; %% 分支點1 f1--true-->n1[if語句塊]-->e([結束]); f1--false-->f2{{else if條件}}; %% 分支點2 f2--true-->n2[else if語句塊]-->e; f2--false-->n3[else語句塊]-->e;

繪製餅圖

pie title 為什麼總是宅在家裡? "喜歡宅" : 45 "天氣太熱" : 70 "窮" : 500 "關你屁事" : 95

序列圖 (時序圖)

sequenceDiagram %% 自動編號 autonumber %% 定義參與者並取別名,aliases:別名 participant A as Aly participant B as Bob participant C as CofCai %% 便籤說明 Note left of A: 只複習了一部分 Note right of B: 沒複習 Note over A,B: are contacting A->>B: 明天是要考試嗎? B-->>A: 好像是的! %% 顯示並行發生的動作,parallel:平行 %% par [action1] rect rgb(0, 25, 155) par askA C -->> A:你複習好了嗎? and askB C -->> B:你複習好了嗎? and self C ->>C:我還沒準備複習...... end end %% 背景高亮,提供一個有顏色的背景矩形 rect rgb(25, 55, 0) loop 自問/Every min %% <br/>可以換行 C ->> C:我什麼時候<br/>開始複習呢? end end %% 可選擇路徑 rect rgb(153, 83, 60) alt is good A ->> C:複習了一點 else is common B ->> C:我也是 end %% 沒有else時可以提供預設的opt opt Extra response C ->> C:你們怎麼不回答我 end end

甘特圖

gantt title A Gantt Diagram dateFormat YYYY-MM-DD section Section A task :a1, 2014-01-01, 30d Another task :after a1 , 20d section Another Task in sec :2014-01-12 , 12d another task : 24d

類圖

classDiagram Animal <|-- Duck Animal <|-- Fish Animal <|-- Zebra Animal : +int age Animal : +String gender Animal: +isMammal() Animal: +mate() class Duck{ +String beakColor +swim() +quack() } class Fish{ -int sizeInFeet -canEat() } class Zebra{ +bool is_wild +run() }

特殊語法

obsidian

雙鏈

  • [[Obsidian教程#雙鏈|雙鏈]]
![[文章名稱#^具體位置|別名]]

模板佔位符

  • [[Obsidian教程#佔位符|模板佔位符]]
{{title}}
{{date}} 
{{date:YYYY-MM-DD_dd}}
{{time}}
{{time:HH:mm}}

標籤 (Tag)

  • 標籤是 Obsidian 特有的一個功能,標籤可以透過點選喚起快速搜尋 (搜尋包含該標籤的所有筆記)

格式: - # + 標籤名 - #標籤名

關於空格

  • 在一段正文文字的後面新增 Tag, #前面 需要有個空格

    • 空格 + # + 標籤名
  • # 與 標籤名 之間不能有空格,否則就變成 一級標題 了

  • 標籤名的內部不允許使用空格,若想區分標籤中的詞語,可使用以下三種方法:

  1. 駝峰式大小寫: #BlueTopaz
  2. 下劃線: #blue_topaz
  3. 連字元: #blue-topaz

關於數字

  • 標籤內允許使用數字,但不能完全由數字組成

    • #1984
    • #1984Date
    • #da_1984_te
    • #date-1984

標籤的巢狀

在標籤名內,使用 / 斜槓 可以實現標籤的巢狀

格式: - #主標籤/子標籤1 - #主標籤/子標籤2 - #主標籤/子標籤3

巢狀標籤可以像普通標籤一樣透過點選來喚起搜尋,巢狀標籤允許你選擇搜尋的層次。例如: - 搜尋 #主標籤 ,即可找到包含任意一個子標籤的所有筆記 - 返回的結果會是上述的三個例子 - 當你在一個主分類下設定了多個子分類,想找到這個主分類包含的所有內容時,該功能會很實用

能被使用的符號

綜上所述,標籤內能被使用的符號共有三種

  1. _ 下劃線
  2. - 連字元
  3. / 斜槓

如何讓 # 不被識別

可以使用前面提到的轉義符號 \ 反斜槓,與上述的 轉義標題 類似

格式:

\#這裡的內容不會被識別為標籤

效果:

#這裡的內容不會被識別為標籤

注意

避免識別符號的濫用

即使在 Markdown 中,也要儘量避免識別符號的濫用

識別符號的本質是突出顯示,代表重點 - 一篇筆記裡的某段文字,使用各式各樣的的識別符號,會造成重點不清晰

三種標識,慎用

  1. 詞中對單個漢字的標識 1. 臥
  2. 短語中對單個英語單詞的標識 1. get a bang out of
  3. 識別符號的多層巢狀 1. 我感覺快要原地起飛

原因: - 詞義的割裂 - 視覺的混亂 - 不利於搜尋 - 臥==虎==藏==龍== - 搜 臥虎 -- 搜不到 - 搜 藏龍 -- 搜不到

其它

  1. 在段落之間應該空一行, 為了確保相容性

    AAAAAAAAAAAAAAAAA段落一
    
    BBBBBBBBB段落二
    
    CCCCCCCCCCCC段落三
    
  2. Obsidian 在列表首行使用縮排的時候,後續的列表會出現一些問題

  • TabShift + tab 會無法 縮排 退格
  • 可以使用 Ctrl + ]Ctrl + [ 來解決問題
- - 這是第一段就被縮排的列表
    - 這是第二段被再次縮排的列表  <!-- 這裡需按兩次 Ctrl + ] ,Tab鍵是無效的 -->
  - 這是第三段列表  <!-- Ctrl + [ -->