# <svg viewBox="0 0 24 24" width="1em"><path fill="currentColor" d="M2.69,2C3.54,1.95 6.08,3.16 6.13,3.19C4.84,4 3.74,5.09 2.91,6.38C2.09,4.81 1.34,2.91 2,2.25C2.17,2.08 2.4,2 2.69,2M20.84,2.13C21.25,2.08 21.58,2.14 21.78,2.34C22.85,3.42 19.88,8.15 19.38,8.66C18.87,9.16 17.57,8.7 16.5,7.63C15.43,6.55 14.97,5.26 15.47,4.75C15.88,4.34 19.09,2.3 20.84,2.13M12,2.56C13.29,2.56 14.53,2.82 15.66,3.28C15.17,3.6 14.81,3.85 14.69,3.97C13.7,4.96 14.14,6.83 15.72,8.41C16.7,9.38 17.84,9.97 18.78,9.97C19.46,9.97 19.92,9.68 20.16,9.44C20.33,9.27 20.6,8.88 20.91,8.41C21.42,9.59 21.69,10.88 21.69,12.25C21.69,17.61 17.36,21.97 12,21.97C6.64,21.97 2.31,17.61 2.31,12.25C2.31,6.89 6.64,2.56 12,2.56Z" /></svg> BSD-Systeme

!!! warning "Zu überarbeiten"
    Die Informationen auf dieser Seite sind teilweise veraltet oder obsolet. Bitte einmal durchsehen und überarbeiten. Die Links sind bereits angepasst.

## FreeBSD
Von Haus aus bringt FreeBSD Unterstützung für Neo 1.0 in Xorg mit. Für die
Konsole und für Neo2 in X muss also ein Treiber installiert werden.

### Neo auf der Konsole
Für FreeBSD an der Konsole muss die Treiberdatei [neo.kbd](https://git.neo-layout.org/neo/neo-layout/raw/branch/master/unix/freebsd/neo.kbd) mit folgendem Befehl geladen
werden:
```
$ kbdcontrol -l neo.kbd
```

Um das Layout permanent zu verwenden, lohnt es sich als *root*-Benutzer die Datei *neo.kbd* in das
Verzeichnis für Keymaps zu plazieren:
```
# cp neo.kbd /usr/share/syscons/keymaps/
```
Oder unter [VT](https://www.freebsd.org/cgi/man.cgi?query=vt&sektion=4): 
```
# cp neo.kbd /usr/share/vt/keymaps/
```

Trägt man dann noch 
```
keymap="neo"
```
in `/etc/rc.conf` ein, sollte vom nächsten
Boot an immer das richtige Layout verwenden werden.

!!! hint "Hinweis"
    FreeBSD sieht nicht vor dass UTF-8 an der regulären Konsole verwendet wird. Dadurch ist es nicht möglich die meisten Sonderzeichen die Neo erlaubt zu implementerien. Einige ISO-8859 Zeichen, wie Umlaute und Akzentvokale, sind implementiert, aber ein großer Teil von Neo ist hier nicht zugänglich ohne grundlegende Überarbeitung des Konsolenmodus unter FreeBSD.
    
    Dieser Treiber ist also nicht als vollständiger Ersatz gedacht, sondern nur um grundlegende Systemadministration durch Ebene 1–3 möglich zu machen, ohne in X zu wechseln.

!!! bug "Probleme"
    Momentan funktionieren die Modifier noch nicht richtig. Das ehemalige AltGr erzeugt jedoch Mod3, sodass grundlegende Aufgaben der Systemadministration möglich sind.

!!! tip "Hinweis"
    Mit der neuesten Version scheinen die Ebenen 1,2 und 3 vollständig zu funktionieren.

### Neo unter X: Xkb
Es ist möglich die [de-Datei](https://cgit.freedesktop.org/xkeyboard-config/plain/symbols/de) des Linux-Treibers in FreeBSD zu installieren. Der
Standardordner hierfür ist in den meisten Fällen
`/usr/local/share/X11/xkb/symbols` oder `/usr/share/X11/xkb/symbols`.

!!! bug "Probleme"
    Auch hier ergeben sich Probleme mit den Modifiern und bisher scheinen nur Ebene 1 und 2 verfügbar zu sein.

### Neo unter X: Xmodmap
Auch das Laden von [neo_de.xmodmap](https://git.neo-layout.org/neo/neo-layout/raw/branch/master/linux/xmodmap/neo_de.xmodmap) (im Verzeichnis [linux/](https://git.neo-layout.org/neo/neo-layout/src/branch/master/linux)) ist möglich, aber es ergeben sich ähnliche Probleme wie bei Xkb.

## OpenBSD

### Vorbereitung
Ohne eine Installation die UTF-8 verwendet kann es zu schwer zu definieren
Problemen beim Testen der Layouts (unter X) kommen. Ein erster Schritt
sollten also die folgenden Variablen in .profile und .cshrc sein:
```
  export LANG=de_DE.UTF-8
  export LC_ALL=de_DE.UTF-8
```

Ein relativ guter Testkandidat der auf den meisten Systemen verfügbar sein
sollte ist Firefox. In der Addresszeile kann schnell überprüft werden ob
1. 1. überhaupt irgendwelche Zeichen von Ebene 4 und 6 dargestellt werden
können. Xterm dagegen wird kaum hilfreiche Informationen liefern.

### Konsole mit Wscons
Benötigte Dateien: [unix/openbsd](https://git.neo-layout.org/neo/neo-layout/src/branch/master/unix/openbsd/)

Der OpenBSD-Kernel verwendet das aus NetBSD stammende wscons. Um ein neues
Layout verwenden zu können muss es erst im Quellcode eingebunden werden.
Dabei wird zunächst ein Layout in wsksymdef.h definiert und dann werden die
vordefinierten Zeichen den passenden Tasten des Layouts in wskbdmap_mfii.c 
zugeordnet. 

In wskbdmap_mfii.c werden dabei (ähnlich wie unter FreeBSD) Tasten mit 
Normal, Shifted, AltGr und Shifted-AltGr definiert. Eine Umlegung von AltGr
ermöglicht also die Verwendung von bis zu 4 Ebenen, wobei es sinnvoll scheint,
entweder 4 und 5 oder 5 und 6 auszuschließen.

!!! bug "Aktueller Stand"
    Noch unvollständig. Wer Zeit hat, kann gerne helfen.

### Neo unter X: Xkb
Theoretisch sollte die [de-Datei](https://cgit.freedesktop.org/xkeyboard-config/plain/symbols/de) auch unter OpenBSD funktioneren, da Xorg
auch hier Standard ist. Abgesehen von Fehlermeldungen für dead_psili 
dead_dasia, die durch NoSymbol ersetzt werden können, funktioniert die
xkb-Datei momentan nicht (r1774).

!!! bug "Aktueller Stand"
    Funktioniert nicht. Wer Zeit hat, kann gerne helfen.

### Neo unter X: Xmodmap
Benötigte Dateien: [neo_de.xmodmap](https://git.neo-layout.org/neo/neo-layout/src/branch/master/linux/xmodmap/neo_de.xmodmap)

Unter Umständen muss Zeile 79 auskommentiert werden, der Fehler liess sich
nicht konsistent rekonstruieren. Ebenen 1–6 sind theoretisch alle verwendbar
wenn 79 nicht auskommentiert wurde, aber mehrere Zeichen, besonders die
griechischen Zeichen, führen zu interessanten Fehlern.

!!! hint "Aktueller Stand"
    Funktioniert größtenteils. Wer Zeit hat, kann gerne helfen.

## NetBSD

### Konsole mit wscons

NetBSD bietet die Möglichkeit, mapfiles zu laden. Der Syntax dieser Files ist der für xmodmap sehr ählich, die Tasten sind aber anders durchnummeriert als unter X.  

!!! seealso "Siehe auch"
    `/etc/wscons.conf`  
    <http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/src/sys/dev/pckbport/wskbdmap_mfii.c>

### Neo unter X: Xkb

Neo 2 ist seit Ende Mai 2010 in NetBSD-current enthalten, siehe auch [Neo unter Linux einrichten](/Benutzerhandbuch/Linux).
