屬性讓你能夠整理筆記的相關資訊。屬性包含結構化資料,例如文字、連結、日期、核取方塊和數字。屬性也可以與[[社群外掛程式]]搭配使用,讓這些外掛能夠對你的結構化資料進行實用的操作。 ## 為筆記新增屬性 有幾種方式可以為筆記新增屬性: - 使用**新增檔案屬性**[[命令面板|命令]]。 - 使用 **`Cmd/Ctrl+;`** [[快速鍵|快捷鍵]]。 - 從**更多選項**選單(透過三個點圖示或右鍵點擊分頁來開啟)中選擇**新增檔案屬性**。 - 在檔案的最開頭輸入 `---`。 新增屬性後,檔案頂部會出現一列,包含兩個輸入欄位:屬性的_名稱_和屬性的_值_。 名稱可以自由選擇。Obsidian 提供了幾個預設屬性:`tags`、`cssclasses` 和 `aliases`。 選擇屬性名稱後,你可以為它指定一個值。 ### 屬性類型 除了名稱和值之外,屬性還有一個_類型_。屬性的類型決定了它可以儲存哪種值,以及 Obsidian 如何處理它們。要變更屬性的類型,請點擊屬性名稱旁邊的類型圖示,然後選擇其他選項。你也可以使用[[屬性檢視]]核心外掛來管理屬性類型。 Obsidian 支援以下屬性類型: - **[[#文字]]** - **[[#清單]]** - **[[#數字]]** - **[[#核取方塊]]** - **[[#日期]]** - **[[#日期 & 時間]]** - **[[#標籤]]** 一旦屬性類型被指派給某個屬性名稱,保管庫中所有同名的屬性都會使用相同的類型。 ## 進階用法 ### 搜尋屬性 屬性有其專屬的[[搜尋|搜尋語法]],可以與其他搜尋詞和運算子一起使用。[[搜尋#搜尋屬性|請參閱屬性的搜尋語法]]。 ### 範本 你可以將屬性新增到[[模板]]中。 當你將範本插入目前的筆記時,範本中的所有屬性都會新增到筆記中。Obsidian 也會將筆記中已有的屬性與範本中的屬性進行合併。 ^templates-properties ### 重新命名屬性 你可以在[[屬性檢視|所有屬性檢視]]中右鍵點擊屬性來重新命名它。 ### 顯示模式 你可以前往**[[設定]] → 編輯器 → 文件內屬性**來變更屬性在筆記中的顯示方式。選項如下: - **可見**(預設)— 如果筆記有屬性,則在筆記頂部顯示。 - **隱藏** — 隱藏屬性,仍可透過[[屬性檢視]]在側邊欄中顯示。 - **原始內容** — 以純文字 YAML 格式顯示屬性。 ### CSS 片段 你可以使用 [[CSS 片段]]來變更特定筆記的外觀。 ### 尚未支援 以下功能目前在 Obsidian 中尚未支援: - **巢狀屬性**:若要查看巢狀屬性,建議使用[[檢視與編輯模式#原始碼模式|原始碼模式]]。 - **批次編輯屬性**:若要在[[屬性檢視]]之外進行深入的批次編輯,建議使用 VSCode、腳本和社群外掛等批次編輯工具。 - **屬性中的 Markdown**:這是刻意的限制,因為屬性旨在用於小型、原子化的資訊片段,需要同時方便人類和機器閱讀。 ## 快捷鍵 ### 新增屬性 | 動作 | 快捷鍵 | |---|---| |新增屬性|`Cmd + ;`| ### 在屬性之間瀏覽 當屬性處於焦點狀態時 | 動作 | 快捷鍵 | |---|---| |聚焦下一個屬性|`Down arrow` 或 `Tab`| |聚焦上一個屬性|`Up arrow` 或 `Shift+Tab`| |跳至編輯器|`Alt+Down arrow`| ### 選取屬性 | 動作 | 快捷鍵 | |---|---| |向上擴展選取|`Shift+Up arrow`| |向下擴展選取|`Shift+Down arrow`| |全選|`Cmd+A`| ### 編輯屬性 | 動作 | 快捷鍵 | |---|---| |編輯屬性名稱|`Left arrow`| |編輯屬性值|`Right arrow`| |聚焦屬性|`Escape`| |刪除屬性|`Cmd+Backspace`<br><br>如果有已選取的屬性,會改為刪除選取的項目。| |復原|`Cmd+Z`| |重做|`Cmd+Shift+Z`| ### Vim(進階) | 動作 | 快捷鍵 | |---|---| |向下移動|`j`| |向上移動|`k`| |聚焦名稱|`h`| |聚焦值|`l`| |聚焦值(游標在末尾)|`A`| |聚焦值(游標在開頭)|`i`| |建立新屬性|`o`| ## 屬性格式 屬性以 [YAML](https://yaml.org/) 格式儲存在檔案頂部。YAML 是一種廣泛使用的格式,人類和電腦都容易閱讀。 屬性名稱與值之間以冒號加空格分隔: ```yaml --- name: value --- ``` 雖然每對名稱-值的順序無關緊要,但每個名稱在筆記中必須是唯一的。例如,你不能有多個 `tags` 屬性。 值可以是[[#文字|文字]]、[[#數字|數字]]、[[#核取方塊|核取方塊]]、[[#日期|日期]]、[[#日期 & 時間|日期與時間]]或[[#清單|清單]]。 ### 文字 文字屬性包含單行文字。Markdown 格式不會在文字屬性中轉譯。在文字屬性中使用井字號不會建立標籤。 文字屬性可以包含 URL 和使用 `[[Link]]` 語法的[[內部連結]]。文字屬性中的[[內部連結]]必須用引號包圍。如果你手動在屬性中輸入內部連結,Obsidian 會自動加上引號,但使用範本外掛時請注意自行添加。 ```yaml --- title: A New Hope link: "[[Episode IV]]" url: https://www.example.com --- ``` ### 清單 清單屬性包含多個值。清單中的每個值各佔一行,前面加上連字號 (-) 和空格。 清單值可以包含文字、數字和[[內部連結]]。在清單屬性中使用[[內部連結]]時,請用引號包圍。 ```yaml --- cast: - Mark Hamill - Harrison Ford - Carrie Fisher links: - "[[Link]]" - "[[Link2]]" --- ``` ### 數字 數字類型的屬性必須始終是字面數值,而非含有運算子的表達式。整數和小數皆可使用。 ```yaml --- year: 1977 pie: 3.14 --- ``` ### 核取方塊 核取方塊屬性的值為 `true` 或 `false`。在即時預覽中,會顯示為核取方塊。 ```yaml --- favorite: true reply: false last: # 不確定的值;通常視為 false ``` ### 日期 日期屬性以下列格式儲存: ```yaml --- date: 2020-08-21 --- ``` 日期選取器會遵循你作業系統的預設日期和時間格式。你可以在系統偏好設定中變更: > [!info]- Windows > **[[設定]] → 時間與語言 → 語言與地區 → 地區格式 → 變更格式** > > ![[Windows-OS-DateTime.png#interface]] > [!info]- Mac OS > **系統偏好設定 → 語言與地區 → 日期格式** > > ![[Mac-OS-DateTime.png|450]] 啟用[[每日筆記]]外掛後,日期屬性還會作為指向該日期對應日記的內部連結。 ![[每日筆記#^daily-notes-date]] ### 日期 & 時間 日期與時間屬性同時包含日期和具體時間,以下列格式儲存: ```yaml --- time: 2020-08-21T10:30:00 --- ``` 與[[#日期|日期屬性]]相同,日期和時間選取器會遵循你作業系統的預設格式。你可以在系統偏好設定中變更。 ### 標籤 標籤屬性是一種特殊的屬性類型,專門用於 `tags` 屬性。此屬性類型無法指派給其他屬性。 標籤屬性的格式為清單,每個標籤各佔一行,前面加上連字號 (-) 和空格。 ```yaml --- tags: - journal - personal - draft --- ``` `tags` 屬性是 Obsidian 的[[#預設屬性]]之一。關於在 Obsidian 中使用標籤的更多資訊,請參閱[[標籤]]。 ### JSON 屬性 雖然我們建議使用 YAML 來定義屬性,但你也可以使用 [JSON](https://www.json.org/) 來定義屬性: ```json --- { "tags": ["journal"], "publish": false } --- ``` 請注意,JSON 區塊會被讀取、解譯並以 YAML 格式儲存。 ## 預設屬性 Obsidian 內建了一組預設屬性: | 屬性 | 類型 | 說明 | | ------------ | ---- | ------------------------------------------------------------ | | `tags` | 清單 | 請參閱[[標籤]]。 | | `aliases` | 清單 | 請參閱[[別名]]。 | | `cssclasses` | 清單 | 讓你可以使用 [[CSS 片段]]為個別筆記設定樣式。 | ### Obsidian Publish 的屬性 以下預設屬性可搭配 [[Obsidian Publish 介紹|Obsidian Publish]] 使用: | 屬性 | 說明 | | ------------- | ---------------------------------------------------------------------------------------------------------- | | `publish` | 請參閱[[發佈內容#自動選取要發佈的資料\|自動選取要發佈的資料]]。 | | `permalink` | 請參閱[[永久連結\|永久連結]]。 | | `description` | 請參閱[[社群媒體連結預覽#Description\|Description]]。 | | `image` | 請參閱[[社群媒體連結預覽#Image\|Image]]。 | | `cover` | 請參閱[[社群媒體連結預覽#Image\|Image]]。 | ### 已棄用的屬性 這些屬性在 Obsidian 1.4 中已棄用,應替換為對應的新版屬性。在 Obsidian 1.9 中已不再支援它們作為[[#預設屬性]]。 | 屬性 | 說明 | |-|-| | `tag` | `tags` 的已棄用別名。 | | `alias` | `aliases` 的已棄用別名。 | | `cssclass` | `cssclasses` 的已棄用別名。 | > [!tip] 如果你需要將保管庫中的檔案轉換為[[#預設屬性]]格式,可以使用 [[Markdown 格式轉換器]]來批次變更你的保管庫。