Lang-s-Modus für Fraktursatz: Anpassung bei Linux und mit ReNeo

This commit is contained in:
qwertfisch 2022-02-28 02:12:13 +01:00
parent 3f213a353a
commit 3eb62792dd
1 changed files with 46 additions and 27 deletions

View File

@ -1,36 +1,61 @@
# ſ-Belegung (Fraktursatz)
<!--
Dies ist eine vorläufige Version, die von mir noch gründlich überarbeitet werden wird.
Daher wäre es schön, wenn ihr diesen Artikel erst bearbeitet, wenn er einen akzeptablen Stand hat. Danke!)
-->
## Geschichtliche Entwicklung der Frakturschriften
Seit dem Mittelalter gibt es das lange s (»ſ«), das das runde s ablöste. Ab dem 9. Jahrhundert kam das runde s langsam wieder dazu. Heute ist das lange s praktisch ganz verschwunden.
## Fraktursatz
Im Deutschen stand generell für das heute übliche runde s »ſ«, und »s«, wenn es am Ende eines Wortes oder (selbstständigen) Teilwortes oder am Ende einer Vorsilbe (Sprechsilben!) steht *und* ein Teilwort folgt. Am Ende von assimilierten Silben steht allerdings langes s. Langes s steht auch bei gemurmeltem »e« (z.B. »unſre«).
Und hier noch zwei Sachen, die sich eigentlich von selbst verstehen:
Bei Abkürzungen mit Apostroph richtet sich die s-Schreibung nach der Grundform (»Laſſ das, ich haſſ das« für »Lasse das, ich hasse das«). Das lange s bleibt bei der Silbentrennung erhalten.
Zwei weitere Aspekte, die sich eigentlich von selbst verstehen:
* Bei Abkürzungen mit Apostroph richtet sich die s-Schreibung nach der Grundform (»Laſſ das, ich haſſ das« für »Lasse das, ich hasse das«).
* Das lange s bleibt bei der Silbentrennung erhalten.
## Satz gebrochener Schriften mit Neo
Da das lange s in gebrochener Schrift und natürlich in Antiqua bei der Benutzung des langen s deutlich häufiger vorkommt als das runde s, wurde ergänzend der *Lang-s-Modus* eingeführt. Dieser vertauscht zyklisch s, ſ und ß (d.h. s wird zu ſ, ſ wird zu ß, ß wird zu s), entsprechend ihrer Häufigkeit bei korrektem Satz von gebrochenen Schriften.
Das lange s in gebrochener Schrift und natürlich in Antiqua bei der Benutzung des langen s kommt deutlich häufiger vor als das runde s. Daher wurde ergänzend der *Lang-s-Modus* eingeführt. Dieser vertauscht zyklisch s, ſ und ß (d.h. s wird zu ſ, ſ wird zu ß, ß wird zu s), entsprechend ihrer Häufigkeit bei korrektem Satz von gebrochenen Schriften.
### unter Windows
Im [NeoVars-Treiber](../Einrichtung/neovars.md) ist der Lang-s-Modus bereits von Haus aus enthalten und kann mit der Tastenkombination M3+F11 an- und wieder ausgeschaltet werden.
In [ReNeo](../Einrichtung/reneo.md) ist der Lang-s-Modus in der Download-Version nicht enthalten. Er kann allerdings durch Editieren der Datei `layouts.json` nachgerüstet werden. ReNeo muss dazu im Standalone-Modus arbeiten.
Für die Änderungen in `layouts.json` ist ein Editor und etwas Handarbeit notwendig. Um ein Layout dauerhaft auf Lang-s umzustellen, kann man die drei Definitionen der Buchstaben entsprechend reihum vertauschen. Für das Neo-Layout beispielsweise sucht man in der Datei den Abschnitt, der mit `"name": "Neo"` eingeleitet wird, und findet ein paar Zeilen weiter unter `"map"` folgende Definitionen auf zwei Tasten (gekürzt wiedergegeben):
```
"1A": [{"keysym": "ssharp", "char": "ß"}, {"keysym": "U1E9E", "char": "\u1e9e"}, {"keysym": "U017F", "char": "ſ"}, ... ],
...
"23": [{"keysym": "s", "vk": "VK_KEY_S", "label": "s"}, {"keysym": "S", "vk": "VK_KEY_S", "label": "S"}, ... ],
```
Auf diesen zwei Tasten sind, geordnet nach Ebenen, die Zeichen ß, ẞ, ſ sowie s, S angegeben (kann in anderen Layouts auf drei Tasten verteilt sein). Ein Tausch der Plätze erfolgt, indem jeweils der in `{}` eingeschlossene Teil als Ganzes ausgeschnitten und an passender Stelle eingefügt wird. Es ist darauf zu achten, dass die Kommata als Trennzeichen erhalten bleiben. Am Beispiel Neo, wenn wir nur die Kleinbuchstaben s, ß (ssharp) und ſ (U017F) vertauschen, ergibt sich:
```
"1A": [{"keysym": "s", "vk": "VK_KEY_S", "label": "s"}, {"keysym": "U1E9E", "char": "\u1e9e"}, {"keysym": "ssharp", "char": "ß"}, ... ],
...
"23": [{"keysym": "U017F", "char": "ſ"}, {"keysym": "S", "vk": "VK_KEY_S", "label": "S"}, ... ],
```
Je nach Vorliebe kann man auch die Definitionen für S und ẞ (U1E9E) tauschen, um s und S auf derselben Taste zu behalten.
#### Zusätzliches Layout
Eine andere Möglichkeit ist, die Lang-s-Variante als weiteres Layout zu definieren. Dazu kopiert man zunächst den kompletten Abschnitt des _originalen_ Layouts im Falle von Neo ist dies folgender:
```
{
"name": "Neo",
"dllName": "kbdneo2.dll",
...
"34": [{"keysym": "period", "char": "."}, ...],
"35": [{"keysym": "j", "vk": "VK_KEY_J", "label": "j"}, ... ]
}
},
```
Im einfachsten Fall kopiert man den Abschnitt genau an die Stelle dahinter, dann passen auch die Klammern und Kommata. Unter `name` kann ein beliebiger Name gewählt werden, z.B. „Neo (Lang-s)“. Anschließend ändert man wie oben beschrieben die entsprechenden Tastendefinitionen. In Reneo lässt sich nun mit dieser Konfiguration im laufenden Betrieb über das Systray-Menü zwischen dem normalen und dem neu erstellten Layout (unter dem neuen Namen) umschalten.
#### NeoVars
Im nicht mehr empfohlenen [NeoVars-Treiber](../Einrichtung/neovars.md) ist der Lang-s-Modus bereits von Haus aus enthalten und kann mit der Tastenkombination M3+F11 an- und wieder ausgeschaltet werden.
### unter GNU/Linux
Da es schon ein Glück war, dass die Neo-Belegung überhaupt in X.org aufgenommen wurde, möchten wir nicht noch ein weiteres ''symbol'' einbringen. Deshalb muss der Lang-s-Modus für die xkbmap manuell eingerichtet werden.
Der Lang-s-Modus ist nicht in der offiziellen xkbmap enthalten. Deshalb muss er manuell eingerichtet werden. Dies funktioniert nach demselben Prinzip wie [hier beschrieben](../Einrichtung/Linux.md#erstellen-eines-eigenen-layouts). Das Layout für den Lang-s-Modus ist wie folgt definiert:
#### xkbmap erweitern
1. Eine root-Shell öffnen:
```
su
```
1. neues Symbol an /usr/share/X11/xkb/symbols/de anhängen:
```
echo '
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo-s" {
@ -42,22 +67,16 @@ xkb_symbols "neo-s" {
key <AD11> { [ s, U1E9E, ssharp, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
key <AC06> { [ U17F, S, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] };
};' >> /usr/share/X11/xkb/symbols/de
exit
};
```
#### Lang-s-Modus aktivieren
Die Namen können wie gehabt nach eigenem Wunsch angepasst werden. Das Layout lässt sich entweder als custom-Layout definieren, oder man benutzt bereits Wayland und kann es an passenderer Stelle in `~/.config/xkb/symbols/de` abspeichern (siehe auch [hier](../Einrichtung/Linux.md#anderung-von-xkb-dateien)).
Nun kann die Lang-s-Tastatur mittels setxkbmap aktiviert werden:
```
setxkbmap de neo-s
```
Möchte man allerdings bequem mit einem Klick zwischen Neo und Lang-s-Tastatur (und evtl. weiteren Layouts) wechseln, indem man die Schnittstellen seiner DE nutzt, muss man das symbol dem System bekannt machen:
Sollte man dagegen die Systemdatei `/usr/share/X11/xkb/symbols/de` direkt ändern und möchte das Layout auch über die GUI des Desktops wechseln können, muss man das symbol dem System bekannt machen:
#### rules erweitern
1. /usr/share/X11/xkb/rules/base.xml bzw. (wenn evdev benutzt wird) evdev.xml in einem Editor der Wahl öffnen
1. `/usr/share/X11/xkb/rules/evdev.xml` in einem Editor der Wahl öffnen
1. Nach der Zeichenfolge »neo« suchen
1. Folgendes unterhalb der nächsten »</variant>«-Zeile einfügen:
```