I den förra delen av mitt GTD system så har jag kort beskrivit hur mitt system ser ut. Idag tänkte jag skriva lite om hur jag har byggt upp det.
Jag använder Obsidian för att föra anteckningar, skriva ner todos och allmänt hålla koll på allt.
Följande har jag satt upp:
Obsidian - https://obsidian.md/ - Installerat på min Mac, min iPad och min iPhone finns med mig överallt. Den finns för Windos och Linux också men det använder jag inte.
För att synka mina anteckningar använder jag iCloud synk då jag är i en helt och hållet mac miljö fungerar det bra för mig. Jag har även haft en testinstallation med en synk på en windows maskin via GitHub. Det fungerar hyffsat bra men är en lite mer avancerad uppsättning då man behöver lite extra tools för att få den synken att fungera.
Men tillbaka till min uppsättning. Jag kör Obsidian med ett antal plugins. Jag kommer inte att gå igenom installation och uppsättning av obsidian det finns det många guider av på nätet redan.
Jag har ett par plugins som är installerade:
-
Dataview - För att skapa min dashboard använder jag Dataview
-
Periodic Notes - Den här använder jag för att automatisera min dagliga sida. Jag har även justerat "vecko" delen i den här pluginen för att automatiskt skapa en mall för min blogg med frontmatter delen klar.
De här två pluginerna är faktiskt de enda jag använder just nu.
Min mall för min dagliga sida ser ut så här:
2023-02-11(dagens datum skapas automatisk som titel)
📒 Anteckningar
- [ø:: me]Få in dagens möten i Obsidian
📥 Nytt
- [ø::]
Ett par saker som man kan notera.
-
Jag har en daglig task som säger "Få in dagens möten i Obsidian". Det beror på att jag inte har automatiserat den här biten än, det ligger på min "Att göra lista". Så den här blir lite manuell men då jag i alla fall går igenom dagen det första jag gör så är det inte ett problem.
-
Vad är det där konstiga inom klamrar? Det är min variant av tags. Obsidian har automatisk stöd för # men jag blev insprirerad av Steve Boyd här: How I Use Daily Notes In Obsidian [Wonkish] - by Stowe Boyd. Det gör inte min loggning enklare och det kan till och med komplicera kodningen något men jag gillar hur det ser ut. 🙂
Så här ser det ut när den är genererad("läsvy" i Obsidian):
Koden för min dashboard ser ut så här:
#### 📆 Med slutdatum
```dataviewjs
dv.taskList(dv.pages().file.tasks .where(t => !t.completed).where(t => t.due).sort(t => t.due, "asc"), false)
```
####❗ Idag
```dataviewjs
dv.taskList(dv.pages().file.tasks .where(t => !t.completed) .where(t => t.text.includes("[ø:: idag]")), false)
```
#### 🤝 Mina att göra
```dataview
TASK
FROM !"Config"
WHERE !completed
WHERE ø = "me"
WHERE !due
SORT file.cday desc
```
#### 🤝 Följa upp
```dataview
TASK
FROM !"Config"
WHERE !completed
WHERE ø != "idag"
WHERE ø != "Framtid"
WHERE ø != "Projekt"
WHERE ø != ""
WHERE !due
GROUP BY ø
```
#### 👉 Projekt
```dataview
TASK
FROM !"Config"
WHERE !completed
WHERE ø = "Projekt"
```
#### 👉 Framtid
```dataview
TASK
FROM !"Config"
WHERE !completed
WHERE ø = "Framtid"
```
Det är två olika stilar av kod här. Den första heter Dataviewjs och är en Dataview i Javascriptformat. Den andra är "ren" Dataview och den som har skrivit någon form av SQL kommer att känna igen sig. Dataview JS ger lite mer formateringsmöjligheter men för dessa enkla tasklistor så fungerar egentligen Dataview alldeles utmärkt.
Så låt oss gå igenom de olika kodbitarna:
📆 Med slutdatum
```dataviewjs
dv.taskList(dv.pages().file.tasks .where(t => !t.completed).where(t => t.due).sort(t => t.due, "asc"), false)
```
Den översta biten är ren markdown och en ikon som bara ger en rubrik
📆 Med slutdatum
sen kommer biten som berättar att det är en kod snutt och vilken typ, dataviewjs i det här fallet.
´´´dataviewjs
Den här skapar en lista med uppgifter -> dv.taskList tar alla uppgifter -> file.task i alla sidor -> dv.pages som inte är klara -> where(t => !t.completed) som har en duetag -> where(t => t.due) sorterar i stigande ordning efter förfallodatum -> sort(t => t.due, "asc")
Och så här blir resultatet:
Den andra koddelen gör samma sak som den första men den letar inte efter due datum utan efter taggen för "idag" -> where(t => t.text.includes("[ø:: idag]").
De sista delarna är Dataview endast och kanske lite enklare att förstå, vi tar den första och bryter ner den:
#### 🤝 Mina att göra
```dataview
TASK
FROM !"Config"
WHERE !completedW
HERE ø = "me"
WHERE !due
SORT file.cday desc
```
Först markdown med rubrik:
#### 🤝 Mina att göra
sen information om att det kommer kod: ` ```dataview
TASK -> berättar att den ska ta alla uppgifter "[ ]" FROM !"config" -> Titta inte i Config foldern, här har jag mina templates som innhåller mina mallar och jag vill inte få med de tomma taskarna jag har där. WHERE !completed -> som inte är klarmarkerade WHERE ø = "me" -> Där ø = "me"(min tagg) är med i tasken WHERE !due -> Där jag inte har ett förfallodatum. Den har jag ju högst upp och jag vill inte se den på två ställen. SORT file.cday desc -> Sortera i fallande ordning efter skapat datum på filen där tasken är skapad, cday är datumet då filen är skapad. Det innebär att jag får den äldsta tasken längst ner. Ändra desc -> asc för att få den äldsta överst.
De andra dataview kodbitarna är bara olika varianter av ovanstående kod. Jag har försökt att inte få med så många dubletter av mina olika tasks. Därav att de resterande har en del "ta inte med" vilket representeras av ett utropstecken.
Det är hela mitt system.
Det ger mig en daglig sida som jag skapar genom "Periodic Notes" pluginen. En mall för mina bloggposter genom att justera Vecko delen i "Periodic Notes" En dashboard som alltid är öppen intill min dagliga sida och visar mig min att göra lätt till hands.
Så här kan en daglig sida se ut:
När man skriver i obsidian så har den en editeringsvy och då ser man taggarna. När man har "visa" vyn påslagen så ser man inte kod och taggar på det här sättet. Jag använder mig av deras "Live preview" vilket innebär att jag kan "kryssa" i min uppgifter som klara och jag kan editera sidan samtidigt.
Det ger mig en lätt överblick över vad som kommer och vad jag har att göra och jag kan samtidigt för anteckningar under mina möten och skriva in eventuella uppgifter som jag har fått med mig från dessa.
Så fort jag skapar en ny uppgift och taggar den "korrekt" så kommer den att dyka upp på min dashboard och jag behöver inte var orolig för att tappa bort den.