ivan-lednev / obsidian-task-archiver

Archive completed tasks in your Obsidian vault (plus other org-mode-like features)
MIT License
109 stars 12 forks source link

Feature Request: Per page settings using frontmatter. #29

Open YousufSSyed opened 1 year ago

YousufSSyed commented 1 year ago

I'd like to be able to have different settings for each page, and they can set using frontmatter fields. Every setting in the plugin could be its own field. Each note could also specific a specific page name to move completed items to.

ivan-lednev commented 1 year ago

Hello, @YousufSSyed

There is now a 'rules' mechanism in the settings, which is potentially more flexible than front-matter. E.g. if you wanted to move tasks from specific files to specific pages, you would have to copy over the front-matter config to each of those files, whereas there could be just one rule covering all those files in one place.

Which settings would you like to be specific to a file?

YousufSSyed commented 1 year ago

I was thinking something like this: on a page, rules could be written in for if a task is a certain kind, then task archiver would read it and apply them.

---
Archiver-Rule1-When: -
Archiver-Rule1-Then: Folder/Incomplete
---

So if a task is marked with a -, it gets moved to a page called "Incomplete" in a folder called "Folder." There could also be frontmatter to overwrite the plugin settings. Like maybe you want some pages to archive tasks with a heading, and some not to.

tonyxiao commented 1 year ago

@ivan-lednev can rules be used to handle that I want some files to archive tasks to a separate file (long running areas) while other file (short running projects) to archive tasks within the same file?

YousufSSyed commented 1 year ago

It doesn't seem like rules can do that right now, they're applied to all pages only. So I made this feature request: Feature Request: allow users to make lists of pages that can be whitelisted or blacklisted from rules.

That's also what I'm trying to propose here, where you can write your own rules for specific pages with frontmatter.

ivan-lednev commented 1 year ago

@tonyxiao, since 0.23.0 you can define a list of path patterns that get handled by each rule.

YousufSSyed commented 1 year ago

Looks good, does it completely support regex, or at least to the degree it can?

I should note that it seems like rules that are on top take priority. So one that's one top that applies to all pages is used rather than one below for specific pages. I opened this FR: https://github.com/ivan-lednev/obsidian-task-archiver/issues/43

I also opened this one: allow collapsing of when then statements.