root/windows/XP/autohotkey/neo20.ahk @ 101

Revision 101, 27.1 KB (checked in by nora, 6 years ago)

neo20.ods: Mittenpunkt(tot) und Punkt drunter(tot) eingefügt; Autohotkey: Sicherung Zwischenablage, DeadKeys erweitert

Line 
1/*
2   NEO-Layout - Version vom 08.05.2007
3   Mod3 (3./4. Ebene) funktioniert �ber Win+Ctrl,
4    Mod5 (5./6. Ebene) �ber AltGr.
5   Zur Umbelegung von Mod3 auf CapsLock und #
6    und f�r einen zweiten Mod5 auf <
7    verwende neo20-remap.ahk
8*/
9
10;#InstallKeybdHook
11#usehook on
12#singleinstance force
13#LTrim
14  ; Quelltext kann einger�ckt werden,
15  ; msgbox ist trotzdem linksb�ndig
16
17SendMode InputThenPlay 
18
19name    = NEO-Layout 2.0
20enable  = Aktiviere %name%
21disable = Deaktiviere %name%
22
23; ToDo
24; --------
25; nobreakspace und schmales Leerzeichen
26
27
28; ANSI-Darstellung von beliebigen Unicode-Zeichen
29; -----------------------------------------------
30; (ben�tigt f�r MyUTF_String):
31;  - die untenstehende Definition auskommentieren
32;  - gew�nschtes Zeichen in die Zwischenablage bef�rdern
33;  - ^!u (Control+Alt+U) dr�cken
34;  - die ANSI-Darstellung aus der Zwischenablage an die
35;    gew�nschte Stelle ins Skript einf�gen
36/*
37^!u:: 
38   MsgBox,
39     (
40     Copy some Unicode text onto the clipboard,
41     then return to this window and press OK to continue.
42     )
43   Transform, ClipUTF, Unicode
44   Clipboard = Transform, Clipboard, Unicode, %ClipUTF%`r`n
45   Clipboard = %ClipUTF%
46   MsgBox,
47     (
48     The clipboard now contains the following line
49     that you can paste into your script.
50     `n%Clipboard%
51     )
52return
53*/
54
55
56; �berpr�fung auf deutsches Tastaturlayout
57; ----------------------------------------
58
59regread, inputlocale, HKEY_CURRENT_USER, Keyboard Layout\Preload, 1
60regread, inputlocalealias, HKEY_CURRENT_USER
61     , Keyboard Layout\Substitutes, %inputlocale%
62if inputlocalealias <>
63   inputlocale = %inputlocalealias%
64if inputlocale <> 00000407
65{
66   suspend   
67   regread, inputlocale, HKEY_LOCAL_MACHINE
68     , SYSTEM\CurrentControlSet\Control\Keyboard Layouts\%inputlocale%
69     , Layout Text
70   msgbox, 48, Warnung!,
71     (
72     Nicht kompatibles Tastaturlayout:   
73     `t%inputlocale%   
74     `nDas deutsche QWERTZ muss als Standardlayout eingestellt 
75     sein, damit %name% wie erwartet funktioniert.   
76     `n�ndere die Tastatureinstellung unter
77     `tSystemsteuerung   
78     `t-> Regions- und Sprachoptionen   
79     `t-> Sprachen
80     `t-> Details...   `n
81     )
82   exitapp
83}
84
85
86; Men� des Systray-Icons
87; ----------------------
88
89menu, tray, nostandard
90menu, tray, add, �ffnen, open
91   menu, helpmenu, add, About, about
92   menu, helpmenu, add, Autohotkey-Hilfe, help
93   menu, helpmenu, add
94   menu, helpmenu, add, http://&autohotkey.com/, autohotkey
95   menu, helpmenu, add, http://www.neo-layout.org/, neo
96menu, tray, add, Hilfe, :helpmenu
97menu, tray, add
98menu, tray, add, %disable%, toggleneo
99menu, tray, default, %disable%
100menu, tray, add
101menu, tray, add, Edit, edit
102menu, tray, add, Reload, reload
103menu, tray, add
104menu, tray, add, Nicht im Systray anzeigen, hide
105menu, tray, add, %name% beenden, exitprogram
106menu, tray, tip, %name%
107
108
109
110;1. Ebene
111;---------
112
113^::send {^} ; circumflex, tot
1141::send 1
1152::send 2
1163::send 3
1174::send 4
1185::send 5
1196::send 6
1207::send 7
1218::send 8
1229::send 9
1230::send 0
124�::send -
125�::send {�} ; akut, tot
126
127q::send x
128
129w::
130  If A_PriorHotkey = <^>!+^ ; punkt darunter
131    BSUnicode("ṿ")
132  Else
133    send v
134Return
135
136e::
137  If A_PriorHotkey = <^>!+ ; Schr�gstrich
138    BSUnicode("ł")
139  Else If A_PriorHotkey = � ; akut
140    BSUnicode("ĺ")
141  Else If A_PriorHotkey = +^ ; caron
142    BSUnicode("ľ")
143  Else If A_PriorHotkey = #^� ; cedilla
144    BSUnicode("ļ")
145  Else If A_PriorHotkey = <^>!^ ; Mittenpunkt
146    BSUnicode("ŀ")
147  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
148    BSUnicode("ḷ")
149  Else
150    send l
151Return
152
153r::
154  If A_PriorHotkey = ^ ; circumflex
155    BSUnicode("ĉ")
156  Else If A_PriorHotkey = +^ ; caron
157    BSUnicode("č")
158  Else If A_PriorHotkey = � ; akut
159    BSUnicode("ć")
160  Else If A_PriorHotkey = #^� ; cedilla
161    BSUnicode("ç")
162  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
163    BSUnicode("ċ")
164  Else
165    Send c
166Return
167
168t::
169  If A_PriorHotkey = ^ ; circumflex
170    BSUnicode("ŵ")
171  Else
172    send w
173Return
174
175z::
176  If A_PriorHotkey = #^� ; cedilla
177    BSUnicode("ķ")
178  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
179    BSUnicode("ḳ")
180  Else
181    send k
182Return
183
184u::
185  If A_PriorHotkey = ^           ; circumflex
186    BSUnicode("ĥ")
187  Else If A_PriorHotkey = #^+^   ; Querstrich
188    BSUnicode("ħ")
189  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
190    BSUnicode("ḣ")
191  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
192    BSUnicode("ḥ")
193  Else send h
194Return
195
196i::
197  If A_PriorHotkey = ^          ; circumflex
198    BSUnicode("ĝ")
199  Else If A_PriorHotkey = #^^   ; brevis
200    BSUnicode("ğ")
201  Else If A_PriorHotkey = #^�   ; cedilla
202    BSUnicode("ģ")
203  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
204    BSUnicode("ġ")
205  Else send g
206Return
207
208o::
209  If A_PriorHotkey = <^>!+      ; durchgestrichen
210    BSUnicode("ƒ")
211  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
212    BSUnicode("ḟ")
213  Else send f
214Return
215
216p::send q
217�::send �
218+::send ~ ; tilde, soll tot
219
220a::
221  If A_PriorHotkey = #^+         ; Diaerese
222    Send, {bs}�
223  Else If A_PriorHotkey = #^++   ; doppelakut
224    BSUnicode("ű")
225  Else If A_PriorHotkey = #^^    ; brevis
226    BSUnicode("ŭ")
227  Else If A_PriorHotkey = ++     ; macron
228    BSUnicode("ū")
229  Else If A_PriorHotkey = #^+�   ; ogonek
230    BSUnicode("ų")
231  Else If A_PriorHotkey = <^>!+� ; Ring
232    BSUnicode("ů")
233  Else If A_PriorHotkey = +      ; tilde
234    BSUnicode("ũ")
235  Else
236    send u
237Return
238
239s::
240  If A_PriorHotkey = #^+        ; Diaerese
241    Send, {bs}�
242  Else If A_PriorHotkey = ++    ; macron
243    BSUnicode("ī")
244  Else If A_PriorHotkey = #^^   ; brevis
245    BSUnicode("ĭ")
246  Else If A_PriorHotkey = #^+�  ; ogonek
247    BSUnicode("į")
248  Else If A_PriorHotkey = +     ; tilde
249    BSUnicode("ĩ")
250  Else If A_PriorHotkey = <^>!� ; (ohne) punkt dar�ber
251    BSUnicode("ı")
252  Else
253    Send i
254Return
255
256d::
257  If A_PriorHotkey = #^+         ; Diaerese
258    Send {bs}�
259  Else If A_PriorHotkey = <^>!+� ; Ring
260    Send {bs}�
261  Else If A_PriorHotkey = +      ; tilde
262    BSUnicode("ã")
263  Else If A_PriorHotkey = #^+�   ; ogonek
264    BSUnicode("ą")
265  Else If A_PriorHotkey = ++     ; macron
266    BSUnicode("ā")
267  Else If A_PriorHotkey = #^^    ; brevis
268    BSUnicode("ă")
269  Else
270    Send a
271Return
272
273f::
274  If A_PriorHotkey = #^+        ; Diaerese
275    Send, {bs}�
276  Else If A_PriorHotkey = #^+�  ; ogonek
277    BSUnicode("ę")
278  Else If A_PriorHotkey = ++    ; macron
279    BSUnicode("ē")
280  Else If A_PriorHotkey = #^^   ; brevis
281    BSUnicode("ĕ")
282  Else If A_PriorHotkey = +^    ; caron
283    BSUnicode("ě")
284  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
285    BSUnicode("ė")
286  Else
287    Send e
288Return
289
290g::
291  If A_PriorHotkey = #^+         ; Diaerese
292    Send, {bs}�
293  Else If A_PriorHotkey = +      ; tilde
294    BSUnicode("õ")
295  Else If A_PriorHotkey = #^++   ; doppelakut
296    BSUnicode("ő")
297  Else If A_PriorHotkey = <^>!+  ; Schr�gstrich
298    BSUnicode("ø")
299  Else If A_PriorHotkey = ++     ; macron
300    BSUnicode("ō")
301  Else If A_PriorHotkey = #^^    ; brevis
302    BSUnicode("ŏ")
303  Else
304    send o
305Return
306
307h::
308  If A_PriorHotkey = ^           ; circumflex
309    BSUnicode("ŝ")
310  Else If A_PriorHotkey = �      ; akut
311    BSUnicode("ś")
312  Else If A_PriorHotkey = +^     ; caron
313    BSUnicode("š")
314  Else If A_PriorHotkey = #^�    ; cedilla
315    BSUnicode("ş")
316  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
317    BSUnicode("ṡ")
318  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
319    BSUnicode("ṣ")
320  Else   
321    send s
322Return
323
324j::
325  If A_PriorHotkey = �          ; akut
326    BSUnicode("ń")
327  Else If A_PriorHotkey = +     ; tilde
328    BSUnicode("ñ")
329  Else If A_PriorHotkey = +^    ; caron
330    BSUnicode("ň")
331  Else If A_PriorHotkey = #^�   ; cedilla
332    BSUnicode("ņ")
333  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
334    BSUnicode("ṅ")
335  Else
336    send n
337Return
338
339k::
340  If A_PriorHotkey = �           ; akut
341    BSUnicode("ŕ")
342  Else If A_PriorHotkey = +^     ; caron
343    BSUnicode("ř")
344  Else If A_PriorHotkey = #^�    ; cedilla
345    BSUnicode("ŗ")
346  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
347    BSUnicode("ṙ")
348  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
349    BSUnicode("ṛ")
350  Else
351    send r
352Return
353
354l:: 
355  If A_PriorHotkey = +^          ; caron
356    BSUnicode("ť")
357  Else If A_PriorHotkey = #^�    ; cedilla
358    BSUnicode("ţ")
359  Else If A_PriorHotkey = #^+^   ; Querstrich
360    BSUnicode("ŧ")
361  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
362    BSUnicode("ṫ")
363  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
364    BSUnicode("ṭ")
365  Else
366    send t
367Return
368
369�::
370  If A_PriorHotkey = #^+^        ; Querstrich
371    BSUnicode("đ")
372  Else If A_PriorHotkey = +^     ; caron
373    BSUnicode("ď")
374  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
375    BSUnicode("ḋ")
376  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
377    BSUnicode("ḍ")
378  Else
379    send d
380Return
381
382�:: 
383  If A_PriorHotkey = #^+       ; Diaerese
384    Send {bs}�
385  Else If A_PriorHotkey = ^    ; circumflex
386    BSUnicode("ŷ")
387  Else
388    send y
389Return
390
391;SC02B (#) wird zu AltGr
392
393;SC056 (<) wird zu Mod5
394y::send �
395x::send �
396c::send �
397v::
398  If A_PriorHotkey = <^>!�      ; punkt dar�ber
399    BSUnicode("ṗ")
400  Else
401    send p
402Return
403
404b::
405  If A_PriorHotkey = +^         ; caron
406    BSUnicode("ž")
407  Else If A_PriorHotkey = �     ; akut
408    BSUnicode("ź")
409  Else If A_PriorHotkey = <^>!� ; punkt dr�ber
410    BSUnicode("ż")
411  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
412    BSUnicode("ż")
413  Else
414    Send z
415Return
416
417n::
418  If A_PriorHotkey = <^>!�      ; punkt dar�ber
419    BSUnicode("ḃ")
420  Else
421    send b
422Return
423
424m::
425  If A_PriorHotkey = <^>!�       ; punkt dar�ber
426    BSUnicode("ṁ")
427  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
428    BSUnicode("ṃ")
429  Else
430    send m
431Return
432
433,::send `,
434.::send .
435
436-::
437  If A_PriorHotkey = ^           ; circumflex
438    BSUnicode("ĵ")
439  Else
440    send j
441Return
442
443Space::
444  If A_PriorHotkey = ^           ; circumflex
445    BSUnicode("ˆ")
446  Else If A_PriorHotkey = +      ; tilde
447    BSUnicode("˜")
448  Else
449    Send {Space}
450Return
451
452Enter::Send {Enter}
453Esc::Send {Esc}
454
455
456;2. Ebene (Shift)
457;---------
458
459+^::Unicode("ˇ")  ; caron, tot
460+1::send �
461+2::send �
462+3::send �
463+4::send $
464+5::send �
465+6::send �
466+7::send �
467+8::send �
468+9::send �
469+0::send �
470+�::Unicode("–") ; Ged
471+�::send ``
472
473+q::send X
474+w::
475  If A_PriorHotkey = <^>!+^      ; punkt darunter
476    BSUnicode("Ṿ")
477  Else
478    send V
479Return
480
481+e::
482  If A_PriorHotkey = �           ; akut
483    BSUnicode("Ĺ")
484  Else If A_PriorHotkey = +^     ; caron
485    BSUnicode("Ľ")
486  Else If A_PriorHotkey = #^�    ; cedilla
487    BSUnicode("Ļ")
488  Else If A_PriorHotkey = <^>!+  ; Schr�gstrich
489    BSUnicode("Ł")
490  Else If A_PriorHotkey = <^>!^  ; Mittenpunkt
491    BSUnicode("Ŀ")
492  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
493    BSUnicode("Ḷ")
494  Else
495    send L
496return
497
498+r::
499  If A_PriorHotkey = ^          ; circumflex
500    BSUnicode("Ĉ")
501  Else If A_PriorHotkey = +^    ; caron
502    BSUnicode("Č")
503  Else If A_PriorHotkey = �     ; akut
504    BSUnicode("Ć")
505  Else If A_PriorHotkey = #^�   ; cedilla
506    BSUnicode("Ç")
507  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
508    BSUnicode("Ċ")
509  Else
510    Send C
511Return
512
513+t::
514  If A_PriorHotkey = ^           ; circumflex
515    BSUnicode("Ŵ")
516  Else
517    send W
518Return
519
520+z:: 
521  If A_PriorHotkey = #^�         ; cedilla
522    BSUnicode("Ķ")
523  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
524    BSUnicode("Ḳ")
525  Else
526    send K
527Return
528
529+u::
530  If A_PriorHotkey = ^           ; circumflex
531    BSUnicode("Ĥ")
532  Else If A_PriorHotkey = #^+^   ; Querstrich
533    BSUnicode("Ħ")
534  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
535    BSUnicode("Ḣ")
536  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
537    BSUnicode("Ḥ")
538  Else send H
539Return
540
541+i::
542  If A_PriorHotkey = ^          ; circumflex
543    BSUnicode("Ĝ")
544  Else If A_PriorHotkey = #^^   ; brevis
545    BSUnicode("Ğ")
546  Else If A_PriorHotkey = #^�   ; cedilla
547    BSUnicode("Ģ")
548  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
549    BSUnicode("Ġ")
550  Else send G
551Return
552
553+o::
554  If A_PriorHotkey = <^>!+       ; durchgestrichen
555    BSUnicode("₣")
556  Else If A_PriorHotkey = <^>!�  ; punkt dar�ber
557    BSUnicode("Ḟ")
558  Else send F
559Return
560
561+p::send Q
562+�::send �
563
564++::Unicode("ˉ")  ; macron, tot
565
566+a::
567  If A_PriorHotkey = #^+         ; Diaerese
568    Send, {bs}�
569  Else If A_PriorHotkey = <^>!+� ; Ring
570    BSUnicode("Ů")
571  Else If A_PriorHotkey = #^^    ; brevis
572    BSUnicode("Ŭ")
573  Else If A_PriorHotkey = #^++   ; doppelakut
574    BSUnicode("Ű")
575  Else If A_PriorHotkey = +^     ; caron
576    BSUnicode("Ů")
577  Else If A_PriorHotkey = ++     ; macron
578    BSUnicode("Ū")
579  Else If A_PriorHotkey = #^^    ; brevis
580    BSUnicode("Ŭ")
581  Else If A_PriorHotkey = #^+�   ; ogonek
582    BSUnicode("Ų")
583  Else If A_PriorHotkey = +      ; tilde
584    BSUnicode("Ũ")
585  Else
586    send U
587Return
588
589+s::
590  If A_PriorHotkey = #^+ ; Diaerese
591    Send, {bs}�
592  Else If A_PriorHotkey = ++ ; macron
593    BSUnicode("Ī")
594  Else If A_PriorHotkey = #^^ ; brevis
595    BSUnicode("Ĭ")
596  Else If A_PriorHotkey = #^+� ; ogonek
597    BSUnicode("Į")
598  Else If A_PriorHotkey = + ; tilde
599    BSUnicode("Ĩ")
600  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
601    BSUnicode("İ")
602  Else
603    Send I
604Return
605
606+d::
607  If A_PriorHotkey = #^+ ; Diaerese
608    Send {bs}�
609  Else If A_PriorHotkey = + ; tilde
610    BSUnicode("Ã")
611  Else If A_PriorHotkey = <^>!+� ; Ring
612    Send {bs}�
613  Else If A_PriorHotkey = ++ ; macron
614    BSUnicode("Ā")
615  Else If A_PriorHotkey = #^^ ; brevis
616    BSUnicode("Ă")
617  Else If A_PriorHotkey = #^+� ; ogonek
618    BSUnicode("Ą")
619  Else
620    Send A
621Return
622
623+f::
624  If A_PriorHotkey = #^+ ; Diaerese
625    Send, {bs}�
626  Else If A_PriorHotkey = +^ ; caron
627    BSUnicode("Ě")
628  Else If A_PriorHotkey = ++ ; macron
629    BSUnicode("Ē")
630  Else If A_PriorHotkey = #^^ ; brevis
631    BSUnicode("Ĕ")
632  Else If A_PriorHotkey = #^+� ; ogonek
633    BSUnicode("Ę")
634  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
635    BSUnicode("Ė")
636  Else
637    Send E
638Return
639
640+g::
641  If A_PriorHotkey = <^>!+ ; Schr�gstrich
642    BSUnicode("Ø")
643  Else If A_PriorHotkey = + ; tilde
644    BSUnicode("Õ")
645  Else If A_PriorHotkey = #^++ ; doppelakut
646    BSUnicode("Ő")
647  Else If A_PriorHotkey = #^+ ; Diaerese
648    Send {bs}�
649  Else If A_PriorHotkey = ++ ; macron
650    BSUnicode("Ō")
651  Else If A_PriorHotkey = #^^ ; brevis
652    BSUnicode("Ŏ")
653  Else
654    send O
655Return
656
657+h::
658  If A_PriorHotkey = ^ ; circumflex
659    BSUnicode("Ŝ")
660  Else If A_PriorHotkey = +^ ; caron
661    BSUnicode("Š")
662  Else If A_PriorHotkey = � ; akut
663    BSUnicode("Ś")
664  Else If A_PriorHotkey = #^� ; cedilla
665    BSUnicode("Ş")
666  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
667    BSUnicode("�")
668  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
669    BSUnicode("Ṣ")
670  Else
671    send S
672Return
673
674+j::
675  If A_PriorHotkey = +^ ; caron
676    BSUnicode("Ň")
677  Else If A_PriorHotkey = + ; tilde
678    BSUnicode("Ñ")
679  Else If A_PriorHotkey = � ; akut
680    BSUnicode("Ń")
681  Else If A_PriorHotkey = #^� ; cedilla
682    BSUnicode("Ņ")
683  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
684    BSUnicode("Ṅ")
685  Else
686    send N
687Return
688
689+k::
690  If A_PriorHotkey = +^ ; caron
691    BSUnicode("Ř")
692  Else If A_PriorHotkey = � ; akut
693    BSUnicode("Ŕ")
694  Else If A_PriorHotkey = #^� ; cedilla
695    BSUnicode("Ŗ")
696  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
697    BSUnicode("Ṙ")
698  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
699    BSUnicode("Ṛ")
700  Else
701    send R
702Return
703
704+l::
705  If A_PriorHotkey = +^ ; caron
706    BSUnicode("Ť")
707  Else If A_PriorHotkey = #^� ; cedilla
708    BSUnicode("Ţ")
709  Else If A_PriorHotkey = #^+^ ; Querstrich
710    BSUnicode("Ŧ")
711  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
712    BSUnicode("Ṫ")
713  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
714    BSUnicode("Ṭ")
715  Else
716    send T
717Return
718
719
720+�::
721  If A_PriorHotkey = #^+^ ; Querstrich
722    BSUnicode("Đ")
723  Else If A_PriorHotkey = +^ ; caron
724    BSUnicode("Ď")
725  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
726    BSUnicode("Ḋ")
727  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
728    BSUnicode("Ḍ")
729  Else send D
730Return
731
732+�:: 
733  If A_PriorHotkey = #^+ ; Diaerese
734    Send {bs}�
735  Else If A_PriorHotkey = ^ ; circumflex
736    BSUnicode("Ŷ")
737  Else
738    send Y
739Return
740
741+y::send �
742+x::send �
743+c::send �
744
745+v::
746  If A_PriorHotkey = <^>!� ; punkt dar�ber
747    BSUnicode("Ṗ")
748  Else
749    send P
750Return
751
752+b:: 
753  If A_PriorHotkey = +^ ; caron 
754    BSUnicode("Ž")
755  Else If A_PriorHotkey = � ; akut
756    BSUnicode("Ź")
757  Else If A_PriorHotkey = <^>!� ; punkt dar�ber
758    BSUnicode("Ż")
759  Else
760    send Z
761Return
762
763+n::
764  If A_PriorHotkey = <^>!� ; punkt dar�ber
765    BSUnicode("Ḃ")
766  Else
767    send B
768Return
769
770+m::
771  If A_PriorHotkey = <^>!� ; punkt dar�ber
772    BSUnicode("Ṁ")
773  Else If A_PriorHotkey = <^>!+^ ; punkt darunter
774    BSUnicode("Ṃ")
775  Else
776    send M
777Return
778
779+,::send `;
780+.::send :
781
782+-::
783  If A_PriorHotkey = ^ ; circumflex
784    BSUnicode("Ĵ")
785  Else
786    send J
787Return
788
789
790;3. Ebene: Mod3
791;(Win+Ctrl)
792;----------------
793
794#^^::Unicode("˘") ; brevis, soll tot
795#^1::Unicode("¬")
796#^2::send {^}{space}
797#^3::send 3
798#^4::send �
799#^5::send � 
800#^6::send �
801#^7::send �
802#^8::send �
803#^9::send �
804#^0::send �
805#^�::Unicode("—")
806#^�::send � ; cedilla, soll tot
807
808#^q::send @
809#^w::send _
810#^e::send [
811#^r::send ]
812#^t::send {^}{space} ; untot
813#^z::sendraw !
814#^u::send <
815#^i::send >
816#^o::send `=
817#^p::send `;
818#^�::Unicode("ij")  ;ij
819#^+::Unicode("¨") ; Diaerese, soll tot
820
821#^a::send \
822#^s::send `/
823#^d::sendraw {
824#^f::sendraw }
825#^g::send *
826#^h::send ?
827#^j::send (
828#^k::send )
829#^l::send -
830#^�::send :
831#^�::send y
832
833#^y::sendraw ~
834#^x::send $
835#^c::send |
836#^v::send {#}
837#^b::send ``{space} ; untot
838#^n::send {+}
839#^m::send `%
840#^,::send {&}
841#^.::send "
842#^-::send '
843
844
845
846;4. Ebene: Mod3+Shift
847;(Win+Ctrl+Shift)
848;---------------------
849
850#^+^::send -
851#^+1::send �
852#^+2::send �
853#^+3::send �
854#^+4::send �
855#^+5::send �
856#^+6::send �
857#^+7::send �
858#^+8::send �
859#^+9::send �
860#^+0::send �
861#^+�::send �
862#^+�::Unicode("˛") ; ogonek, soll tot
863
864#^+q::Unicode("ξ")  ;xi
865#^+w::send v
866#^+e::Unicode("λ")  ;lambda
867#^+r::Unicode("χ")  ;chi
868#^+t::send w
869#^+z::Unicode("κ") ;kappa
870#^+u::Unicode("ψ") ;psi
871#^+i::Unicode("γ") ;gamma
872#^+o::Unicode("φ") ;phi
873#^+p::send q
874#^+�::Unicode("IJ") ;IJ
875#^++::send " ;doppelakut, soll tot
876
877#^+a::send u
878#^+s::Unicode("ι") ;iota
879#^+d::Unicode("α") ;alpha
880#^+f::Unicode("ε") ;epsilon
881#^+g::Unicode("ω") ;omega
882#^+h::Unicode("σ") ;sigma
883#^+j::Unicode("ν") ;nu
884#^+k::Unicode("ρ") ;rho
885#^+l::Unicode("τ") ;tau
886#^+�::Unicode("δ") ;delta
887#^+�::Unicode("υ") ;upsilon
888
889#^+y::send �
890#^+x::send �
891#^+c::Unicode("η") ;eta
892#^+v::Unicode("π") ;pi
893#^+b::Unicode("ζ") ;zeta
894#^+n::Unicode("β") ;beta
895#^+m::Unicode("μ") ;mu
896#^+,::Unicode("ϑ") ;vartheta?
897#^+.::Unicode("θ") ;theta
898#^+-::send j
899
900;#^+space::    ; gesch�tztes Leerzeichen
901
902
903
904
905;5. Ebene: Mod5
906;(AltGr)
907;-----------------
908
909<^>!^::Unicode("·") ; Mittenpunkt, tot mit l und L
910<^>!4::Send {PgUp} ;Prev
911<^>!8::Send /
912<^>!9::Send *
913<^>!0::Send -
914<^>!�::Unicode("ð") ; eth
915<^>!�::Unicode("˙") ; punkt oben dr�ber, soll tot
916
917<^>!q::Send {Esc}
918<^>!w::Send {Backspace}
919<^>!e::Send {Up}
920<^>!t::Send {Insert}
921<^>!z::Send �
922<^>!u::Send 7
923<^>!i::Send 8
924<^>!o::Send 9
925<^>!p::Send {+}
926<^>!�::Unicode("ə") ; ?
927<^>!+::Unicode("/") ; Schr�gstrich, soll tot
928
929<^>!a::Send {Home}
930<^>!s::Send {Left}
931<^>!d::Send {Down}
932<^>!f::Send {Right}
933<^>!g::Send {End}
934<^>!h::Send �
935<^>!j::Send 4
936<^>!k::Send 5
937<^>!l::Send 6
938<^>!�::Send `,
939<^>!�::Send � ; thorn
940
941
942<^>!y::Send {Tab}
943<^>!x::Send {Del}
944<^>!c::Send {PgDn} ;Next
945<^>!n::Send �
946<^>!m::Send 1
947<^>!,::Send 2
948<^>!.::Send 3
949<^>!-::Send .
950
951<^>!Space::Send 0
952;<^>!SC138::Send {NumpadDot}
953  ; geht nicht, weil sonst AltGr nur noch , macht
954
955
956
957;6. Ebene: Mod5+Shift
958;(AltGr+Shift)
959;-----------------------
960
961<^>!+^::Send . ; punkt darunter
962<^>!+4::Send +{Prev}
963<^>!+�::Unicode("Ð") ; Eth
964<^>!+�::Unicode("˚") ; ring obendrauf
965
966<^>!+q::Unicode("Ξ") ; Xi
967<^>!+w::Unicode("Λ") ; Lambda
968<^>!+e::Send +{Up}
969<^>!+r::Send �
970<^>!+t::Send +{Insert}
971<^>!+u::Unicode("Ψ") ; Phi
972<^>!+i::Unicode("Γ") ; Gamma
973<^>!+o::Unicode("Φ") ; Psi
974<^>!+�::Unicode("Ə") ; ?
975<^>!++::Unicode("ˏ") ; komma drunter, soll tot
976
977<^>!+a::Send +{Home}
978<^>!+s::Send +{Left}
979<^>!+d::Send +{Down}
980<^>!+f::Send +{Right}
981<^>!+g::Send +{End}
982<^>!+h::Unicode("Σ")  ; Sigma
983<^>!+j::Unicode("№") ; No
984<^>!+k::Unicode("®")  ; (R)
985<^>!+l::Unicode("™") ; TM
986<^>!+�::Unicode("Δ")  ; Delta
987<^>!+�::Send �         ; Thorn
988
989<^>!+y::Send +{Tab}
990<^>!+c::Send +{PgDn}
991<^>!+v::Unicode("Π") ; Pi
992<^>!+b::Unicode("Ω") ; Omega
993<^>!+.::Unicode("Θ") ; Theta
994
995
996
997;Strg/Ctrl
998;---------
999
1000^1::send ^1
1001^2::send ^2
1002^3::send ^3
1003^4::send ^4
1004^5::send ^5
1005^6::send ^6
1006^7::send ^7
1007^8::send ^8
1008^9::send ^9
1009^0::send ^0
1010
1011^q::send ^x
1012^w::send ^v
1013^e::send ^l
1014^r::send ^c
1015^t::send ^w
1016^z::send ^k
1017^u::send ^h
1018^i::send ^g
1019^o::send ^f
1020^p::send ^q
1021^�::send ^�
1022
1023^a::send ^u
1024^s::send ^i
1025^d::send ^a
1026^f::send ^e
1027^g::send ^o
1028^h::send ^s
1029^j::send ^n
1030^k::send ^r
1031^l::send ^t
1032^�::send ^d
1033^�::send ^y
1034
1035
1036^y::send ^�
1037^x::send ^�
1038^c::send ^�
1039^v::send ^p
1040^b::send ^z
1041^n::send ^b
1042^m::send ^m
1043^-::send ^j
1044
1045
1046;Alt-Ebene
1047;---------
1048
1049<!1::send !1
1050<!2::send !2
1051<!3::send !3
1052<!4::send !4
1053<!5::send !5
1054<!6::send !6
1055<!7::send !7
1056<!8::send !8
1057<!9::send !9
1058<!0::send !0
1059
1060<!q::send !x
1061<!w::send !v
1062<!e::send !l
1063<!r::send !c
1064<!t::send !w
1065<!z::send !k
1066<!u::send !h
1067<!i::send !g
1068<!o::send !f
1069<!p::send !q
1070<!�::send !�
1071
1072<!a::send !u
1073<!s::send !i
1074<!d::send !a
1075<!f::send !e
1076<!g::send !o
1077<!h::send !s
1078<!j::send !n
1079<!k::send !r
1080<!l::send !t
1081<!�::send !d
1082<!�::send !y
1083
1084<!y::send !�
1085<!x::send !�
1086<!c::send !�
1087<!v::send !p
1088<!b::send !z
1089<!n::send !b
1090<!m::send !m
1091<!-::send !j
1092
1093
1094;Win-Ebene
1095;---------
1096
1097#1::send #1
1098#2::send #2
1099#3::send #3
1100#4::send #4
1101#5::send #5
1102#6::send #6
1103#7::send #7
1104#8::send #8
1105#9::send #9
1106#0::send #0
1107#�::send #-
1108
1109#q::send #x
1110#w::send #v
1111
1112#e:: 
1113  Run,%A_WinDir%\System32\Rundll32.exe User32.dll`,LockWorkStation
1114  return
1115   ; #e::send #l  funktioniert nicht, Computer wird nicht gesperrt
1116   ; http://www.autohotkey.com/forum/viewtopic.php?p=66937#66937
1117
1118#r::send #c
1119#t::send #w
1120#z::send #k
1121#u::send #h
1122#i::send #g
1123#o::send #f
1124#p::send #q
1125#�::send #�
1126
1127#a::send #u
1128#s::send #i
1129#d::send #a
1130#f::send #e
1131#g::send #o
1132#h::send #s
1133#j::send #n
1134#k::send #r
1135#l::send #t
1136#�::send #d
1137#�::send #y
1138
1139#y::send #�
1140#x::send #�
1141#c::send #�
1142#v::send #p
1143#b::send #z
1144#n::send #b
1145#m::send #m
1146#-::send #j
1147
1148;Strg-Shift-Ebene
1149;-----------------
1150
1151^+1::send ^+1
1152^+2::send ^+2
1153^+3::send ^+3
1154^+4::send ^+4
1155^+5::send ^+5
1156^+6::send ^+6
1157^+7::send ^+7
1158^+8::send ^+8
1159^+9::send ^+9
1160^+0::send ^+0
1161
1162^+q::send ^+x
1163^+w::send ^+v
1164^+e::send ^+l
1165^+r::send ^+c
1166^+t::send ^+w
1167^+z::send ^+k
1168^+u::send ^+h
1169^+i::send ^+g
1170^+o::send ^+f
1171^+p::send ^+q
1172^+�::send ^+�
1173
1174^+a::send ^+u
1175^+s::send ^+i
1176^+d::send ^+a
1177^+f::send ^+e
1178^+g::send ^+o
1179^+h::send ^+s
1180^+j::send ^+n
1181^+k::send ^+r
1182^+l::send ^+t
1183^+�::send ^+d
1184^+�::send ^+y
1185
1186
1187^+y::send ^+�
1188^+x::send ^+�
1189^+c::send ^+�
1190^+v::send ^+p
1191^+b::send ^+z
1192^+n::send ^+b
1193^+m::send ^+m
1194^+-::send ^+j
1195
1196
1197; -----------------------------------------
1198; Nummernblock
1199; -----------------
1200;
1201; 1. Ebene
1202; NumLock On
1203; --> Zahlenblock
1204; ------------------
1205;
1206; 2. Ebene
1207; NumLock Off
1208; oder NumLock On + Shift
1209; --> Cursortasten
1210; -----------------
1211
1212; 3. Ebene
1213; NumLock on + Mod3
1214; --> Pfeile
1215; -----------------
1216
1217#^NumpadDiv::send �
1218#^NumpadMult::send �
1219#^NumpadSub::send -
1220#^NumpadAdd::send �
1221#^NumpadEnter::Unicode("�") ; neq
1222
1223#^Numpad7::Unicode("⅞")   ; 7/8
1224#^Numpad8::Unicode("↑")   ; uparrow
1225#^Numpad9::Unicode("⅜")   ; 3/8
1226#^Numpad4::Unicode("�?")   ; leftarrow
1227#^Numpad5::send �
1228#^Numpad6::Unicode("→")   ; rightarrow
1229#^Numpad1::send �
1230#^Numpad2::Unicode("↓")   ; downarrow
1231#^Numpad3::send �
1232#^Numpad0::send `%
1233#^NumPadDot::send .
1234
1235
1236
1237
1238; ---------------------------
1239; 4. Ebene
1240; NumLock off + Mod3 + Shift
1241; --> Br�che
1242; ---------------------------
1243
1244#^+NumpadDiv::Unicode("∕")   ; slash
1245#^+NumpadMult::Unicode("⋅")  ; cdot
1246#^+NumpadSub::send -           ; eig. unbelegt
1247#^+NumpadAdd::Unicode("∓")   ; -+
1248#^+NumpadEnter::Unicode("≈") ; approx
1249
1250#^+NumpadHome::Unicode("⅛")  ; 1/8
1251#^+NumpadUp::Unicode("�?")    ; 5/8
1252#^+NumpadPgUp::Unicode("⅜")  ; 3/8
1253#^+NumpadLeft::send �
1254#^+NumpadClear::send �
1255#^+NumpadRight::send �
1256#^+NumpadEnd::send �
1257#^+NumpadDown::send �
1258#^+NumpadPgDn::send �
1259#^+NumpadIns::send �
1260#^+NumPadDel::send `,
1261 
1262
1263
1264; ------------------------------
1265; 5. Ebene
1266; NumLock on + Mod5
1267; --> Br�che (genau wie Ebene 4)
1268; ------------------------------
1269
1270
1271<^>!NumpadDiv::send /
1272<^>!NumpadMult::Unicode("⋅")   ; cdot
1273<^>!NumpadSub::send -            ; eig. unbelegt
1274<^>!NumpadAdd::Unicode("∓")    ; -+
1275<^>!NumpadEnter::Unicode("≈")  ; approx
1276
1277
1278<^>!Numpad7::Unicode("⅛")  ; 1/8
1279<^>!Numpad8::Unicode("�?")  ; 5/8
1280<^>!Numpad9::Unicode("⅜")  ; 3/8
1281<^>!Numpad4::send �
1282<^>!Numpad5::send �
1283<^>!Numpad6::send �
1284<^>!Numpad1::send �
1285<^>!Numpad2::send �
1286<^>!Numpad3::send �
1287<^>!Numpad0::send �
1288<^>!NumPadDot::send `,
1289
1290
1291; ------------------------------------
1292
1293Unicode(code)
1294  {
1295  saved_clipboard := ClipboardAll
1296  Transform, Clipboard, Unicode, %code%
1297  send ^v
1298  Clipboard := saved_clipboard
1299  }
1300
1301BSUnicode(code)
1302  {
1303  saved_clipboard := ClipboardAll
1304  Transform, Clipboard, Unicode, %code%
1305  send {bs}^v
1306  Clipboard := saved_clipboard
1307  }
1308
1309
1310toggleneo:
1311   if state <>
1312   {
1313      state =
1314      menu, tray, rename, %enable%, %disable%
1315   }
1316   else
1317   {
1318      state = : Deaktiviert
1319      menu, tray, rename, %disable%, %enable%
1320   }
1321
1322   menu, tray, tip, %name%%state%
1323   suspend
1324return
1325
1326
1327help:
1328   Run, %A_WinDir%\hh mk:@MSITStore:autohotkey.chm
1329return
1330
1331
1332about:
1333   msgbox, 64, %name%,
1334   (
1335   %name%
1336   `nDas NEO-Layout ersetzt das �bliche deutsche
1337   Tastaturlayout mit der Alternative NEO,
1338   beschrieben auf http://www.neo-layout.org/.
1339   `nDazu sind keine Administratorrechte n�tig.
1340   `nWenn Autohotkey aktiviert ist, werden alle Tastendrucke
1341   abgefangen und statt dessen eine �bersetzung weitergeschickt.
1342   `nDies geschieht transparent f�r den Anwender,
1343   es muss nichts installiert werden.
1344   `nDie Zeichen�bersetzung kann leicht �ber das Icon im
1345   Systemtray deaktiviert werden.  `n
1346   )
1347return
1348
1349
1350neo:
1351   run http://www.neo-layout.org/
1352return
1353
1354autohotkey:
1355   run http://autohotkey.com/
1356return
1357
1358open:
1359   ListLines ; shows the Autohotkey window
1360return
1361
1362edit:
1363   edit
1364return
1365
1366reload:
1367   Reload
1368return
1369
1370hide:
1371   menu, tray, noicon
1372return
1373
1374exitprogram:
1375   exitapp
1376return
Note: See TracBrowser for help on using the browser.