Obsidian v1.4提供了視覺化YAML欄位(特性)的輸入介面,大幅簡化了筆記Metadata(詮釋資料、後設資料、元数据)的输入。然而我們仍可數量不少的筆記是沒有寫上Metadata的內容的,有什麼方法可以快速的在筆記最上方加上這一些特性呢?
- 寫個程式去處理。這留待好心人來幫忙 🙏
- 用Linter在儲存時自動插入缺少的特性
- 使用TagMany外掛依據資料夾添加標籤,可惜只能對
tags
欄位增加標籤 - 使用File Cooker外掛添加特性,也有刪除的功能
- 使用Tag Wrangler對標籤重新命名
- 自行撰寫Templater腳本,登錄為Hotkeys並綁定熱鍵以快速輸入
1. 產生預設的筆記特性(Linter)
- Linter有很多功能,主要是維持筆記內容的格式正確性
- 在Linter的【Insert YAML attributes】輸入好
欄位:
,一行一個欄位,在筆記儲存檔時會自動添加到筆記開頭的YAML區
-
YAML Timestamp可以設定自動更新建檔時間和修改時間
-
建檔時間是直接讀取作業系統的建檔日期,有時建檔時間會變動(例如在新電腦取回雲端硬碟的檔案時,建檔日期是下載當時的時間),建議勾選【Force Date Createsd Key Value Retentkion】以保留第一次讀到的檔案時間
-
若要某個筆記停用Linter的功能:
disabled rules: - all
2. 將內文的筆記標籤移至YAML區(Linter)
Obsidian的標籤有兩大類:
- 筆記(頁面)標籤:針對整個筆記檔案的標籤,寫在YAML區或本文區獨立一行(必須
#
開頭) - 行內標籤:加在區塊後方的標籤(與區塊文字之間必須至少有一個空白)
勾選Linter的【Move all tags to YAML frontmatter of the document】可以自動將寫在本文區的獨立標籤添加到YAML區。
Body tag operation可以指定本文區的標籤在複製到YAML區後要如何變更:
- Nothing: 留在原處不做任何處理
- Remove hashtag: 刪除井號(
#
) - Remove whole tag: 移除整個標籤
3. 為資料夾內所有筆記添加標籤(TagMany)
在安裝了TagMany外掛後,檔案瀏覽器的資料夾右鍵選單會有【Tag all notes in this folder】
- 輸入標籤,以逗點分隔
- 可勾選【Include subfolders】是否包含子資料夾
[!WARNING]+ 警告
tags的值必須是陣列或清單格式
即:tags: [tag1, tag2, tag3]
或tags:
- tag1
- tag2
- tag3
4. 批量更新特性(File Cooker)
File Cooker可以由系統剪貼簿、搜尋結果或Dataview區塊等,查詢出符合的結果後,再執行指定操作。
和特性相關的是命令 【Edit Properties in clipboard files...】,操作步驟如下:
- 將要操作的檔名複製到剪貼簿
- 按 Ctrl/Cmd+P 搜尋cook→執行【Edit Properties in clipboard files...】
- 在彈出的對話窗輸入YAML欄位與它的值。當欄位值以
-
減號開頭時則刪除欄位
test
test-columns
▼ 將test.md、test-columns.md的tags欄位添加標籤#test1
、#test2
並刪除#test3
5. Tag Wrangler
- 功用:重新命名、搜尋等功能。
- 操作方法:在標籤側邊欄找到要操作的標籤後,用右鍵功能表彈出功能表
6. 自訂選單(Templater Hotkeys)
為了方便Dataview的查詢,建議資料量少且只會有一個值的的Property盡量使用文字格式,而不要使用清單格式。
透過Templater Hotkey可以快速的彈出選單並添加或更新需要的特性。
▼ 筆記類型選單
<%*
// Hotkey: Alt+T
let aTypes = ["P 專案筆記", "S 彙總筆記", "R 閱讀筆記", "A 原子筆記", "I Index"];
let type = await tp.system.suggester(aTypes, aTypes, false, "選擇筆記類型");
if (!type) return;
type = type.substring(2);
await app.fileManager.processFrontMatter(tp.config.active_file, (fm) => {
fm["type"] = type;
});
-%>
細節參考:Obs127-用Templater Hotkeys簡化Obsidian自動化腳本
7. 相關鏈接
✅ 影片:Properties (Obsidian 1.4)! 視覺化YAML編輯,讓Frontmatter可用性又向上一階
✅ Linter GitHub
✅ 說明文件: Linter
✅ TagMany GitHub
✅ File Cooker GitHub
✅ Tag Wrangler GitHub
8. 教學影片
##
您可能也會有興趣的類似文章
- [Obs#57] YAML區tags標籤自動補全的3種方法 (2則留言, 2021/10/23)
- Obs132|標籤使用彙總與TagFolder:多重+階層式標籤資料夾,更妥善使用#標籤的技巧 (0則留言, 2023/06/24)
- Obs127|用Templater Hotkeys簡化Obsidian自動化腳本,詳解4個腳本範例 (0則留言, 2023/05/05)
- [OBS#32] templater: 無限擴充可能的第三方樣板外掛 (0則留言, 2021/04/10)
- [Obs#56] 快速新增靈感/閃念筆記(Fleeting Note)的3種方法 (0則留言, 2021/10/10)
- Obsidian 1.0新手教學—打造個人知識管理利器,專屬的第二大腦 (2022年) (4則留言, 2022/10/22)
- Obs126|Obsidian 2023/04 7個新外掛介紹與評析 (0則留言, 2023/04/29)
- [Obs#58] 快速開啟常用筆記的方法 (0則留言, 2021/10/23)
- Obs128|Obsidian Dataview進度條與YAML欄位快速輸入的方法 (0則留言, 2023/05/11)
- Obs130|用Dataviewjs將Dataview表格產生成Markdown格式,並複製到剪貼簿的技巧 (2則留言, 2023/05/20)
- [Obs#12] Obsidian v0.8.4~v0.8.9的新增功能 (0則留言, 2020/09/06)
- Obs134|用Dataviewjs製作簡單的建檔統計圖-使用Charts外掛 (0則留言, 2023/08/13)
- [Obs#71] 新手適用的多功能模板外掛:From Template (0則留言, 2022/02/19)
- Obs135|解鎖簡易Dataview查詢:驚人的SQL技巧,使用Query All The Things(QATT)外掛 (0則留言, 2023/08/19)
- [Obs#35] Buttons外掛開啟筆記自動化操作契機 (0則留言, 2021/04/23)