Use case or problem
Filesystem creation times (FCTs) are very fickle, and by extension, Obsidian’s features and community plug-ins which rely on it: Sorting by created time, calendars by created time, automated note trackers, graph view timelapses, and even Obsidian Sync is affected from what I’ve read. You have to be very careful with the original markdown files to ensure its creation timestamps remain untouched, else you risk ruining features which rely on these. There have already been a good few recorded cases of improper handling of files which led to wiped creation timestamps, and with each one came a justifiably frustrated user. “Use cut and paste next time”, they said… but that won’t bring back what was already lost, nor can it fully prevent another occurrence.
There’s just really no simple way of preserving creation dates without resorting to some niche system command or obscure third party program, and that can drive away the average user in the long-term should they plan to switch platforms or devices. And there are even operating systems that don’t bother with creation dates at all (Linux and Android), so it won’t become apparent to users on those platforms as to whether or not their creation times got wiped until they open Obsidian.
Proposed solution
I propose a native YAML front matter key that overrides creation time throughout Obsidian, as well as {{cdate}}
and {{ctime}}
template inserts that follow a fixed time format. This would save Obsidian from relying only on FCTs for features and functions that revolve around a file’s creation time.
Refer to this for time formats.
---
#creation: (date value) (time value)
creation: YYYYMMDD HHmmssSSS
creation: {{cdate}} {{ctime}}
---