I created an account just to send a like here and begging for it → +1
+1 please
I don’t understand why people continue to add +1. +1 does nothing, it’s by no means a tool to track how many people want this feature.
Just upvote this feature request clicking on the heart of the first post.
Solution: (at least partially)
Templater plugin.
in the setting, “Folder Template” section, click “Enable Folder Templates”,
for each folder, you can specify a template for notes created in that folder.
for PARA, assign a template to the INBOX folder.
for Zettelkasten style, assign a template to that folder.
Since this is the one true feature request, what will it take to get this seemingly highly desired and fairly simple feature?
Use case or problem
When I create a new note, I would like that note to have a template auto-populated.
For me, I’d just add the simplest template possible.
---
created: {{date}}
---
Proposed solution
Just add this:
Current workaround (optional)
“Ya know…I think Templater does that.” Yes I know. But Templater is super intimidating to me and for everyone who doesn’t know how to code.
It’s like taking Iron Man to a knife fight…a bit much.
So we’re stuck having to manually insert a template into every note we make. The pain point is real and hurts the future-proofing aspect of knowledge management because, as many of us know, we can’t trust that the file system’s creation date will always remain accurate.
In this writer’s opinion, this simple feature can go a long way towards allowing Obsidian to be more inviting to newer users.
I propose new default property called note id that would be set automatically by Obsidian and it would be read‑only. Note id could be used implicitly in dynamic inline queries in Dynamic views. This would be useful in case of these inline queries are written outside Obsidian or if external programs are used to produce queries for Dynamic views. In the context of external programs it should be obvious that notes are identified using their id. Dynamic views could use comments to automatically store current note names. That way the code is easy to read but the syntax itself contains only id. Some algorithm could be used to produce proper variable names for note id. The combination of that variable naming algorithm, note ids and comments would make the dynamic views inline code highly compatible with external coding tools.
It would also make Properties second-nature to use.
Also looking for this. After more than 3 years and so many requests for this feature, there must be a good reason they’re not adding it?
This could be a new setting in Settings → Files and links that determines which template is used for new notes—however similar feature is already implemented by the Unique note creator core plugin which is not enabled by default. It is not obvious what templates are useful and should Obsidian hard code file metadata to the YAML block or not. I think using Unique note creator is a good long term solution since this approach separates notes created from links.
The topic is broad because file templates includes the YAML block. More useful topic would be to discuss about default properties for new notes. That topic is separate from file templates used to create notes. See also Make file metadata and properties separate concepts
Do either of these solutions allow me to specify a template globally instead of folder by folder?|
Can I make it automatic for every new note instead of with a command from the command palate?
Related question, is there any equivalent of something like .gitignore to either prevent my templates from uploading to Obsidian Publish or to just make them invisible to anyone browsing the site?
The template you use in Unique note creator will be available globally regardless the folder you are currently.
No unfortunately this is exactly the feature of this topic, unique note creator implements its own command that is isolated from other note creation. However you can possibly use Shell commands community plugin to
- monitor file creation events https://publish.obsidian.md/shellcommands/Events/File+created
- pass a template to
stdin
https://publish.obsidian.md/shellcommands/Variables/Pass+variables+to+stdin - output to current file https://publish.obsidian.md/shellcommands/Output+handling/Output+channels
Example:
echo {{clipboard}} >> MyNote.md <-- existing note
No unfortunately this is exactly the feature of this topic, unique note creator implements its own command that is isolated from other note creation. However you can possibly use Shell commands community plugin to
Sorry, thought it was possible with plugins.
There must be some reason they don’t add this feature? It seems like so many people want it.
I think the reason is very obvious. File content and properties along file metadata are all tightly connected and Obsidian allows direct YAML editing which implies customizable content. The ability to customize YAML without any restrictions in source mode implies that properties are not currently designed to hold file metadata values. That is very significant thing in Obsidian since YAML could be used to implement regular file metadata such as file created or file modified. Because Obsidian already implemented YAML as a way to users add customizable content, some other technical framework is needed to implement direct access to traditional document metadata. This could be implemented by special YAML variable names such as _obsidian-file-metadata-file-created
and then hide these special YAML variables in the editing mode.
I can’t believe this isn’t a core feature of Obsidian yet. Yes, Templater can achieve this, but:
- It takes a second for the new note template to get applied, and it can lag Obsidian for a moment for me.
- Sometimes, when I create a new note via a URL scheme, the new note template doesn’t get applied (must be a bug or a race condition).
- When splitting notes via the core Note composer plugin, Templater doesn’t apply the new note template.
- Such a basic function should be included in the core plugin. I’m of the belief that your core note-taking system must work in restricted mode. A core implementation is always preferable to third-party solutions, which tend to be less reliable and future-proof.
It should also be said that there ought to be a way to set different templates for different folders.
+1 from December 2024; this must be a simple core feature.
You can use Unique note creator if you want to create notes with templates when pressing ⌘N or Ctrl+N (needs hotkeys reconfiguration in the settings). As described in the original post creating new notes is not only restricted to pressing ⌘N however this approach means you can access note creation with template at times when you wish and then use regular blank note creation when creating notes via links etc. The problem is that there is no clear definition of global properties in Obsidian, hence we don’t have any idea of a global template for every note. If global properties were introduced users would create customised note templates using these global properties. The funny thing is that users with large existing vaults would have to reformat their notes according to new global properties.
+1
This is as basic a feature as it gets. It should be part of the core functionality.
This feature is already implemented in the ‘Daily Note’ core plugin. So it should be trivial to implement it for the templates core plugin. Can we have this soon please?
currently I’m using quick add for this basically you make a template in quick add with these setting
and you can assign a short cut to it and it will first ask you fro name of the note and after it will ask you to chose the folder where you want the note to get created you can disable the folder option so it makes it inside the vault folder and you can change the empty template to what you like ( I guess you can even make it not to ask for name )
Actually the templater community plugin (iirc that is the name of the plugin) does have the option to add a template to almost all forms of note creation (whether it be through Ctrl+N or click link to a nonexistent note); this is more apt that using unique note creator plugin for this purpose. However the problen is that the templater plugin sometimes has hiccups - it sometimes added Jan 1 1970 as the creation date in my templates for example.