如何用Templater插件打造Obsidian智能笔记模板?超实用教程来了! 🚀
2026-02-05 05:34:56作者:明树来
Templater是Obsidian中一款强大的模板插件,它能帮你通过变量、函数和JavaScript代码自动生成笔记内容,轻松实现笔记创作自动化。无论是日常日记、项目管理还是文献笔记,Templater都能让你的Obsidian效率翻倍!
📥 三步完成Templater插件安装
1. 社区插件市场一键安装
打开Obsidian → 进入设置 → 点击社区插件 → 搜索Templater → 点击安装按钮。安装完成后记得重启Obsidian,确保插件正常加载。
2. 基础设置快速配置
安装后在设置面板找到Templater配置项,重点设置:
- 模板文件夹位置:指定存放模板文件的目录
- 语法高亮:建议开启桌面端语法高亮,提升编辑体验
- 自动跳转光标:启用后插入模板时会自动定位到
tp.file.cursor标记位置
3. 验证安装是否成功
创建新笔记并插入<% tp.date.now() %>命令,若自动生成当前日期则表示安装成功 ✅
📝 Templater核心语法入门
命令基础格式
所有Templater命令都需要包含在<%和%>标签中,基础格式如下:
<% tp.模块名.函数名(参数) %>
例如显示当前日期:<% tp.date.now() %>
常用数据类型规范
- 字符串:必须用引号包裹,如
"YYYY-MM-DD" - 数字:直接书写,如
7或-1 - 布尔值:
true或false(全小写)
实战示例:创建日记模板
---
创建时间: <% tp.file.creation_date() %>
修改时间: <% tp.file.last_modified_date("dddd Do MMMM YYYY HH:mm:ss") %>
---
<< [[<% tp.date.now("YYYY-MM-DD", -1) %>]] | [[<% tp.date.now("YYYY-MM-DD", 1) %>]] >>
# <% tp.file.title %>
今日名言: <% tp.web.daily_quote() %>
<% tp.file.cursor() %> <!-- 光标自动定位到这里 -->
🛠️ 强大的内部函数模块
Templater将功能分为多个实用模块,以下是最常用的核心模块:
日期处理模块:tp.date
- 生成当前日期:
tp.date.now("YYYY-MM-DD")(默认格式) - 日期偏移计算:
tp.date.now("YYYY-MM-DD", 7)(7天后) - 自定义格式:
tp.date.now("dddd, MMMM Do YYYY")(星期四, 四月 7th 2025)
文件操作模块:tp.file
- 获取文件名:
tp.file.title - 创建日期:
tp.file.creation_date() - 最后修改时间:
tp.file.last_modified_date() - 光标定位:
tp.file.cursor()
前置元数据模块:tp.frontmatter
用于读取和修改笔记的YAML前置元数据:
<% tp.frontmatter.tag = "daily" %> <!-- 设置标签 -->
<% tp.frontmatter.author = "Your Name" %> <!-- 添加作者信息 -->
系统交互模块:tp.system
- 用户输入:
tp.system.prompt("请输入标题") - 多选菜单:
tp.system.suggester(["选项1", "选项2"], ["值1", "值2"])
🚀 高级玩法:自定义用户函数
脚本用户函数
通过JavaScript文件创建自定义功能,存放路径需在设置中指定:
- 创建
my_functions.js文件 - 编写函数:
module.exports = (tp) => {
return {
greet: () => `Hello, ${tp.file.title}!`
}
}
- 在模板中调用:
<% tp.user.greet() %>
系统命令函数
直接调用系统命令(需谨慎使用):
- 在设置中添加系统命令函数
- 命名为
timestamp,命令内容:date +%s - 在模板中使用:
<% tp.user.timestamp() %>
⚠️ 安全提示:仅从可信来源运行系统命令,避免执行未知脚本
🔧 开发者安装指南
如果你想从源码构建或贡献代码:
- 克隆仓库
git clone https://gitcode.com/gh_mirrors/te/Templater
- 安装依赖
cd Templater && npm install
- 开发模式运行
npm run dev
核心功能模块源码位于src/core/functions/internal_functions/目录下,包含日期、文件、系统等模块的实现代码。
💡 实用技巧与最佳实践
模板组织建议
- 建立
Templates文件夹分类存放不同类型模板 - 使用一致的命名规范,如
Daily-Note.md、Book-Notes.md - 为常用模板设置快捷键(在Templater设置中配置)
常用模板片段库
- 文献笔记:自动提取PDF元数据
<% tp.web.download_pdf_metadata() %> - 项目管理:任务状态统计
<% tp.user.count_tasks() %> - 周回顾:自动汇总每日笔记内容
<% tp.user.weekly_summary() %>
常见问题解决
- 命令不执行:检查标签是否完整闭合
<% %> - 日期格式错误:参考Moment.js格式文档
- 函数不存在:确认模块名和函数名拼写是否正确
📚 学习资源与社区支持
官方文档位于项目的docs/目录下,包含完整的函数参考和使用示例。遇到问题时,可以:
- 查看
docs/src/internal-functions/overview.md了解内置模块 - 参考
docs/src/user-functions/overview.md学习自定义函数开发 - 加入Obsidian社区论坛的Templater讨论区交流经验
Templater插件为Obsidian带来了无限可能,从简单的日期插入到复杂的自动化工作流,都能轻松实现。立即开始创建你的第一个智能模板,体验笔记自动化的乐趣吧! 🎉
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0194- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00
项目优选
收起
deepin linux kernel
C
27
12
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
602
4.04 K
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
Ascend Extension for PyTorch
Python
442
531
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
112
170
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.46 K
825
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
922
770
暂无简介
Dart
847
204
React Native鸿蒙化仓库
JavaScript
321
375
openGauss kernel ~ openGauss is an open source relational database management system
C++
174
249