如何自动建立前一个记录的链接

遇到的问题

我的日记是以日期作为文件名,但是经常有空缺。使用Templater和日记模板时,能够借助<% tp.date.now(“YYYY年MM月DD日”, -1, tp.file.title, “YYYY年MM月DD日”) %>自动新建前一天的日记链接。日记不连续的情况下,能不能自动新建最近一笔记录的日记链接?

预期的效果

使用模板新建日记时,能够自动建立一个链接,该链接指向最临近日期的日记记录。

已尝试的解决方案

没有头绪,不知道咋弄。

如果你安装了Dataview插件会方便一点

<%*
let dv = DataviewAPI
let file = dv.pages(`"目录"`).filter(p=>moment(p.file.name).isValid() && p.file.name!=moment().format('YYYY年MM月DD日')).sort(p=>p.file.name,'desc')[0]
let lastDate = file.file.name
-%>
[[<%lastDate%>]]

如果你只是想快速查看前一个后一个文件的话,我推荐使用【增强编辑】插件的这两个命令

多谢两位的指点,我都试试

稍作修改就能完美实现了,谢谢lazyloong!

在filter部分需要修改为:
filter(p => moment(p.file.name, ‘YYYY年MM月DD日’).isValid() && moment(p.file.name, ‘YYYY年MM月DD日’).format(‘YYYY年MM月DD日’) != moment().format(‘YYYY年MM月DD日’))

用dataviewjs的话,可以在新建文件时自动添加前一个文件的链接,更方便一些。但是不能自动添加后一个文件的链接。

【增强编辑】插件可以快速查看前一个、后一个文件,就是使用上稍微麻烦一点。

多谢啦!

噢对,这种格式不能直接识别,因为我是用YYYY-MM-DD的标题格式,就忘了这回事

菜鸡一个,请问下,为什么没效果啊?

额,也许你可以看看 templater 的用法,你这样子用是把插件的使用方法弄错了。

文件夹那里改成 dv.pages(`"03 Day Planners"`)

let dv = DataviewAPI
let file = dv.pages(`"03 Day Planners"`).find(p=>monent(p.file.name,'YYYY-MM-DD').isValid() && p.file.name == moment().format('YYYY-MM-DD'))
let lastDate = file.file.name
<%lastDate%>