forked from neo/neo-layout
neovars: templates for Neo2.ini and custom.ahk with user-defined compose defs.
- Adds dist/ folder with templates Neo2.ini and custom.ahk
- New user-definable function LoadUserdefinedCompose() called on startup:
-- allows user to add neovars-specific compose commands
-- see examples in custom.ahk template for CM.., CD.., CRC.., and
CF.. usage (as introduced with commit 97f4584533
)
This commit is contained in:
parent
8076baeec0
commit
fc1cdcf4f6
|
@ -0,0 +1,119 @@
|
|||
; Neovars Konfiguration
|
||||
;
|
||||
; Durch Ändern der Werte können Anpassungen vorgenommen werden.
|
||||
; Dabei gilt stets 0 = Nein, 1 = Ja (soweit nicht anders angegeben).
|
||||
;
|
||||
; Hinweise:
|
||||
; - Um von Neovars gelesen zu werden, muss diese Datei in "ANSI"-Kodierung
|
||||
; unter "%APPDATA%\Neo2\Neo2.ini" (bzw. für die portable Version unter
|
||||
; "<Verzeichnis der Neo2-exe>\Neo2-portable\Neo2.ini") abgespeichert werden.
|
||||
; - Änderungen werden erst nach Neustart des Skripes wirksam
|
||||
; (bei aktiviertem Neovars über Mod-3 + Esc oder das Tray-Icon).
|
||||
;
|
||||
; Weitere Informationen:
|
||||
; https://mkdocs.neo.uber.space/Benutzerhandbuch/neovars/
|
||||
|
||||
[Global]
|
||||
|
||||
; LAYOUT -----------------------------
|
||||
|
||||
; Ein benutzerdefiniertes Layout festlegen
|
||||
; (33 Standardzeichen, in QUERTZ: "ßqwertzuiopüasdfghjklöäyxcvbnm,.-")
|
||||
|
||||
; Neo2 (immer auch default):
|
||||
;customLayout="-xvlcwkhgfqßuiaeosnrtdyüöäpzbm,.j"
|
||||
; Bone:
|
||||
;customLayout="-jduaxphlmwßctieobnrsgqfvüäöyz,.k"
|
||||
; AdNW:
|
||||
;customLayout="-kuü.ävgcljfhieaodtrnsßxyö,qbpwmz"
|
||||
; KOY:
|
||||
;customLayout="-k.o,yvgclßzhaeiudtrnsfxqäüöbpwmj"
|
||||
; Qwertz:
|
||||
;customLayout="ßqwertzuiopüasdfghjklöäyxcvbnm,.-"
|
||||
|
||||
; Soll die rechte Mod-3-Taste mit der links davon liegenden Taste (Ä in Qwertz) vertauscht werden?
|
||||
Mod3RAufAe=0
|
||||
|
||||
|
||||
; MODI -------------------------------
|
||||
|
||||
; Soll der Qwertz-Modus beim Programmstart bereits aktiviert sein?
|
||||
isQwertz=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
|
||||
|
||||
|
||||
; TRAY-TIPPS -------------------------
|
||||
|
||||
; Soll beim Einschalten des Mod4-Locks eine Warnmeldung ausgegeben werden?
|
||||
zeigeLockBox=1
|
||||
|
||||
; Sollen Veränderungen an den Einstellungen auf dem Desktop angezeigt werden? (Tray-Tips)
|
||||
zeigeModusBox=1
|
||||
|
||||
|
||||
; LEDS -------------------------------
|
||||
|
||||
; Soll das Aktivieren des Mod-4-Locks über das 3. Numpad-Licht (Scroll-Lock) angezeigt werden?
|
||||
useMod4Light=1
|
||||
|
||||
; Soll das Aktivieren des Mod-4-Locks auch über das Caps-Lock-Licht angezeigt werden?
|
||||
; Hinweis: keine weiteren LEDs vorhanden sind)?
|
||||
useMod4LightCaps=0
|
||||
|
||||
|
||||
; BILDSCHIRM-TASTATUR ----------------
|
||||
|
||||
; Soll die Bildschirm-Tastatur beim Programmstart bereits aktiviert sein?
|
||||
useBST=0
|
||||
|
||||
; Soll die dynamische Bildschirm-Tastatur beim Programmstart bereits eingeschaltet sein?
|
||||
; Hinweis: Die dynamische Tastatur wird in Ebenen 5/6 sowie aktivem Compose eingeblendet.
|
||||
useDBST=0
|
||||
|
||||
; In welchem Layout soll die Bildschirmtastatur dargestellt werden (0=Standard, 1=ErgoDox, 2=ISO, 3=ISO-TKL)?
|
||||
bstLayout=0
|
||||
|
||||
; Um welchen Faktor soll die Bildschirmtastatur standardmäßig vergrößert werden? (1=nicht skalieren)
|
||||
bstScale=1
|
||||
|
||||
; Soll die Bildschirmtastatur die Mod-Tasten der jeweilige Ebene grafisch hervorheben?
|
||||
; Hinweis: Fähigkeit ist Layoutabhängig (bstLayout). Verlangsamung oder Flackern möglich.
|
||||
bstAnimate=1
|
||||
|
||||
|
||||
; LOCKS ------------------------------
|
||||
|
||||
; Soll Caps-Lock auch bei den Ziffern und Satzzeichen wirken?
|
||||
striktesMod2Lock=0
|
||||
|
||||
; Soll die Caps-Lock-Funktion (gleichzeitiges Drücken beider Mod-2-/Umschalttasten) abgestellt werden?
|
||||
Mod2LockOff=0
|
||||
|
||||
; Soll Mod-4-Lock-Funktion (gleichzeitiges Drücken beider Mod-4-Tasten) abgestellt werden?
|
||||
Mod4LockOff=0
|
||||
|
||||
; Soll die Num-Lock-Funktion abgestellt werden?
|
||||
; Hinweis: Hilfreich bei Notebooks und anderen Tastaturen mit integriertem Fn-Ziffernblock.
|
||||
NumLockOff=0
|
||||
|
||||
|
||||
; SONSTIGE EINSTELLUNGEN -------------
|
||||
|
||||
; Soll das Programm deaktiviert gestartet werden?
|
||||
; Hinweis: Kann jederzeit über das Tray-Icon oder per Shift + Pause (de)aktiviert werden
|
||||
startSuspended=0
|
||||
|
||||
; Sollen Compose-Kombinationen dynamisch aus einer lokalen Kopie des Repositorys erzeugt werden?
|
||||
dynamischesCompose=0
|
||||
|
||||
|
||||
; SONSTIGES --------------------------
|
||||
|
|
@ -0,0 +1,105 @@
|
|||
; -*- encoding: utf-8 -*-
|
||||
;
|
||||
; Benutzerdefinierte Neovars-Skripte
|
||||
;
|
||||
; Damit dieses AHK-Skript beim Programmstart ausgeführt wird, muss es unter
|
||||
; "%APPDATA%\Neo2\custom.ahk" (bzw. für die portable Version unter
|
||||
; "<Verzeichnis der Neo2-exe>\Neo2-portable\Neo2.ini") abgelegt werden.
|
||||
;
|
||||
; Die Funktion LoadUserdefinedCompose() wird nach Initialisierung der Compose-
|
||||
; Definitionen aufgerufen und kann für eigene Compose-Definitionen genutzt werden.
|
||||
|
||||
|
||||
|
||||
; Modifikationen und Erweiterungen der Compose-Definitionen (Neovars-spezifisch)
|
||||
; Für projektweite (neo-layout) Definitionen: Compose/src/weiter_Definitionen.txt
|
||||
LoadUserdefinedCompose() {
|
||||
global
|
||||
|
||||
; *Benutzerdefinierte Komposita*
|
||||
;
|
||||
; Kurzreferenz:
|
||||
; CM<a> := 1
|
||||
; CM<a><b> := 1
|
||||
; ...
|
||||
; CM<a><b>...<n> := 1
|
||||
; CD<a><b>...<n><m> := "<kompositum>"
|
||||
; CRC<kompositum> .= " <a><b>...<n><m>"
|
||||
|
||||
; Beispiel: <compose>+<enter> → Tastaturbelegung
|
||||
; Hinweis: Tastaturbelegung wie zu Programmstart ohne Neovars-Modi
|
||||
; layoutstringEnc := EncodeUniCompose(layoutstring)
|
||||
; CDS__CompU00000D := layoutstringEnc
|
||||
|
||||
|
||||
; *Benutzerdefinierte Ersatz-Symbole für Bildschirmtastatur*
|
||||
;
|
||||
; Kurzreferenz:
|
||||
; GUISYM("<kompositum>","<symbol>")
|
||||
|
||||
; Beispiel: Tastaturbelegung → ⌨ (Tastatur-Emoji)
|
||||
; Hinweis: Erstes Beispiel muss einkommentiert sein.
|
||||
; GUISYM(layoutstringEnc,"⌨")
|
||||
|
||||
|
||||
; *Zurückfallende Komposita*
|
||||
;
|
||||
; Kurzreferenz:
|
||||
; CF<teilsequenz> := <teilkompositum>
|
||||
;
|
||||
; Erläuterung:
|
||||
;
|
||||
; Eine typische Compose-Definition mit
|
||||
; CM<teilsequenz> := 1
|
||||
; CD<teilsequenz><x> := "<kompositum>"
|
||||
; wandelt die Eingabesequenz <teilsequenz><x> mit Eingabe des
|
||||
; Abschlusszeiches <x> in das entsprechende <kompositum> um.
|
||||
;
|
||||
; Folgt hingegen auf die <teilsequenz> ein unerwartetes Zeichen <u>,
|
||||
; dann schlägt die Komposition fehl und die gesamte bisherige Eingabe
|
||||
; <teilsequenz><u> wird verschluckt.
|
||||
;
|
||||
; Alternativ bewirkt die zusätzliche Definition
|
||||
; CF<teilsequenz> := <teilkompositum>
|
||||
; die Ausgabe von <teilkompositum><u>, sobald das unerwartete Zeichen <u>
|
||||
; eingegeben wurde.
|
||||
;
|
||||
; Insbesondere wird mit
|
||||
; CF<teilsequenz> := "<teilsequenz>"
|
||||
; die gesamte Eingabesequenz so ausgegeben, wie sie eingegeben wurde.
|
||||
;
|
||||
; Beispiel:
|
||||
;
|
||||
; Setzt man beispielsweise
|
||||
; CMU0000DF := 1
|
||||
; CDU0000DFU0000DF := "U00017FU000073"
|
||||
; dann bewirken die ersten beiden Zeilen, dass ein einzelnes ß erst mal
|
||||
; „tot“ wirkt, und mit einem zweiten ß wird „ſs“ draus.
|
||||
;
|
||||
; Man kann nun folgende Zeile anhängen:
|
||||
; CFU0000DF := "U0000DF"
|
||||
; Diese bewirkt nun, dass das erste ß, sobald es von irgend einem anderen
|
||||
; Zeichen gefolgt wird, mit diesem dann (verzögert) ausgegeben wird, so, als
|
||||
; gäbe es für alle Compose-Möglichkeiten aus ß und anderem Zeichen eine
|
||||
; entsprechende Compose-Sequenz, die eben diese beiden Zeichen als Ergebnis
|
||||
; liefert. Normalerweise würden beide Zeichen verschluckt werden, da es
|
||||
; keine entsprechende Compose-Sequenz gibt.
|
||||
;
|
||||
; Ohne CFU0000DF:
|
||||
; ßß → ſs
|
||||
; ßa →
|
||||
; ßb →
|
||||
;
|
||||
; Mit CFU0000DF:
|
||||
; ßß → ſs
|
||||
; ßa → ßa
|
||||
; ßb → ßb
|
||||
;
|
||||
; (siehe commit 97f45845332229b0d7a1344157e04b24d856856b)
|
||||
|
||||
; Beispiel: verzögert ßß → ſs auslösen
|
||||
; CMU0000DF := 1
|
||||
; CDU0000DFU0000DF := "U00017FU000073"
|
||||
; CRCU00017FU000073 .= " U0000DFU0000DF"
|
||||
; CFU0000DF := "U0000DF"
|
||||
}
|
|
@ -108,9 +108,13 @@ ActivateLayOut(inputlocale)
|
|||
|
||||
TheKeys()
|
||||
|
||||
ChangeCustomLayout()
|
||||
|
||||
if (dynamischesCompose)
|
||||
LoadCurrentCompose()
|
||||
else
|
||||
LoadDefaultCompose()
|
||||
|
||||
ChangeCustomLayout()
|
||||
userCompFun := "LoadUserdefinedCompose"
|
||||
if (IsFunc(userCompFun))
|
||||
%userCompFun%()
|
||||
|
|
Loading…
Reference in New Issue