From 2e6a938c0116898cca8f26b710b23a251dff21bb Mon Sep 17 00:00:00 2001 From: Zef Hemel Date: Mon, 8 Jul 2024 08:02:10 +0200 Subject: [PATCH] Linked Tasks documentation --- website/Getting Started.md | 2 +- website/Library/Core.md | 6 ++++-- website/Linked Mentions.md | 4 +++- website/Linked Tasks.md | 14 ++++++++++++++ website/Plugs/Tasks.md | 10 +--------- 5 files changed, 23 insertions(+), 13 deletions(-) create mode 100644 website/Linked Tasks.md diff --git a/website/Getting Started.md b/website/Getting Started.md index c72cefbb..5f97f8d1 100644 --- a/website/Getting Started.md +++ b/website/Getting Started.md @@ -3,7 +3,7 @@ Welcome to the wondrous world of SilverBullet. A world that once you discover an _One of us!_ -Out of the box SilverBullet is fairly minimal in terms of functionality. To give you a good “first run” experience, we recommend you start by importing the [[Library/Core]] library into your space. This will give you a couple of useful pages, slash commands, page templates and widgets such as [[Table of Contents]] and [[Linked Mentions]] to start of with. If you have no idea what those are — don’t worry about it. Just keep going, you’ll get the hang of things. +Out of the box SilverBullet is fairly minimal in terms of functionality. To give you a good “first run” experience, we recommend you start by importing the [[Library/Core]] library into your space. This will give you a couple of useful pages, slash commands, page templates and widgets such as [[Table of Contents]], [[Linked Mentions]] and [[Linked Tasks]] to start of with. If you have no idea what those are — don’t worry about it. Just keep going, you’ll get the hang of things. Just push this button: {[Library: Import|Import Core Library]("!silverbullet.md/Library/Core/")} diff --git a/website/Library/Core.md b/website/Library/Core.md index 0b847daf..55689152 100644 --- a/website/Library/Core.md +++ b/website/Library/Core.md @@ -1,7 +1,9 @@ -This library is highly recommended for everybody to import immediately. It provides a lot of functionality you’ll likely appreciate (and may be used to having out of the box, if you’re longer-term SilverBullet user). +This library is highly recommended for everybody to import immediately. It provides a lot of functionality you’ll likely appreciate. Some examples: -* [[Table of Contents]] and [[Linked Mentions]] +* [[Table of Contents]] +* [[Linked Mentions]] +* [[Linked Tasks]] * All the slash commands you know and love, ranging from `/h1` to `/task` to `/table` to `/code` to `/query` to `/template` to `/today` to... * Some useful general purpose pages such as [[Library/Core/Page/Maintenance]], [[Library/Core/Quick Notes]] and [[Library/Core/Page/Template Index]]. diff --git a/website/Linked Mentions.md b/website/Linked Mentions.md index 3f53cc7e..ef2f32c5 100644 --- a/website/Linked Mentions.md +++ b/website/Linked Mentions.md @@ -1,3 +1,5 @@ On this site you see a section “Linked Mentions” appear along the bottom of every page that has incoming links. 👇🏻 This section lists all pages that contain a _link_ to the current page. This allows for easy navigation, and may help you discover linked concepts through these links. -Linked Mentions are not a feature built into SilverBullet directly, but can easily be added by importing the [[Library/Core|core library]]. \ No newline at end of file +Linked Mentions are not a feature built into SilverBullet directly, but can easily be added by importing the [[Library/Core|core library]]. + +**Implementation:** [[Library/Core/Widget/Linked Mentions]] \ No newline at end of file diff --git a/website/Linked Tasks.md b/website/Linked Tasks.md new file mode 100644 index 00000000..27af9401 --- /dev/null +++ b/website/Linked Tasks.md @@ -0,0 +1,14 @@ +It is a common SilverBullet pattern to give people, groups of people and places dedicated pages so you can easily reference them. It then becomes very convenient to mention these pages elsewhere in your space, and using [[Linked Mentions]] you can easily find what _pages_ link back to that page. + +The equivalent of this idea the context of [[Plugs/Tasks]] is Linked Tasks. These are tasks that _mention_ a particular page. + +# Example workflow +Let’s say you keep notes of 1-on-1 meetings with people. You have a page for each person where you keep notes for each of your sessions. As you talk to person _A_, something comes up that you need to discuss with person _B_. B _also_ has their own page. What you can do is simply create a task on your note page with _A_ (so you don’t have to context switch) that includes a [[Links|link]] to _B_. + +# Example +Below are two tasks that mention this very page (this is not the general pattern, just for demonstration purposes). Note that the not completed task is listed at the top of this page as well in the “Linked Tasks” widget. + +* [ ] [[Linked Tasks]] This is a task +* [x] [[Linked Tasks]] This is a completed task + +**Implementation:** [[Library/Core/Widget/Linked Tasks]] \ No newline at end of file diff --git a/website/Plugs/Tasks.md b/website/Plugs/Tasks.md index 43f7d90b..6b694093 100644 --- a/website/Plugs/Tasks.md +++ b/website/Plugs/Tasks.md @@ -45,12 +45,4 @@ task where page = @page.name ``` ## Rendering -There is a [[!silverbullet.md/template/tasks/task]] template you can use to render tasks nicely rather than using the default table (as demonstrated above). When you use this template, you can even cycle through the states of the task by click on its state _inside_ the rendered query, and it will update the state of the _original_ task automatically (although not yet in reverse) — this works across pages. - -Try it (by clicking on the checkbox inside of the query): - -```query -task where page = @page.name and name = "Remote toggle me" render [[Library/Core/Query/Task]] -``` - -* [ ] Remote toggle me +There is a [[!silverbullet.md/template/tasks/task]] template you can use to render tasks nicely rather than using the default table (as demonstrated above). When you use this template, you can even cycle through the states of the task by click on its state _inside_ the rendered query, and it will update the state of the _original_ task automatically, this works across pages.