dokumentation/docs/Einrichtung/neovars.md

17 KiB
Raw Blame History

NeoVars (obsolet)

!!! warning "Obsoleter Treiber" NeoVars wurde inzwischen durch die Neuentwicklung ReNeo ersetzt, die um einiges stabiler ist und mehr Möglichkeiten für eigene Layoutvarianten bietet. Es wird empfohlen, NeoVars nicht mehr zu verwenden. Für Altnutzer und aus Archivgründen bleibt der Treiber weiterhin dokumentiert.

Dieser Layout-Treiber für Windows ist in der Autohotkey-Skriptsprache geschrieben und eignet sich vor allen Dingen zum Ausprobieren bzw. für die kurzfristige Nutzung an fremden Rechnern, aber auch zur dauerhaften Installation ohne Administratorrechte. Zum Starten dieses Treibers reicht ein einfacher Doppelklick auf die ».exe«-Datei aus.

Installation und Benutzung

Einfach die Datei neo.exe herunterladen und an einem Ort nach Wahl speichern (bspw. auf dem Desktop oder in dem Order »Eigene Dateien«). Nach dem Starten der Datei ist Neo bereits aktiv. Es werden keine Administrator-Rechte benötigt und das Layout steht auf jedem Rechner sofort zur Verfügung.

Für Bone und NeoQwertz stehen eigene Downloads bereit. Andere Neo-basierte Layouts können in der Konfiguration eingestellt werden. Sie alle werden hier stellvertretend als „Neo“ bezeichnet.

!!! info "Temporäres Deaktivieren" Um kurzzeitig zwischen ursprünglichem Qwertz und Neo zu wechseln, kann mit der Tastenkombination ++Shift+Pause++ das gesamte Skript pausiert bzw. wieder gestartet werden. Gleiches erreicht man auch über einen Doppelklick auf das Neo-Icon im Traybereich (bei der Uhr).

!!! warning "Gewähltes Standardlayout" Beim Start überprüft NeoVars, ob das Standardlayout auf Deutsch (Qwertz) eingestellt ist. Falls nicht, erscheint eine Fehlermeldung und das Programm wird beendet bzw. inaktiv gestartet.

Die eingestellte Sprache von Windows ist dabei unerheblich. Entscheidend ist, dass für die Tastatur (die sogenannte „Standardeingabemethode“) „_Deutsch (Qwertz)_“ gewählt ist. In Windows 10 lässt sich das bspw. manuell in den Einstellungen unter Sprache → Tastatur festlegen, [siehe hier](images/kbdneo_settings3.png).

Manche Virenscanner erkennen NeoVars generell Autohotkey-Skripte fälschlicherweise als Virus bzw. gefährlichen Keylogger. In diesem Fall muss für die neo.exe eine Ausnahme eingerichtet werden.

Automatischer Start

Um Neo nach jeder Anmeldung automatisch zu starten, genügt es, eine Verknüpfung auf die neo.exe-Datei in den Autostart-Ordner zu legen.

!!! note "Am Anmeldebildschirm verfügbar machen" Aus technischen Gründen kann im Anmeldebildschirm leider kein Neo ausgewählt werden. Dies ist nur über den nativen kbdneo-Treiber möglich. Wir empfehlen, sich die Eingabe des Passworts im Qwertz-Layout anzueignen.

Temporäre Dateien und gründliche Deinstallation

Die .exe-Datei entpackt beim Ausführen Bilder für die Tray-Icons und die Bildschirmtastatur in den Ordner %temp%\Neo2. Diese Dateien bitte während der Dateiausführung nicht verschieben oder löschen, ansonsten können Laufzeitfehler auftreten. Bei einer gründlichen Deinstallation sollte zudem noch der Ordner %appdata%\Neo2 gelöscht werden (siehe Konfiguration).

Bildschirmtastatur

Mit der Tastenkombination ++Mod3+F1++ (Mod3, auch M3, ist beim deutschen Tastaturlayout ++CapsLock++ oder die ++raute++-Taste links neben der Entertaste) erhält man eine graphische Zusammenfassung der Neo-Tastatur. Sie erleichtert das Finden eines noch nicht so vertrauten Zeichens und hilft zudem beim Erlernen des Blindschreibens, da der Blick auf den Bildschirm und nicht auf die Tastatur gerichtet ist. Werden während der Anzeige der Tastatur verschiedene Modifier (++Shift++, ++Mod3++, ++Mod4++) oder Kombinationen gedrückt, so springt die Abbildung automatisch in die entsprechende Ebene.

Die Bildschirmtastatur wird direkt über der Taskleiste positioniert und inaktiv gestartet, d.h. der Eingabefokus verbleibt bei der laufenden Applikation. Sie kann durch erneutes Drücken von ++Mod3+F1++ beendet werden; zudem überlagert sie standardmäßig alle anderen Fenster, was mit ++Mod3+F2++ ein- und ausgeschaltet werden kann.

Die Positionierung ist frei wählbar, einfach mit der Maus eine der Tasten halten und verschieben. Möchte man die Größe der Tastatur ändern, kann man den Fensterrand mit ++Mod3+F4++ einblenden und die Ecken mit dem Mauszeiger greifen.

!!! tip "Dynamische Bildschirmtastatur" Die sogenannte „dynamische Bildschirmtastatur“ aktiviert man dagegen mit ++Mod3+F3++. Der Unterschied ist, dass sie nur angezeigt wird, wenn eine tote Taste gedrückt oder eine Compose-Kombination begonnen wird. Das erleichtert die Übersicht, welche Zeichen möglich sind, ohne dass die Bildschirmtastatur beim normalen Tippen (von direkten Zeichen) im Blickfeld ist.

Qwertz auf Ebene 1 und 2 (NeoQwertz)

Als Alternative zu Neo bzw. Bone ist NeoQwertz voreingestellt im Treiber enthalten. Über M3+F6 wechselt man zu NeoQwertz. Dann verhält sich der Treiber wie mit Qwertz auf den Buchstabentasten, belässt dem Nutzer aber zugleich die Vorteile der höheren Neo-Ebenen. Erneutes Drücken von M3+F6 wechselt wieder zum vorigen Layout zurück.

Soll NeoQwertz beim Start aktiv sein, setzt man die Option isQwertz=1 in der Konfigurationsdatei. (Wird neoqwertz.exe genutzt, funktioniert dies auch ohne Konfiguration. Mit isQwertz=0 würde dagegen das eingestellte Layout beim Start verwendet.)

Konfiguration und spezielle Modi

Globale Schalter für Fortgeschrittene

Es besteht die Möglichkeit, beim Starten des AHK-Treibers individuelle Startwarte für die Konfiguration vorzugeben. Dies geschieht über die Konfigurationsdatei Neo2.ini. Eine solche Datei, die alle Werte auf die Standardwerte »ändert«, sähe etwa wie folgt aus und kann hier heruntergeladen werden.

??? example "Neo2.ini" ```ini [Global] ; Im folgenden gilt (soweit nicht anders angegeben) stets Ja = 1, Nein = 0.

; Ein benutzerdefiniertes Layout für den Start des Treibers festlegen
customLayout="-xvlcwkhgfqßuiaeosnrtdyüöäpzbm,.j"

; Mit diesem Schalter ist es möglich, NeoVars direkt mit NeoQwertz zu starten
isQwertz=0

; NumLock ausschalten (nötig bei Notebooks und anderen Tastaturen mit integriertem Fn-Ziffernblock)
NumLockOff=1

; Soll NeoVars beim Start zunächst deaktiviert sein? (Aktivieren mit Shift+Pause)
startSuspended=0

; Soll die Bildschirm-Tastatur beim Programmstart bereits aktiviert sein?
useBST=0

; Soll die dynamische Bildschirm-Tastatur (nur bei Compose sichtbar) beim Programmstart bereits aktiviert sein?
useDBST=0

; Soll die Bildschirmtastatur im Design der ErgoDox dargestellt werden? (0=Normal, 1=ErgoDox)
bstLayout=0

; Soll der Ein-Hand-Modus beim Programmstart bereits aktiviert sein?
einHandNeo=0

; Soll der Lern-Modus beim Programmstart bereits aktiviert sein?
lernModus=0

; Soll der Lang-s-Modus beim Programmstart bereits aktiviert sein?
LangSTastatur=0

; Soll CapsLock auch bei den Ziffern und Satzzeichen wirken?
striktesMod2Lock=0

; Soll die rechte Mod3-Taste eine Position nach links verschoben werden (auf das Qwertz-Ä)?
Mod3RAufAe=0

; Soll beim Einschalten des Mod4-Locks eine Warnmeldung ausgegeben werden?
zeigeLockBox=1

; Sollen Infomeldungen beim Wechsel des Modus ausgegeben werden?
zeigeModusBox=1

; Soll das Aktivieren des Mod-4-Locks über das 3. Numpad-Light angezeigt werden?
UseMod4Light=1

; Die Cokos werden dynamisch aus einer lokalen Kopie des SVN erzeugt
dynamischesCompose=0
```

!!! warning "Bitte beachten" Die Neo2.ini muss in der Textkodierung Windows-1252 (auch „ANSI-Kodierung“ genannt) abgespeichert sein. Mit anderen Kodierungen, z.B. UTF-8, tritt u.U. folgende Fehlermeldung auf: „Falscher Layoutstring, zu wenige Zeichen!“

Diese Datei wird (etwa mit Notepad) in dem richtigen Verzeichnis innerhalb der Anwendungsdaten des aktuellen Nutzers angelegt: %AppData%\Neo2\Neo2.ini (Die %AppData%-Umgebungsvariable wird automatisch aufgelöst.)

Soll neo.exe als portable Version z.B. vom USB-Stick gestartet werden, so kann die Neo2.ini auch im selben Verzeichnis daneben abgelegt werden. In diesem Fall werden nur die Optionen aus dieser .ini-Datei eingelesen, aber nicht aus einer im %AppData%-Ordner.

Übersicht über spezielle Modi

Der AHK-Treiber unterstützt mehrere spezielle Modi, die zur Laufzeit ein- und ausgeschaltet werden können und teilweise auch untereinander kombiniert werden können:

| Tastenkombination                                | Modus | | :----------------: | | | ++Mod3+Esc++ | Zurücksetzen der Tastatur: Alle Modi-Einstellungen werden wieder rückgängig gemacht und die Tastatur wird wieder in den Normalzustand versetzt. | | ++Mod3+F6++ | Qwertz-Belegungsvariante: Die 1. und 2. Ebene wird auf das Qwertz-Layout eingestellt. | | ++Mod3+F9++ | Lern-Modus: Es werden mehrere Tasten deaktiviert, um den Nutzer beim Erlernen der von Neo angeboteten besseren Alternativen zu unterstützen. | | ++Mod3+F10++ | Ein-Hand-Modus: Ermöglicht das bequeme Tippen ausschließlich mit der rechten Hand: Die Buchstaben unter der rechten Hand werden bei gedrückter Leertaste spiegelbildlich zu den Buchstaben unter der linken Hand. Ein Nebeneffekt ist, dass es somit beim Festhalten von Space keine wiederholten Leerzeichen mehr gibt. | | ++Mod3+F11++ | Lang-s-Tastatur: Vertauscht zyklisch die drei Buchstaben s, ß und ſ (langes S), um das Tippen im Fraktursatz zu vereinfachen. Er wird ausführlich auf der eigenen Seite Fraktursatz behandelt. |

Benutzerdefinierte Layouts

Zusätzlich zu Neo oder Bone besteht die Möglichkeit, ein alternatives Layout für die Buchstabentasten zu definieren, ohne den Treiber selbst ändern zu müssen. Dazu wird ein globaler Schalter in der Konfigurationsdatei definiert, der die 33 Standardzeichen des Hauptfelds enthält (a-z, ä, ö, ü, ß, Punkt, Komma und Bindestrich). Dabei entspricht das erste Zeichen der ++eszett++-Taste auf Qwertz, danach die drei Hauptreihen von links nach rechts (obere Reihe, Grundreihe, untere Reihe) ohne die Akzent- oder Modtasten. Hier ein Beispiel für Neo:

[Global]
customLayout="-xvlcwkhgfqßuiaeosnrtdyüöäpzbm,.j"

Ein weiteres Beispiel für Bone:

[Global]
customLayout="-jduaxphlmwßctieobnrsgqfvüäöyz,.k"

Das Layout ist beim Starten des Treibers aktiv (anstatt Neo) und verhält sich entsprechend: die Bildschirmtastatur passt sich dem neuen Layout an, ebenso tote Tasten und Compose-Kombinationen.

Compose und weitere Funktionen

Der NeoVars unterstützt grundsätzlich alle Tote Tasten und Compose-Kombinationen (»Cokos«), die in der Referenz stehen. Zusätzlich gibt es jedoch auch einige nützliche Cokos, die nur im NeoVars zur Verfügung stehen.

Coko Funktion
♫uu Zeichen über den Unicode-Codepoint eingeben
♫dd Unicode-Codepoint eines Zeichens ermitteln
♫uw Wie mit Neo
♫ro/♫RO Römische Zahlen
♫uc Taschenrechner
  • Zeichen über den Unicode-Codepoint eingeben: ♫uu
    Dies ermöglicht die direkte Eingabe eines Unicode-Zeichens über seinen eindeutigen Unicode-Codepoint (anzugeben im Heximalsystem). Beispielsweise hat das Euro-Zeichen »€« den Codepoint U+20AC und kann infolgedessen über ♫uu20ac erzeugt werden. Obwohl diese Eingabemöglichkeit recht umständlich ist (da man sich nur ungern Codepoints merken will), ermöglicht sie doch die Eingabe aller Unicode-Zeichen. Zudem ist diese Funktion sehr hilfreich, um einen vorgefundenen Codepoint in das entsprechende Zeichen zu verwandeln.

  • Unicode-Codepoint eines Zeichens ermitteln: ♫dd
    Mit dieser Funktion kann der Unicode-Codepoint eines Zeichens ermittelt werden. Die Ausgabe erscheint in einem Ballon-TrayTip und wird im Heximalsystem ausgegeben. Beispielsweise ergibt ♫dda die Ausgabe »U+0061«. Auch die höheren Ebenen werden unterstützt, so ergibt ♫ddε den Codepoint »03B5«. Darüber hinaus wird jedoch nicht nur nur der Codepoint eines unmittelbar eingegeben Zeichens ausgegeben, sondern auch, wenn ein selteneres Zeichen über Compose eingegeben wird. So ergibt ♫dd♫ae die Ausgabe »U+00E6«, den Codepoint von æ. Analog wird auch die Decodierung von Zeichen unterstützt, die mit Hilfe der toten Tasten eingegeben wurden.

  • Wie mit Neo: ♫uw
    Vor dem Aufruf muss man das zu suchende Zeichen in der Zwischenablage haben, d.h. es beispielsweise im Browser markiert und mit ++Strg+C++ in die Zwischenablage kopiert haben. Sie zeigt nicht nur die Zusammensetzung der Cokos über die benötigten Zeichen an, sondern schlüsselt auch die dafür notwendigen Tastendrücke auf. Zusätzlich unterscheidet es auch zwischen echten Cocos und unerreichbaren, die aufgrund fehlender Direkteingabe nicht möglich sind. Sollten sich mehrere Zeichen im Clipboard befinden, wird nur für das erste Zeichen die mögliche Belegung ausgegeben.
    Image
    Die Ausgabe für das Zeichen ≙

  • Römische Zahlen: ♫ro
    Der NeoVars ermöglicht die Eingabe römischer Zahlen über ihre dezimale Entsprechung. Beispielsweise ergibt ♫RO7 die Zeichenfolge . Die Zahlen können sowohl über die Zahlenreihe, den Ziffernblock oder den Ziffernblock auf der 4. Ebene eingegeben werden. Der Abschluss der Eingabe über die Leer- oder Enter-Taste ist aus Gründen der Eindeutigkeit zwingend notwendig.

    Die Ausgabe erfolgt je nach gewähltem Präfix als kleine (r) oder große (R) römische Zahl in ASCII- (o) oder Unicode- (O) Darstellung:

    Präfix Beispiel (2009) Beschreibung
    ♫ro mmix Kleine Zahlen, ASCII-Umschrift
    ♫Ro MMIX Große Zahlen, ASCII-Umschrift
    ♫rO ⅿⅿⅰⅹ Kleine Zahlen, Unicode-Ziffern
    ♫RO Große Zahlen, Unicode-Ziffern

    Es werden nur die »kanonischen« Abkürzungen verwendet, d.h. ♫RO1999 ergibt und nicht . Es wird jedoch der volle Zahlenbereich von 1 bis 399.999 unterstützt: Um sinnvoll über die »kanonische« 4000er-Marke zu kommen, werden die Zeichen aus dem archaischen Unicode-Script verwendet. Da es zudem für 1.000 zwei Varianten gibt ( vs. ↀ) und zugleich versucht wurde, einerseits konsistent archaisch zu sein, andererseits das gewohnte aber nicht verschwinden zu lassen, kommt es manchmal zu merkwürdigen Kombinationen (z.B. ♫RO=4900=ↀↁⅭⅯ). Zu guter Letzt folgt hier noch ein Beispiel für die Erzeugung eine unüblich großen römischen Zahl: ♫RO87654=ↇↂↂↂↁↀↀⅮⅭⅬⅠⅤ

  • Taschenrechner: ♫uc
    Dieser integrierte Taschenrechner beherrscht die vier Grundrechnungsarten für Ganzzahl- und Dezimalarithmetik (ohne Potenzen). Infolgedessen muss man für einfache Berechnungen keinen Taschenrechner als extra Applikation bemühen, sondern kann sie »im Textfluss« eingeben. Je nach gewählten Präfix wird die Ausgabe unterschiedlich formatiert:

    • ♫uc{Zahl}{Grundrechenzeichen}{Zahl}{Leertaste/Enter/IstGleich-Zeichen}: Hier wird ausſchließlich das Ergebnis an die Applikation geschickt.
    • ♫UC: Die Eingabe ist genauso wie bei ♫uc, nur dass der ganze Vorgang ein »Echo« bekommt. Es erscheint also die ganze Berechnung in der Applikation und nicht nur das Ergebnis. Das abschließende {Leerzeichen/Enter/IstGleich}-Zeichen wird prinzipiell durch ein IstGleich-Zeichen ersetzt.

    Hierzu ein paar Beispiele:

    Eingabe Ausgabe
    ♫uc10*10= 100
    ♫uc10.5*10.5<enter> 110.250000
    ♫uC10-20<enter> 10-20=-10
    ♫uC1/30000<space> 1/30000=0.000033

    Bislang kann man die eingegebenen Zahlen nicht korrigieren. Macht man einen Fehler, muss man von vorne beginnen und gegebenenfalls (bei ♫CC) das bereits eingegebene Fragment selbst löschen. Abgesehen davon wird bei Dezimalzahlen die Anzahl der Nachkommastellen vom Skript vorgegeben (Standardwert: 6 Stellen).