German (Switzerland) typography rules · de-CH
Deutsch (Schweiz)
German (Switzerland) sets primary quotation marks as «…» and secondary quotation marks as ‹…›. A break in a sentence is written with an en dash (U+2013) with a space on each side; number and date ranges take an en dash (U+2013) with no surrounding spaces. Numbers bind to units such as % ‰ °C with U+00A0.
Run polytypo with German (Switzerland) rules
Edit the text and polytypo typesets it with the de-CH locale, in your browser. The code under the form is the call that produces the result.
The call the form above is making, right now
Other locales, and all the options, are in the full playground.
German (Switzerland) typography at a glance #
| Tag | de-CH |
|---|---|
| Name | German (Switzerland) |
| Primary quotes | « U+00AB left-pointing double angle quotation mark … » U+00BB right-pointing double angle quotation mark |
| Secondary quotes | ‹ U+2039 single left-pointing angle quotation mark … › U+203A single right-pointing angle quotation mark |
| Parenthetical dash | spaced en dash |
| Range dash | unspaced en dash |
| Rules with citations | quotes, dashes, nbsp, hyphen |
| Conformance cases | 61 |
Which locale tags resolve to German (Switzerland)? #
The locale option is resolved exactly, then by declared alias, then by dropping the region once; anything else throws POLYTYPO_UNKNOWN_LOCALE.
| Tag | How it resolves |
|---|---|
de-CH | registered locale |
de_ch | registered locale, after case and separator normalisation |
Which quotation marks does German (Switzerland) use? #
| Primary | « U+00AB left-pointing double angle quotation mark … » U+00BB right-pointing double angle quotation mark — no space inside the marks |
|---|---|
| Secondary | ‹ U+2039 single left-pointing angle quotation mark … › U+203A single right-pointing angle quotation mark — no space inside the marks |
quotes
How are apostrophes set in German (Switzerland)? #
apostrophe
Which dashes does German (Switzerland) use for breaks and ranges? #
Parenthetical break (dash.parenthetical) | an en dash (U+2013) with a space on each side |
|---|---|
Between numbers and dates (dash.range) | an en dash (U+2013) with no surrounding spaces |
The dashes rule reads the parenthetical convention. The ranges rule reads the range convention and is off by default.
dashes
ranges
The ranges rule is off by default; these cases enable it with rules: { ranges: true }.
options: rules: {"ranges": true}
options: rules: {"ranges": true}
How is the ellipsis set in German (Switzerland)? #
An ellipsis keeps its full form after ! and ?; this locale does not abbreviate it there.
ellipsis
How are hyphens handled in German (Switzerland)? #
The hyphen lists are empty for this locale, so the hyphen rule changes nothing.
Where does German (Switzerland) use no-break spaces? #
Characters that take U+00A0 before them (nbsp.beforePunctuation) | none |
|---|---|
Characters that take U+202F before them (nbsp.narrowBeforePunctuation) | none |
Short words after which the space becomes U+00A0, so the word is not left at the end of a line (nbsp.afterShortWords) | none |
Multi-token abbreviations whose internal spaces become U+00A0 (nbsp.abbreviations) | z. B. d. h. u. a. u. U. m. a. W. m. w. H. |
Units and signs bound to the preceding number with U+00A0 (nbsp.beforeUnits) | % ‰ °C km cm mm kg km/h kWh |
Abbreviations bound to the following number with U+00A0 (nbsp.beforeNumber) | Art. Abs. Ziff. Kap. S. |
Abbreviations bound to the following word with U+00A0 (nbsp.beforeWord) | St. |
Symbols bound to the following number with U+00A0 (nbsp.afterSymbols) | § §§ |
Initials (nbsp.initialBinding) | chain — a sequence of two or more adjacent initials is bound; a lone initial next to an ordinary capitalised word is left alone |
spaces
nbsp
How are symbols set in German (Switzerland)? #
symbols
How does German (Switzerland) text behave in text, HTML and Markdown modes? #
Each input is the locale's sample sentence followed by a code run, say("a -- b ..."). text mode sets the whole string as prose, code run included. In html and markdown mode the code run comes back byte for byte; only the prose is set.
How does German (Switzerland) differ from German (Germany)? #
de-CH and de-DE are separate locales. Fields whose values differ:
| Field | de-CH | de-DE |
|---|---|---|
quotes.primary.open | « | „ |
quotes.primary.close | » | “ |
quotes.secondary.open | ‹ | ‚ |
quotes.secondary.close | › | ‘ |
nbsp.abbreviations (entries only in one) | u. U. m. a. W. m. w. H. | u. Ä. z. T. i. d. R. |
nbsp.beforeUnits (entries only in one) | — | € |
nbsp.beforeNumber (entries only in one) | Art. Abs. Ziff. Kap. | Nr. |
The same input through both:
Which sources define German (Switzerland) typography? #
6 citations in spec/locales/de-CH.json, grouped by the rule each one supports. A citation names the authority; the note records what the source does and does not settle.
dashes
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 231, 237, 238: der Gedankenstrich ist der Halbgeviertstrich –; vor und nach dem Gedankenstrich bei Nachträgen und paarigen Einschüben steht ein Leerzeichen www.bk.admin.ch
Rz. 236 hält ausdrücklich fest, dass der Geviertstrich (—) nicht zulässig ist.
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 234: der Gedankenstrich als Begriffszeichen für „bis“ steht ohne Leerzeichen — „16–17 Uhr“, „die Artikel 10–12“, „die Jahre 1939–1945“ www.bk.admin.ch
hyphen
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 223 und 224: der Bindestrich wird als Ergänzungsstrich für einen eingesparten Wortteil verwendet („Papierproduktion und -handel“); mit dem geschützten Ergänzungsstrich wird verhindert, dass der Ergänzungsstrich am Zeilenende auf der oberen Zeile bleibt, während der zugehörige zweite Wortbestandteil auf die nächste Zeile rutscht www.bk.admin.ch
Beleg dafür, dass die drei Listen leer bleiben. Das Deutsche kennt keine geschlossene Liste von Morphemen mit unteilbarem Bindestrich; die Trennung am Bindestrich ist zulässig (Rz. 269–271 behandeln nur sinnentstellende Trennungen). Der einzige belegte Fall eines geschützten Bindestrichs ist der Ergänzungsstrich (Rz. 224), und der ist offen: er betrifft jedes beliebige Zweitglied nach „und -“ und lässt sich als literale Wortliste nicht abbilden.
quotes
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 201–203: zu schreiben sind die Guillemets « » und, für eine Anführung innerhalb einer Anführung, die halben Anführungszeichen ‹ ›; die in Deutschland übliche Schreibung » « ist für amtliche Texte nicht zulässig www.bk.admin.ch
Rz. 202 regelt ausdrücklich nur das Leerzeichen VOR dem Anführungszeichen und NACH dem Schlusszeichen; ein Zwischenraum innerhalb der Guillemets wird weder gefordert noch in einem der Beispiele gesetzt («Zukunft für Schweizer Fahrende»). Daher innerSpace = none.
nbsp
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 251 (Festabstand hält Zusammengehöriges zusammen: Ziffer und Masseinheit, Abkürzung und Ortsname, Teile mehrgliedriger Abkürzungen, Gliederungseinheit und Ziffer — „20 km“, „St. Gallen“, „Artikel 35“), Rz. 438 (mehrgliedrige Abkürzungen: d. h. / z. B. / u. a. / u. U. / m. a. W. / m. w. H.), Rz. 549–550 (Festabstand zwischen Zahl und Einheit), Rz. 554 (Festabstand vor % und ‰) www.bk.admin.ch
initialBinding: "chain" (spec 0.6.0: das Feld hieß zuvor das boolesche bindInitials) ist eine Ableitung, keine wörtliche Weisung: Rz. 251 nennt „eine Abkürzung und ein Ortsname“ (St. Gallen) und Rz. 438 die Teile mehrgliedriger Abkürzungen; die Bindung Initiale–Nachname ist dieselbe Konstruktion, wird aber in den Schreibweisungen nicht ausdrücklich erwähnt. Keine Quelle belegt eine einzelne Initiale ("single"); "chain" folgt derselben Zwei-oder-mehr-Logik wie de-DE/ru. Die Einheitenliste ist bewusst kurz und enthält keine einbuchstabigen Einheitenzeichen. Der Schweizer Verzicht auf ß (ss statt ß, Amtliches Regelwerk § 25 E2) lässt sich im Schema nicht ausdrücken und ist deshalb hier nicht abgebildet.
- Schweizerische Bundeskanzlei, Schreibweisungen, Rz. 251 (Festabstand zwischen einer Gliederungseinheit eines Erlasses und der dazugehörigen Ziffer — Beispiele „Artikel 35“, „S. 17 f.“, „St. Gallen“), Rz. 438 (Entsprechendes gilt für die eingliedrige Abkürzung „St.“ für „Sankt“ in Ortsnamen: „St. Gallen“, „St. Moritz“), Rz. 439 (abschliessende Aufzählung der Begriffszeichen: Ziffern, %, ‰, Gedankenstrich, Schrägstrich, §, Währungszeichen, mathematische Zeichen, Einheitenzeichen), Rz. 440 (zwischen einem Begriffszeichen und der dazugehörigen Zahl steht ein Festabstand), Rz. 727 (in verknapptem Text werden die Gliederungseinheiten abgekürzt: „Kap., Art., Abs., Bst. (falsch: Buchst., lit.), Ziff.“), Rz. 730 (Nummerierung der Gliederungseinheiten) www.bk.admin.ch
Wortlaut im PDF selbst geprüft. Rz. 439 und Rz. 727 entscheiden die Zuordnung von „Art.“: die Aufzählung der Begriffszeichen in Rz. 439 ist abschliessend und enthält „Art.“ nicht, Rz. 727 führt „Art.“ ausdrücklich als Abkürzung einer Gliederungseinheit. „Art.“ gehört damit zu beforeNumber und nicht zu afterSymbols, wo es zuvor stand; die Bindung an die folgende Zahl folgt aus Rz. 251. Aus derselben Liste fehlt nur „Bst.“, weil ihm ein Buchstabe folgt, keine Zahl („Bst. a“). „S.“ ist mit „S. 17 f.“ in Rz. 251 wörtlich belegt. „Nr.“ wurde ersatzlos entfernt: es steht weder in Rz. 439 noch überhaupt im Sachregister (unter N nur „NGO“, „Normen“, „Null“); die einzige Fundstelle ist Rz. 431, wo „Nr. (Nummer), Tarif-Nrn.“ als Beispiel für Deklinationsendungen dient und keine Abstandsregel ausspricht. afterSymbols war damit nachweislich falsch, und für beforeNumber fehlt der Beleg — nach docs/PLAN.md §6.1 zieht das die Streichung nach sich. Zurückkommen kann „Nr.“ mit einer Lesung der DIN 5008. beforeWord enthält nur „St.“: Rz. 438 nennt genau diesen Fall wörtlich, weitere Abkürzung-plus-Wort-Bindungen sind in den Schreibweisungen nicht als geschlossene Liste geregelt („Küssnacht a. R.“ ist eine mehrgliedrige Abkürzung, kein Präfix).