Ein Vorlagenpaket ist eine einzelne Datei mit der
Endung .qtpl. Darin steckt die Gestaltung eines Projekts: Farben, Theme, Stylesheets, Schriften,
Layout, Frames, Plugins, Übersetzungen. Nach dem Import in ein anderes Projekt ist dort alles so
eingestellt wie hier.

Die Vorlagen-Seite: oben „Vorlage erstellen“ mit den zwölf Bausteinen; „Vorlage anwenden“ folgt darunter.
Die zwölf Bausteine
Ein Paket ist nicht eine Einheit, sondern zwölf. Beim Export und beim Import lässt sich jeder Baustein einzeln an- und abwählen:
Inhalt · Farben & Schriften · Community-Theme · CSS-Variablen · Eigenes CSS · Schriftdateien · Statische Dateien · Layout · Eigene Frames · Plugins · Übersetzungen · Theme-Presets.
Zwei davon im Einzelnen:
- Eigenes CSS bringt
custom.scssmit, alle Stylesheets und ihre Ladereihenfolge — bei den Vorlagen von QuartzControl seit 1.1 zwölf Dateien, nach Bereichen geordnet. - Statische Dateien ist alles unter
quartz/staticaußer den Schriften: das Projektbild, die Bilder unterquartz/static/imagesund die Snippets, auf die Boxen zeigen.
Der erste Baustein ist der besondere: Die Notizen selbst. Bei den meisten Vorlagen will man das nicht — eine Vorlage ist eine Gestaltung. Bei einer, die sich selbst erklärt, schon.
Exportieren
Ausgewählt ist zunächst alles, was dieses Projekt hat; was fehlt, taucht gar nicht erst auf. Zu jedem Baustein steht, was er beiträgt — Zahl der Dateien, Größe.
Bei den Übersetzungen gibt es eine zusätzliche Frage: Alle Texte oder Nur deine Änderungen. Für Letzteres braucht es eine Vergleichsbasis, und die entsteht erst, wenn man in QuartzControl einen Text bearbeitet hat. Fehlt sie für eine Sprache, sagt QuartzControl das und empfiehlt „Alle Texte“.
Zwei Obergrenzen sind eingebaut, und beide haben denselben Satz dahinter: Eine Vorlage ist eine Gestaltung, keine Mediathek und keine Sicherung. Sind die statischen Dateien oder der Inhalt zu groß, nennt QuartzControl den Baustein, den man herausnehmen soll.
Importieren
Vorlage wählen… öffnet eine .qtpl-Datei. Daneben lädt Basis-Template die Vorlage, mit der
QuartzControl neue Projekte anlegt — dieselbe wie im Assistenten. Bei ihr ist anfangs nur gewählt,
was das Aussehen macht; Plugins, Layout, Übersetzungen, Presets und die Beispielseiten sind einen
Haken entfernt, damit sie nicht zwischen die eigenen Notizen und Plugins geraten.
Bei Konflikten entscheidet man, wer gewinnt:
- Vorlage gewinnt — was dieses Projekt schon hat, wird durch die Vorlage ersetzt.
- Projekt gewinnt — was dieses Projekt schon hat, bleibt; nur Fehlendes kommt hinzu.
Vor dem Import zeigt QuartzControl eine Vorschau: welcher Baustein was tun würde, wie viele Dateien neu wären, wie viele bestehende ersetzt würden, und was übersprungen wird. Dazu Sätze zu dem, was man sonst erst hinterher bemerkt: welche Plugins eingeschaltet und welche ausgeschaltet werden, welche Schriftdateien mit ersetzten Regeln gehen, und welche CSS-Variablen die Stylesheets der Vorlage lesen, die das Projekt nicht hat — die kommen mit dem Baustein „CSS-Variablen“.
Diese Vorschau ist der Punkt der ganzen Funktion. Sie beantwortet die Frage, die man vor dem Klick hat — was verliere ich? —, bevor etwas passiert. Erst danach wird angewendet, und auch dann wird vorher ein Snapshot angelegt.
Alte und neue Aufteilung der Stylesheets
Bis 1.0 brachten die Vorlagen ihre Stile in bis zu 31 Dateien mit, seit 1.1 in zwölf. Trifft das eine auf das andere, lädt das Projekt danach nicht beide, sondern eine Aufteilung, und die Vorschau sagt welche:
- Vorlage gewinnt — die Stylesheets der Vorlage ersetzen die der anderen Aufteilung in der Ladereihenfolge. Die alten Dateien bleiben im Ordner.
- Projekt gewinnt — das Projekt lädt weiter seine Aufteilung; die Stylesheets der Vorlage kommen in den Ordner, geladen werden sie nicht. Ein Projekt der alten Aufteilung führt Zusammenlegen später zusammen.
Eigene Stylesheets, die zu keiner der beiden Aufteilungen gehören, bleiben in jedem Fall geladen.
Zwischen QuartzControl 1.0 und 1.1
Ein Paket aus 1.1 lässt sich in 1.0.x importieren, aber 1.0.x kennt die neue Aufteilung nicht und lädt die zwölf Stylesheets neben den alten. Wer auf mehreren Rechnern arbeitet, aktualisiert also erst alle und tauscht dann Vorlagen aus. Ein Variablenwert, der nur im hellen Modus gilt, kommt in 1.0.x als Wert für beide Modi an. In ein Projekt, dessen Stile in 1.1 noch nicht umgestellt sind, schreibt der Import ihn so, wie 1.0.x ihn lesen kann.
Was ein Paket nicht darf
Ein .qtpl ist eine Datei, die jemand weitergereicht hat — QuartzControl behandelt sie entsprechend.
Zwei Grenzen merkt man als Nutzer:
In einen verknüpften Content-Ordner schreibt eine Vorlage nichts. Ist content/ eine
Verknüpfung auf einen
Vault, wird der Inhalts-Baustein übersprungen, und QuartzControl sagt
warum: Fremde Notizen in einen eigenen Vault zu schütten wäre nicht rückgängig zu machen.
Kein Baustein schreibt aus dem Projekt hinaus. Jeder Dateiname aus dem Paket wird geprüft, bevor er angefasst wird.
Die mitgelieferte Vorlage
QuartzControl bringt das Basis-Template mit — dieselbe Vorlage, die der Assistent beim Anlegen eines Projekts anbietet und der Button Basis-Template hier lädt. Einmal am Tag sieht QuartzControl auf GitHub nach einer neueren Fassung; von der geladenen und der mitgelieferten nimmt es die neuere. Die Zeile neben den Buttons sagt, welche es war.