Deutsch
Über dieses Handbuch

Dieses Handbuch gehört zum Quartz-Plugin quartz-layout-box. Und es ist mit ihm gebaut: Diese Box hier ist eine Layout-Box.

Sie kommt aus einer Markdown-Datei, nicht aus der Konfiguration — welcher Weg wann der bessere ist, steht in Der Schnipsel.

7.1 – byLang

options:
  file: sidebar-note.md
  title: Über dieses Handbuch
  collapsible: true
  byLang:
    en:
      file: sidebar-note.en.md
      title: About this handbook

Das ist der Eintrag, aus dem die Box unten links auf dieser Website entsteht — einmal deutsch als Grundeinstellung, einmal englisch unter byLang.

Woher die Sprache kommt

Gelesen wird das Frontmatter-Feld lang der Seite — dasselbe Feld, aus dem Quartz sein <html lang> erzeugt. Hat die Seite keines, gilt configuration.locale.

Das Plugin braucht dafür kein weiteres Plugin. Ob lang von Hand geschrieben ist oder von einem Mehrsprachen-Plugin gesetzt wird, ist ihm gleich.

Wie die Schlüssel verglichen werden

Groß- und Kleinschreibung spielt keine Rolle. Gesucht wird in zwei Anläufen:

  1. exakt — en-US findet den Eintrag en-US
  2. über den vorderen Teil — en-US findet auch den Eintrag en

Findet sich nichts, gelten die Grundoptionen. Ohne Warnung, denn das ist der Normalfall: Eine zweisprachige Site nennt unter byLang nur die zweite Sprache, und alle Seiten der ersten laufen still in die Grundeinstellung.

Was sich je Sprache ändern lässt

Alles außer zwei Dingen: dir und frontmatterKey.

Das eine ist ein Installationspfad, das andere der Name, unter dem eine Seite die Box anspricht — beides ist keine Frage der Sprache. Würde der Schlüssel je Sprache wechseln, müsste eine übersetzte Seite ein anderes Feld schreiben als ihr Original.

Verboten heißt hier: nicht vorgesehen

Der TypeScript-Typ lässt die beiden unter byLang nicht zu — eine quartz.config.yaml wird aber nicht typgeprüft. Ein byLang.en.dir wirkt deshalb, gemessen. Bei frontmatterKey trägt der Satz auch praktisch: Der Schlüssel wird gelesen, bevor byLang überhaupt gilt.

Die Rangfolge, vollständig

  1. Frontmatter der Seite
  2. byLang der Seitensprache
  3. Grundoptionen

Jede Ebene überschreibt nur, was sie nennt. Der Eintrag oben behält unter en also collapsible: true aus den Grundoptionen — dort steht nur, was anders ist.

Mit einer Ausnahme: html und file stehen nicht nebeneinander, sondern gegeneinander. Ein html auf einer schwächeren Ebene schlägt jedes file auf einer stärkeren, siehe den Kasten in 6.1.