Ở bài trước Tận dụng Obsidian làm editor chính, mình có nhắc đến "nỗi đau" khi phải gõ tay từng dòng Frontmatter cho mỗi bài viết mới.
Hôm nay mình sẽ chia sẻ chi tiết cách mình xử lý vấn đề này bằng plugin Templater.
🤔 Tại sao cần Templater?
Ban đầu mình nghĩ dùng tính năng Templates có sẵn (Core Plugin) của Obsidian là đủ. Nhưng nó quá đơn giản, chỉ chèn được ngày giờ và một vài thông tin cơ bản.
Nhu cầu của mình thì phức tạp hơn:
- Hỏi tiêu đề ngay khi tạo: Không muốn phải click vào title để sửa.
- Slug tự động: Mình muốn nhập tiêu đề "Cách nấu phở" thì nó phải tự sinh ra slug (bỏ dấu tiếng Việt, thay khoảng trắng...).
- Tên file chuẩn: Tự động đổi tên file thành .
Nên mình lựa chọn cài thêm plugin Templater (với khả năng chạy JavaScript) để có thể tự động hóa quy trình này.
🛠️ Các bước Setup
Bước 1: Cài đặt Plugin
Vào Settings → Community Plugins → Tắt "Restricted mode" → Tìm và cài Templater.
Bước 2: Chuẩn bị folder chứa template
Mình tạo một folder riêng để chứa các file mẫu, ví dụ: .
Vào Settings → Templater, ở mục "Template folder location", trỏ đến folder vừa tạo.
Bước 3: Tạo file Script
Tạo một file mới trong folder template đó, đặt tên là . Copy đoạn code này vào:
Cách script này hoạt động:
- Hỏi tiêu đề: Khi chạy, nó sẽ hiện một popup hỏi bạn "Bài này tên gì?".
- Xử lý Slug: Nó dùng JavaScript để biến "Tiếng Việt có dấu" thành "tieng-viet-khong-dau".
- Tự đổi tên file: File sẽ tự biến thành .
- Đặt trỏ chuột: sẽ đưa con trỏ chuột xuống dưới cùng, sẵn sàng để bạn viết.
🚀 Sử dụng
Quy trình viết bài mới của mình giờ chỉ còn 2 bước:
- Bấm để tạo file mới từ template (phím tắt mình gán cho Templater).
- Nhập tiêu đề và Enter.
Bùm! File được đổi tên, frontmatter được điền, và mình có thể bắt đầu viết ngay lập tức. Mọi thứ diễn ra trong chưa đầy 5 giây.
Bạn có thể áp dụng cách này cho Daily Note, Project Note, hay bất cứ loại nội dung nào có cấu trúc lặp đi lặp lại.
Bài tiếp theo: Sau khi tạo bài viết dễ dàng rồi, làm sao để mình có thể quản lý danh sách hàng chục bài viết?
→ Mời bạn xem tiếp Quản lý danh sách bài Blog với Obsidian Properties