summaryrefslogtreecommitdiffstats
path: root/windows/autohotkey/neo20.ahk
diff options
context:
space:
mode:
authormartin_r <martin_r@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2008-08-28 01:13:00 +0000
committermartin_r <martin_r@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2008-08-28 01:13:00 +0000
commit83c294276dbb5fb5547b233ea2ed9620f0bc544e (patch)
treeed5f4dbc7ae8142e8fe608a92853627c5f1d8861 /windows/autohotkey/neo20.ahk
parent92fd984a7536b96b5021b0761f84b856384aaec2 (diff)
Weitere Cokos ergänzt: ›Ə‹, ›dž‹, ›Dž‹, ›DŽ‹, glyphengleiche griechische Majuskeln.
Echter Bindestich durch Shift+Mod3+Zirkumflex, Leertaste. git-svn-id: https://svn.neo-layout.org@820 b9310e46-f624-0410-8ea1-cfbb3a30dc96
Diffstat (limited to 'windows/autohotkey/neo20.ahk')
-rw-r--r--windows/autohotkey/neo20.ahk71
1 files changed, 44 insertions, 27 deletions
diff --git a/windows/autohotkey/neo20.ahk b/windows/autohotkey/neo20.ahk
index e87b6e4..3d7c5d9 100644
--- a/windows/autohotkey/neo20.ahk
+++ b/windows/autohotkey/neo20.ahk
@@ -1014,19 +1014,19 @@ neo_tot2:
if (Ebene = 1) and !CheckDeadUni("a1",0x0301) {
deadAsc("{}{space}") ; Akut, tot
DeadKey := "a1"
- } else if (Ebene = 2) !CheckDeadUni("a2",0x0300) {
+ } else if (Ebene = 2) and !CheckDeadUni("a2",0x0300) {
deadAsc("``{space}") ; Gravis, tot
DeadKey := "a2"
- } else if (Ebene = 3) !CheckDeadUni("a3",0x0327) {
+ } else if (Ebene = 3) and !CheckDeadUni("a3",0x0327) {
deadAsc("") ; Cedilla, tot
DeadKey := "a3"
- } else if (Ebene = 4) !CheckDeadUni("a4",0x0307) {
+ } else if (Ebene = 4) and !CheckDeadUni("a4",0x0307) {
deadUni(0x02D9) ; Punkt oben
DeadKey := "a4"
- } else if (Ebene = 5) !CheckDeadUni("a5",0x0328) {
+ } else if (Ebene = 5) and !CheckDeadUni("a5",0x0328) {
deadUni(0x02DB) ; Ogonek
DeadKey := "a5"
- } else if (Ebene = 6) !CheckDeadUni("a6",0x030A) {
+ } else if (Ebene = 6) and !CheckDeadUni("a6",0x030A) {
deadUni(0x02DA) ; Ring oben
DeadKey := "a6"
} CompKey := PriorCompKey
@@ -1041,7 +1041,7 @@ return
neo_x:
EbeneAktualisieren()
- if (Ebene12)
+ if (Ebene12 or CheckCompUni12("G","",0x039D))
OutputChar("x","X")
else if (Ebene = 3)
SendUnicodeChar(0x2026) ; Ellipse horizontal
@@ -1127,7 +1127,8 @@ return
neo_k:
EbeneAktualisieren()
if (Ebene12 and !(CheckDeadUni12("a3",0x0137,0x0136)
- or CheckDeadUni12("c6",0x1E33,0x1E32)))
+ or CheckDeadUni12("c6",0x1E33,0x1E32)
+ or CheckCompUni12("G","",0x039A)))
OutputChar("k","K")
else if (Ebene = 3)
send {blind}{!}
@@ -1144,7 +1145,8 @@ neo_h:
if (Ebene12 and !(CheckDeadUni12("a4",0x1E23,0x1E22)
or CheckDeadUni12("c1",0x0125,0x0124)
or CheckDeadUni12("c5",0x0127,0x0126)
- or CheckDeadUni12("c6",0x1E25,0x1E24)))
+ or CheckDeadUni12("c6",0x1E25,0x1E24)
+ or CheckCompUni12("G","",0x0397)))
OutputChar("h","H")
else if ((Ebene = 3) and !(CheckDeadUni("c5",0x2264))) ; kleiner gleich
send {blind}<
@@ -1236,22 +1238,22 @@ return
neo_tot3:
noCaps = 1
EbeneAktualisieren()
- if (Ebene = 1) !CheckDeadUni("t1",0x0303) {
+ if (Ebene = 1) and !CheckDeadUni("t1",0x0303) {
deadUni(0x02DC) ; Tilde, tot
DeadKey := "t1"
- } else if (Ebene = 2) !CheckDeadUni("t2",0x0304) {
+ } else if (Ebene = 2) and !CheckDeadUni("t2",0x0304) {
deadUni(0x00AF) ; Macron, tot
DeadKey := "t2"
- } else if (Ebene = 3) !CheckDeadUni("t3",0x0308) {
+ } else if (Ebene = 3) and !CheckDeadUni("t3",0x0308) {
deadUni(0x00A8) ; Direse
DeadKey := "t3"
- } else if (Ebene = 4) !CheckDeadUni("t4",0x0337) {
+ } else if (Ebene = 4) and !CheckDeadUni("t4",0x0337) {
deadUni(0x002F) ; Schrgstrich, tot
DeadKey := "t4"
- } else if (Ebene = 5) !CheckDeadUni("t5",0x030B) {
+ } else if (Ebene = 5) and !CheckDeadUni("t5",0x030B) {
deadUni(0x02DD) ; Doppelakut
DeadKey := "t5"
- } else if (Ebene = 6) !CheckDeadUni("t6",0x0326) {
+ } else if (Ebene = 6) and !CheckDeadUni("t6",0x0326) {
deadUni(0x02CF) ; Komma drunter, tot
DeadKey := "t6"
}
@@ -1303,7 +1305,8 @@ neo_i:
or CheckDeadUni12("t2",0x012B,0x012A)
or CheckDeadAsc12("t3","","")
or CheckCompUni("f",0xFB01)
- or CheckCompUni("F",0xFB03)))
+ or CheckCompUni("F",0xFB03)
+ or CheckCompUni12("G","",0x0399)))
OutputChar("i","I")
else if (Ebene = 3)
send {blind}`/
@@ -1326,7 +1329,8 @@ neo_a:
or CheckDeadUni12("c3",0x0103,0x0102)
or CheckDeadUni12("t1",0x00E3,0x00C3)
or CheckDeadUni12("t2",0x0101,0x0100)
- or CheckDeadAsc12("t3","","")))
+ or CheckDeadAsc12("t3","","")
+ or CheckCompUni12("G","",0x0391)))
OutputChar("a","A")
else if (Ebene = 3)
send {blind}{{}
@@ -1353,7 +1357,9 @@ neo_e:
or CheckCompAsc12("a","","")
or CheckCompAsc12("A","","")
or CheckCompAsc12("o","","")
- or CheckCompAsc12("O","","")))
+ or CheckCompAsc12("O","","")
+ or CheckCompUni12("G","",0x0395)
+ or CheckCompUni12("E","",0x018F)))
OutputChar("e","E")
else if (Ebene = 3)
send {blind}{}}
@@ -1377,7 +1383,8 @@ neo_o:
or CheckDeadUni12("t2",0x014D,0x014C)
or CheckDeadAsc12("t3","","")
or CheckDeadUni12("t4",0x00F8,0x00D8)
- or CheckDeadUni12("t5",0x0151,0x0150)))
+ or CheckDeadUni12("t5",0x0151,0x0150)
+ or CheckCompUni12("G","",0x039F)))
OutputChar("o","O")
else if (Ebene = 3)
send {blind}*
@@ -1418,7 +1425,8 @@ neo_n:
or CheckDeadUni12("a3",0x0146,0x0145)
or CheckDeadUni12("a4",0x1E45,0x1E44)
or CheckDeadUni12("c2",0x0148,0x0147)
- or CheckDeadUni12("t1",0x00F1,0x00D1)))
+ or CheckDeadUni12("t1",0x00F1,0x00D1)
+ or CheckCompUni12("G","",0x039D)))
OutputChar("n","N")
else if (Ebene = 3)
send {blind}(
@@ -1460,7 +1468,8 @@ neo_t:
or CheckDeadUni12("c5",0x0167,0x0166)
or CheckDeadUni12("c6",0x1E6D,0x1E6C)
or CheckCompUni("lang_s",0xFB05)
- or CheckCompUni("s",0xFB06)))
+ or CheckCompUni("s",0xFB06)
+ or CheckCompUni12("G","",0x03A4)))
OutputChar("t","T")
else if (Ebene = 3)
send {blind}- ; Bisstrich
@@ -1495,7 +1504,8 @@ neo_y:
EbeneAktualisieren()
if (Ebene12 and !(CheckDeadUni12("a1",0x00FD,0x00DD)
or CheckDeadUni12("c1",0x0177,0x0176)
- or CheckDeadAsc12("t3","","")))
+ or CheckDeadAsc12("t3","","")
+ or CheckCompUni12("G","",0x03A5)))
OutputChar("y","Y")
else if (Ebene = 3)
send {blind}@
@@ -1562,7 +1572,8 @@ return
neo_p:
EbeneAktualisieren()
- if (Ebene12 and !(CheckDeadUni12("a4",0x1E57,0x1E56)))
+ if (Ebene12 and !(CheckDeadUni12("a4",0x1E57,0x1E56)
+ or CheckCompUni12("G","",0x03A1)))
OutputChar("p","P")
else if ((Ebene = 3) and !(CheckDeadUni("t1",0x2248)))
send {blind}~
@@ -1579,7 +1590,10 @@ neo_z:
if (Ebene12 and !(CheckDeadUni12("a1",0x017A,0x0179)
or CheckDeadUni12("a4",0x017C,0x017B)
or CheckDeadUni12("c2",0x017E,0x017D)
- or CheckDeadUni12("c6",0x1E93,0x1E92)))
+ or CheckDeadUni12("c6",0x1E93,0x1E92)
+ or CheckCompUni("d",0x01C6)
+ or CheckCompUni12("D",0x01C5,0x01C4)
+ or CheckCompUni12("G","",0x0396)))
OutputChar("z","Z")
else if (Ebene = 3)
send ``{space} ; untot
@@ -1594,7 +1608,8 @@ return
neo_b:
EbeneAktualisieren()
- if (Ebene12 and !(CheckDeadUni12("a4",0x1E03,0x1E02)))
+ if (Ebene12 and !(CheckDeadUni12("a4",0x1E03,0x1E02)
+ or CheckCompUni12("G","",0x0392)))
OutputChar("b","B")
else if (Ebene = 3)
if isMod2Locked
@@ -1613,7 +1628,8 @@ neo_m:
if (Ebene12 and !(CheckDeadUni12("a4",0x1E41,0x1E40)
or CheckDeadUni12("c6",0x1E43,0x1E42)
or CheckCompUni12("t",0x2122,0x2122) ; TM
- or CheckCompUni12("s",0x2120,0x2120))) ; SM
+ or CheckCompUni12("s",0x2120,0x2120) ; SM
+ or CheckCompUni12("G","",0x039C)))
OutputChar("m","M")
else if (Ebene = 3)
send {blind}`%
@@ -1667,10 +1683,10 @@ neo_j:
EbeneAktualisieren()
if (Ebene12 and !(CheckDeadUni12("c1",0x0135,0x0134)
or CheckDeadUni12("c2",0x01F0,"")
+ or CheckCompUni("I",0x0132) ; IJ
or CheckCompUni("i",0x0133) ; ij
or CheckCompUni("l",0x01C9) ; lj
or CheckCompUni("n",0x01CC) ; nj
- or CheckCompUni("I",0x0132) ; IJ
or CheckCompUni12("L",0x01C8,0x01C7) ; Lj/LJ
or CheckCompUni12("N",0x01CB,0x01CA))) ; Nj/NJ
OutputChar("j","J")
@@ -1918,7 +1934,8 @@ return
neo_SpaceUp:
EbeneAktualisieren()
if (Ebene = 1) and !(CheckComp3Uni("r_1",0x2170) ; Rmisch i
- or CheckComp3Uni("R_1",0x2160)) ; Rmisch I
+ or CheckComp3Uni("R_1",0x2160) ; Rmisch I
+ or CheckDeadUni("c5",0x2010)) ; Echter Bindestrich
Send {blind}{Space}
else if (Ebene = 2) or (Ebene = 3)
Send {blind}{Space}