Obsidian Update

Obsidian 1.0.0 ist da – Was ist neu?

Von 0.15.9 auf 1.0.0 alles neu? Überhaupt nicht. Obsidian bleibt grundsolide. Jetzt nur noch schöner und aufgeräumt.

obsidian 1.0.0 1 minimal wk
Obsidian 1.0.0 – Theme “Minimal” (mit “minimal” anderen Farben 🙂 )

Die trauen sich was, wie Entwickler:innen von Obsidian.

Wochenlang dachten alle, nach 0.15.9 kommt 0.16 – wie immer. Von wegen! Plötzlich drehen sie auf und wagen den Riesensprung auf die Version 1.0.0.

Im Vorfeld hat sich schon angekündigt, dass da was Grosses kommt.

Aber da war noch die Rede von “unter der Haube” und vor allem das Design betreffend. Seit einer Woche wissen es jetzt alle: Ja, sieht anders aus, teilweise. Ein bisschen. Nur: so richtig umwälzend ist der Versionssprung dann doch nicht geworden. Wenigstens für die Anwender:innen.

Die Theme-Entwickler:innen hatten wohl ein paar Kopfschmerzen extra 🙂

Update: hier gibt es meinen kompletten Obsidian-Vault für To-Do-Listen mit Kalender-Links zum Herunterladen von GitHub inklusive aller benötigten Plugins, Einstellungen und Templates – selbstverständlich bereits für die aktuelle Obsidian-Version

Das Minimal Theme ist die Referenz

Der Entwickler des Minimal-Themes, Kepano aka Stephan Ango ist seit Kurzem Mitglied im Obsidian-Team. Das aktuelle Standard-Theme stammt auch von ihm. Was ihn hoffentlich nicht daran hindert, weiter fleissig an Minimal dran zu bleiben.

Was das Minimal-Theme besonders macht, ist nicht, dass es besonders schön wäre (ist es natürlich auch, aber wenn es allein danach ginge … siehe alternative Obsidian Themes weiter unten …)

Minimal ist vor allem unglaublich vielfältig, flexibel und anpassbar.

Wer das Theme installiert und mit dem Default nicht einverstanden ist, oder übermütig, oder beides, der kann gleich zwei Community Plugins installieren:

  • Minimal Theme Settings
obsidian 1.0.0 minimal theme settings
Obsidian 1.0.0 – Minimal Theme Settings Plugin
  • Style Settings für Minimal (und andere Themes)
obsidian 1.0.0 style settings plugin
Obsidian 1.0.0 – Style Settings Plugin (für Minimal und andere Themes)

Ich habe (natürlich!) damit schon herumgespielt, wie man an den Screenshots erkennt und behaupte nicht mal, dass das mein letztes Wort ist.

Dafür habe ich ja schon in einem meiner letzten Posts deutlich gemacht, dass Obsidian ein Rabbit Hole ist, wenn man die Veranlagung dazu mitbringt 🙂

Die besten Obsidian Themes (alternativ zu Minimal)

Wer gar keine Lust hat, am “eigenen” Theme zu schrauben, der oder die hat eine grosse Auswahl an Alternativen. Ich zähle hier nur die auf, die mir schon sehr positiv aufgefallen sind.

Obsidian Standard Theme

obsidian 1.0.0 3 standard
Obsidian 1.0.0 – Standard-Theme

Zunächst das Standard-Theme. Das ist für mich die Fallback-Lösung, bevor alle Stricke reissen (und ich “mein” minimales Theme so verbogen habe, dass ich auf stabilen Grund zurückspringen möchte … für einen Moment).

Blue Topaz

obsidian 1.0.0 2 blue topaz
Obsidian 1.0.0 – Theme “Blue Topaz”

Offensichtlich ein bisschen verspielter als die grauen Standards: das Theme “Blue Topaz”. Wie Minimal sowohl im dunklen, als auch im hellen Modus sehenswert. Und: responsive! Das heisst, auch dem Handy sehr gut zu gebrauchen.

Things

obsidian 1.0.0 4 things
Obsidian 1.0.0 – Theme “Things”

Etwas zurückhaltender als Blue Topaz, aber immer noch “kräftiger” in der Anmutung: das Theme Things.

Willemstad

obsidian 1.0.0 5 willemstad
Obsidian 1.0.0 – Theme “Willemstad”

Mit Willemstad noch eine Empfehlung für verspieltere / mutigere Naturen. Auch wenn es in der gezeigten Ansicht nicht offensichtlich ist.

Es lohnt sich grundsätzlich, verschiedene Themes zu installieren und wahlweise zu aktivieren.

Die Unterschiede im Detail stellen sich erst heraus, nachdem man ein Theme eine Weile lang kreuz und quer benutzt hat.

Vorher / Nachher: Mein Obsidian Theme 0.15.9 vs 1.0.0

obsidian 1.0.0 6 luhmann 0.15.9
Obsidian 0.15.9 – Mein vorheriges Theme, nur zum Vergleich

Habe ich schon gesagt, dass mein Update von 0.15.9 auf 1.0.0 vollkommen problemlos über die Bühne ging?

Das habe ich so nicht erwartet.

Im Screenshot oben wage ich noch mal einen Blick zurück. Das aktuelle Obsidian wechselt auch problemlos auf ein altes Theme. Aber man sieht sofort, wo es klemmt:

  • Die Tabs sind neu. Ältere Themes kennen dieses Feature nicht
  • Das Obsidian-Fenster fügt sich jetzt anders ins Betriebssystem
  • Unter Windows ergibt sich ein Mix von “rahmenlos” und “native”

Ich habe deshalb endgültig auf Minimal umgeschaltet, das diese zentralen Neuerungen beherrscht. Einzelne Aspekte meines alten Themes kann ich dann immer noch als CSS-Snippet umziehen. Aber das ist einen eigenen Post wert …

Tabs, Plugins, Templates: Was ändert sich?

Ich hatte mit einigem Durcheinander gerechnet, was Plugins und Templates angeht, vor allem wegen der neuen Tabs.

Nach ein paar Tagen bin ich komplett beruhigt.

Mindestens für mich – bis jetzt – waren die notwendigen Änderungen minimal.

Tabs mit Inline Title machen das Filename Heading Sync Plugin überflüssig

neue settings

Einstellung > Darstellung: Show inline title, Show tab title bar

In der alten Version hatte ich das Plugin Filename Heading Sync installiert, um nicht ewig den Dateinamen und die Hauptüberschrift doppelt eingeben zu müssen.

Das erübrigt sich mit Obsidian 1.0.0.

In den Einstellungen > Darstellung (s. Screenshot oben) gibt es zwei neue Schalter, die vergessen wurden zu übersetzen:

  • Show Inline Title: zeigt den Dateinamen automatisch als # Hauptüberschrift an
  • Show Tab Title Bar: zeigt automatisch in der Kopfzeile der Notiz ihren Dateinamen mit Pfad an

Das entspricht ungefähr der Funktionalität des alten Plugins, aber geht darüber sogar noch hinaus:

  • Die Hauptüberschrift (der Inline Title) ist im Edit-Modus genauso veränderbar wie im Preview-Modus
  • Alternativ kannst Du in der Kopfzeile auf den Dateinamen klicken und ihn dort ändern
  • Oder Du rechtsklickst auf den Tab selbst, wählst im Kontextmenü “umbenennen” und erteilst den neuen Namen in einer Dialogbox (Modal)

Anyway. Wie Du es auch machst. Obsidian synchronisiert automatisch alle fünf (!) Stellen, an denen der Dateiname vorkommt:

  1. als Inline Title (Hauptüberschrift)
  2. im Pfad in der Kopfzeile der Notiz
  3. als Bezeichner für den Tab
  4. als Tooltip, wenn Du mit der Maus über den Tab-Titel fährst
  5. und als Item in der Liste des Datei-Explorers (falls Du den links herausgeklappt hast)

Glaubst Du nicht?

Na, dann zähl’ mal selbst durch, in den Screenshots, eingangs, von den empfohlenen Obsidian Themes.

Achte auf “What is new in v1.0

Zu viel des Guten?

Ja!

Aber die nächsten Updates kommen ja garantiert.

Mein Header Template mit Erstellungsdatum und Änderungsdatum

Als ich irgendwann im August angefangen habe, mich mit Obsidian anzufreunden, war eines meiner ersten Anliegen, wie ich jeder Notiz automatisch

  • ein Erstellungsdatum und
  • ein Änderungsdatum

verpasse. Das hat mich schnell zu den Plugins Templater und Dataview geführt. Aber egal, wie ich mich angestellt habe, das mit dem Änderungsdatum wollte nicht hinhauen!

Der Tiefpunkt war ungefähr erreicht, als mir Dataview weismachen wollte, dass ich diese Datei erst einen Tag später erstellt habe, nachdem sie zuletzt geändert wurde (s. Screenshot).

created after last modified
Das Last_Modified_Date Problem: Erst geändert, dann erstellt, WHAT?

Der Fehler lag natürlich bei mir.

Hätte ich kein Handy benutzt, dort mit Obsidian irgendwas geändert und erst einen Tag später über die Dropbox synchronisiert: niemand hätte was gemerkt! 🙂

Eine Sekunde länger nachgedacht: mein Fehler war, Dataview zu benutzen, um das Erstellungsdatum und das Änderungsdatum einer Notizdatei darzustellen.

Dataview ist ein Super-Plugin zur dynamischen Auswertung Deiner Notizen, mit allen Schikanen. Aber es speichert nichts davon ab!

Das heisst, jedesmal, wenn Du eine Notiz aufrufst, führt Dataview alle Abfragen aus, die Du in der Notiz formuliert hast, und zeigt Dir das Ergebnis, schön als Liste oder wie auch immer.

Du darfst Dataview auch gerne nach file.ctime und file.mtime fragen.

Aber Dataview weiss nie mehr als Dein Betriebssystem. Und das ist nun mal leicht “auszutricksen”, z.B. durch Synchronisation mit Deiner Cloud:

  • Dort liegt z.B. eine Datei von gestern.
  • Die wurde aber hier noch nie gesehen.
  • Also syncen wir die mal von dort hierher.
  • Ah! Neue Datei! sagt z.B. Windows, alles klar!
  • Erstellungsdatum jetzt.
  • Änderungdatum dito.
  • Feddich!

So wird das also nie was und Dataview kann überhaupt nichts dafür.

Besser, wir nehmen Templater.

Das kann zwar auch nur das Betriebssystem fragen, was neu und was geändert wurde. Aber es speichert die abgefragten Werte in Deiner Notiz (jedenfalls das Erstellungdatum betreffend, zum Änderungsdatum kommen wir gleich noch, Moment! 🙂 )

header template
Mein Header Template mit Erstellungsdatum als Frontmatter, Änderungsdatum im Text (das + sagt Templater, bitte dynamisch, nach jeder Änderung)

Ich habe mich also noch mal hingesetzt und mein “Default Template” überarbeitet, das Templater automatisch anwendet, jedesmal, wenn ich eine neue Notiz anlege, z.B. mit dem Tastenkürzel Strg N

Eigentlich wäre der Frontmatter Abschnitt perfekt, um dort das Erstellungsdatum und das Änderungsdatum einzutragen

  • im Vorspann zum eigentlichen Inhalt
  • zwischen den dreifachen Bindestrichen
  • ganz am Anfang der Datei

Für das Erstellungsdatum klappt das auch problemlos. Das Templater-Kommando lautet

<% tp.file.creation_date("DD.MM.YYYY HHmm") %>

Frei übersetzt:

  • schreib’ das heutige Datum
  • im Format Tag.Monat.Jahr StundenMinuten
  • z.B. 22.12.2022 1310
  • und speichere das hier in meiner Notiz

Den üblichen Doppelpunkt zwischen Stunden und Minuten lassen wir weg, weil das YAML nicht mag bzw. das CSS nicht damit klar kommt (dazu noch mal am Schluss).

Jetzt also nur noch eine Sache: das Änderungsdatum.

Das funktioniert mit Templater im Frontmatter-Abschnitt ja leider nicht, weil

  1. trägt Templater dieses Datum ja nur ein einziges Mal ein, beim Erstellen der Datei.
  2. kann ich das Kommando mit einem Pluszeichen zwar dynamisch ausführen, aber ich sehe das Ergebnis nie, weil im Edit-Modus und im Preview-Modus ja nur die Kommandos sichtbar sind
  3. wird im Lese-Modus (Reading Mode) aber überhaupt kein Frontmatter-Block angezeigt (es sei denn, Du änderst die Standardeinstellung, aber wer will diesen hässlichen Metadaten-Vorspann dann schon sehen …)

Also steht das Templater-Kommando für das laufend aktualisierte Änderungsdatum

<%+ tp.file.last_modified_date("DD.MM.YYYY HHmm") %>

jetzt einfach im Text. Direkt nach dem Frontmatter-Block.

WICHTIG: das winzige Pluszeichen nach der Eröffnung <%

Das sorgt für die Dynamik. Sonst wird es wie das Erstellungsdatum nur einmal eingetragen, eben, beim Erstellen der Notiz.

Mein Note Template mit Datum und Uhrzeit im Dateinamen

Irgendwann hatte ich – nebenbei – herausgefunden, dass Templater auch verschachtelte Templates kann. Das musste ich natürlich ausprobieren, für mein Default Template.

In der ersten Zeile wird das Header-Template (siehe oben) einfach integriert, um nicht zu sagen: inkludiert.

Aber Achtung. Es sind mit Absicht 2 Screenshots.

Einer aus der Quellcode-Ansicht und einer aus der Live-Vorschau.

note template edit
Neues Note Template in der Quellcode-Ansicht (Edit Mode)

Im Edit-Modus ist alles klar.

Ich sehe sofort, [[HEADER Template]] ist ein interner Link in doppelt eckigen Klammern.

Und die doppelten Anführungszeichen machen aus dem Ergebnis einfach nur eine vollwertige Zeichenkette.

note template preview
Neues Note Template in der Live-Vorschau (Preview Mode)

Im Vorschau-Modus ist es aber durchaus etwas verworren.

Hier kann ich nur an der Farbe der Zeichenkette HEADER Template erkennen, aufgepasst! womöglich ist das ein Link?!

Ist ja einer.

Ich könnte natürlich alle internen Links unterstreichen lassen, um das deutlicher hervorzuheben …

Aber vielleicht wäre da mal ein Update der Templater-Syntax sinnvoll?!

Egal.

In der zweiten Zeile des Header-Templates sind zwei Templater-Kommandos ineinander verschachtelt.

  • tp.date.now("YYYYMMDDHHmmssSSS") ist wieder das aktuelle Datum. Diesmal alles ohne Trennzeichen, vom Jahr bis zur Mikrosekunde, um wirklich diesen einen, einzigartigen Moment festzuhalten.
  • tp.file.rename(...) nimmt das Ergebnis von tp.date.now(...) und macht daraus den neuen Dateinamen. Benennt also um, was sonst “Untitled” oder “Unbenannt” heissen würde.

Ja und wozu das Ganze?

Na, manchmal fliegen Dir neue Notizen nur so um die Ohren und Du kommst vielleicht gar nicht so schnell dazu, Dir jedesmal einen überzeugenden Dateinamen (Titel) einfallen zu lassen. Dann liegen diese Notizen erst mal in Deinem “NEU” Ordner (oder welchen Du Dir dafür eingestellt hast). Und wann kommst Du dann – irgendwann – wieder dazu, Dich darum zu kümmern?

Standardmässig hast Du dann eine Liste von Dateien vor Dir, die heissen

  • Unbenannt
  • Unbenannt 1
  • Unbenannt 2

Mit meiner Methode hast Du dagegen einen schönen Zahlensalat. Immerhin kannst Du bei Bedarf sehen, wann die Notiz entstanden ist.

Ohne Trennzeichen hat den charmanten Vorteil, dass Du dieses eine Wort schnellstmöglich ausgewählt, gelöscht und überschrieben bekommst.

neue notiz edit

Neue Notiz mit Strg N im Edit Mode (Quellcode Ansicht)

Sei’s d’rum.

Der Screenshot oben zeigt final, was Obsidian mit Templater derzeit aus Strg N macht: eine neue Notiz!

Erst mal im Edit-Modus.

Was das geübte Auge sofort erkennt, anhand:

  1. der Frontmatter-Block wird angezeigt
  2. das Templater-Kommando steht als solches da

Nebenbei ist das der Beweis, dass unser HEADER Template funktioniert 🙂

neue notiz preview

Neue Notiz mit Strg E im Preview Mode (Live Vorschau)

Wenn wir jetzt unerschrocken mit Strg E fortfahren, um in den Vorschau-Modus zu wechseln (Live Preview), sehen wir:

  • das Änderungsdatum funktioniert und
  • und es ist sogar sichtbar
  • im Lese-Modus (Reading) natürlich genauso

Aber wenn es jetzt so schön ist: warum kein Doppelpunkt zwischen Stunden und Minuten, einfach für die absolute Perfektion?

Weil ich beides, das Erstellungs- und das Änderungsdatum perfekt einheitlich darstellen möchte.

Templater ist es egal. Das Kommando kann mit oder ohne Doppelpunkt angegeben werden und das Plugin führt es brav aus. Ausserhalb des Frontmatter-Blocks macht es auch keinen Unterschied.

Nur leider im Frontmatter-Block hat der Doppelpunkt eine Sonderstellung. Er ist das Trennzeichen zwischen Feldname und Feldwert. So will es das YAML-Format, z.B.

---
Irgendwas: "Ein Wert"
Nochwas: 42
---

Unser schönes Änderungsdatum wird von Templater als Zeichenkette ausgegeben. Wäre theoretisch dasselbe wie oben “Ein Wert”.

Nur, so bald “Ein Wert” einen Doppelpunkt enthält, z.B. “Ein: Wert”, wird alles nach dem Doppelpunkt lila dargestellt.

Sieht doch doof aus!

Aber nicht so doof, dass ich jetzt ins CSS steigen und diesen nicht ganz korrekten Style korrigieren will.

Ohne Doppelpunkt geht auch.

Hauptsache: kein Lila im Frontmatter!

… jedenfalls bis zum nächsten Update 🙂

Alle Grüsse!

Links

Obsidian 1.0 – the all new Obsidian

Obsidian Theme “Minimal” Documentation

ist der Autor von generateCLICKS und Inhaber der Web-Agentur whkmedia. Wenn Wolfram sich nicht mit Websites und YouTube-Kanälen beschäftigt, ist er mit seiner Frau im Multivan unterwegs oder auf der Suche nach einem Espresso und einer knusprigen Laugenbrezel.