Changeset 72
- Timestamp:
- 04/16/07 22:43:51 (6 years ago)
- Files:
-
- 1 modified
-
windows/XP/autohotkey/neo20.ahk (modified) (23 diffs)
Legend:
- Unmodified
- Added
- Removed
-
windows/XP/autohotkey/neo20.ahk
r70 r72 1 ;; 2 ;; NoAdmin-NEO -- Simon Griph, 2004 3 ;; 1 /* 2 NEO-Layout 3 nach NoAdmin-Svorak von Simon Griph, 2004 4 3./4. Ebene funktioniert nur �ber AltGr, nicht �ber CapsLock 5 5./6. Ebene noch gar nicht 6 */ 4 7 5 8 ;#InstallKeybdHook 6 #singleinstance force 7 #persistent 8 #notrayicon 9 ;#singleinstance force 10 ;#notrayicon 9 11 #hotkeyinterval 1024 10 12 #maxhotkeysperinterval 64 11 setstorecapslockmode, o ff12 13 name = NEO-Layout13 setstorecapslockmode, on 14 15 name = &NEO-Layout 14 16 enable = Aktiviere &NEO 15 17 disable = Deaktiviere &NEO 16 ctrls = &Strg Standard18 ;ctrls = &Strg Standard 17 19 18 20 regread, inputlocale, HKEY_CURRENT_USER, Keyboard Layout\Preload, 1 19 regread, inputlocalealias, HKEY_CURRENT_USER, Keyboard Layout\Substitutes, inputlocale21 regread, inputlocalealias, HKEY_CURRENT_USER, Keyboard Layout\Substitutes, %inputlocale% 20 22 if inputlocalealias <> 21 inputlocale = inputlocalealias23 inputlocale = %inputlocalealias% 22 24 if inputlocale <> 00000407 23 25 { 24 26 suspend 25 regread, inputlocale, HKEY_LOCAL_MACHINE, SYSTEM\CurrentControlSet\Control\Keyboard Layouts\ inputlocale, Layout Text26 msgbox, 48, Warning!, Incompatible keybord layout: `n`n "inputlocale" `n`nGerman QWERTZ has to be the standardlayout for `n nameworks as expected. `n`nChange the standard layout under control panel `n-> Local and language settings `n-> Language -> Information... `n27 regread, inputlocale, HKEY_LOCAL_MACHINE, SYSTEM\CurrentControlSet\Control\Keyboard Layouts\%inputlocale%, Layout Text 28 msgbox, 48, Warning!, Incompatible keybord layout: `n`n "inputlocale" `n`nGerman QWERTZ has to be the standardlayout for `n%name% works as expected. `n`nChange the standard layout under control panel `n-> Local and language settings `n-> Language -> Information... `n 27 29 exitapp 28 30 } 29 31 30 32 stringtrimright, inifile, a_scriptname, 4 31 inifile = inifile.ini32 iniread, firstrun, inifile, environment, firstRun, on33 inifile = %inifile%.ini 34 iniread, firstrun, %inifile%, environment, firstRun, on 33 35 if firstrun <> off 34 36 { 35 iniwrite, off, inifile, environment, firstRun37 iniwrite, off, %inifile%, environment, firstRun 36 38 gosub help 37 39 } 38 40 39 menu, tray, nostandard 40 menu, tray, add, disable, toggleneo 41 menu, tray, default, disable 42 ;menu, tray, add, ctrls, togglectrl 41 ;menu, tray, nostandard 42 menu, tray, add 43 menu, tray, add, %disable%, toggleneo 44 menu, tray, default, %disable% 45 ;menu, tray, add, %ctrls%, togglectrl 43 46 menu, helpmenu, add, &Hilfe, help 44 47 menu, helpmenu, add 45 48 menu, helpmenu, add, http://&autohotkey.com/, autohotkey 46 49 menu, helpmenu, add, http://www.eigenheimstrasse.de:8668/space/Computerecke/NEO-Tastaturlayout, neo 47 menu, helpmenu, add, http://aoeu.&info/, aoeu50 ;menu, helpmenu, add, http://aoeu.&info/, aoeu 48 51 menu, tray, add, &Dokumentation, :helpmenu 49 52 menu, tray, add 50 53 menu, tray, add, Nicht &im &Systray &anzeigen, hide 51 menu, tray, add, NEO beenden, exitprogram 52 menu, tray, tip, NEO 53 54 iniread, scc, inifile, environment, neoCtrlChars, on 55 ;gosub, setctrl 54 menu, tray, add, %name% beenden, exitprogram 55 menu, tray, tip, %name% 56 57 /* 58 iniread, scc, %inifile%, environment, neoCtrlChars, on 59 gosub, setctrl 56 60 menu, tray, icon 57 61 blockinput, send 62 */ 63 64 /* 65 ;Senden von Unicode: 66 Hotkey:: 67 MyUTF_String = {ASC xy} 68 Gosub Unicode 69 return 70 */ 71 72 73 ; F�r 3. und 4. Ebene: 74 ; nach http://www.autohotkey.com/forum/topic5370.html 75 ; CapsLock und # werden zu AltGr: 76 ; [this didn't work: *CapsLock::Send {LCtrl} ] 77 78 *CapsLock:: 79 *SC02B:: 80 Send {RAlt Down} 81 Send {LControl Down} 82 return 83 84 *CapsLock Up:: 85 *SC02B Up:: 86 Send {RAlt Up} 87 Send {LControl Up} 88 return 89 90 ; F�r 5. und 6. Ebene: 91 ; < und AltGr werden zu LCtrl + RCtrl: 92 /* 93 *SC056:: 94 *SC138:: 95 Send {LControl Down} 96 Send {RControl Down} 97 return 98 99 *SC056 Up:: 100 *SC138 Up:: 101 Send {LControl Up} 102 Send {RControl Up} 103 return 104 */ 58 105 59 106 #usehook on … … 62 109 ;--------- 63 110 64 SC029::send {^} ; 111 SC029::send {^} ;tot 65 112 1::send 1 66 113 2::send 2 … … 73 120 9::send 9 74 121 0::send 0 75 �::send - 76 SC00D::send {�} ; 122 �::send - ; Bind, Unicode? 123 SC00D::send {�} ;tot 77 124 78 125 q::send x … … 87 134 p::send q 88 135 �::send � 89 SC01B::send {~} ; 136 SC01B::send {~} ;soll tot, ist aber nicht -> extra definieren? 90 137 91 138 a::send u … … 100 147 �::send d 101 148 �::send y 102 ;SC02B (#) wird zu Mod5 103 149 ;SC02B (#) wird zu AltGr 150 151 ;SC056 (<) wird zu Mod5 104 152 y::send � 105 153 x::send � … … 109 157 n::send b 110 158 m::send m 111 SC033::send {,}159 SC033::send `, 112 160 SC034::send . 113 161 SC035::send j … … 116 164 ;--------- 117 165 118 +SC029::send {^} ; 119 +1::send � ; 120 +2::send 2 ; 166 +SC029:: ;? 167 ; 030C passiert bei mir nichts - 02C7 w�re untot, geht auch nicht 168 MyUTF_String = {ASC 2C7} 169 Gosub Unicode 170 return 171 172 +1::send � 173 +2::send 2 121 174 +3::send � 122 175 +4::send $ 123 176 +5::send � 124 177 +6::send � 125 +7::send � ; 178 +7::send � ; wo ist Unterschied zu +1? 126 179 +8::send � 127 180 +9::send � 128 181 +0::send � 129 +�::send � 130 +SC00D::send {�} ;182 +�::send � ; Ged, Unicode? 183 +SC00D::send `` 131 184 132 185 +q::send X … … 141 194 +p::send Q 142 195 +�::send � 143 +SC01B::send - ; 196 197 +SC01B:: ; Macron?? sollte tot sein... 198 MyUTF_String = {ASC 0175} 199 Gosub Unicode 200 return 144 201 145 202 +a::send U … … 154 211 +�::send D 155 212 +�::send Y 156 ; +SC02B::send {#}213 ;SC02B (#) wird zu AltGr 157 214 158 215 +y::send � … … 163 220 +n::send B 164 221 +m::send M 165 +SC033::send {;}222 +SC033::send `; 166 223 +SC034::send : 167 224 +SC035::send J … … 169 226 ;3. Ebene (AltGr) 170 227 ;--------- 171 <^>!SC029::send ? ; 172 <^>!1::send � 173 <^>!2::send ^ 174 <^>!3::send 3 175 <^>!4::send � 176 <^>!5::send � 177 <^>!6::send � 178 <^>!7::send � 228 229 <^>!SC029::send ? ; Siehe 2. Ebene 230 <^>!1:: ; � 231 MyUTF_String = {ASC 172} 232 Gosub Unicode 233 return 234 235 <^>!2::send ^ ; 236 <^>!3::send 3 ; 237 <^>!4::send � ; 238 <^>!5::send � ; 239 <^>!6::send � ; 240 <^>!7::send � ; 179 241 <^>!8::send � 180 242 <^>!9::send � 181 243 <^>!0::send � 182 <^>!�::send � 244 <^>!�::send � ; soll ganz langer Strich sein 183 245 <^>!SC00D::send � ; 184 246 185 <^>!q::send @ 247 <^>!q::send @ 186 248 <^>!w::send _ 187 249 <^>!e::send [ … … 189 251 <^>!t::send {^} 190 252 <^>!z::send {!} 191 <^>!u::send {<}192 <^>!i::send {>}193 <^>!o::send =194 <^>!p::send {;}195 <^>!�::send ? 253 <^>!u::send < 254 <^>!i::send > 255 <^>!o::send `= 256 <^>!p::send `; 257 <^>!�::send ? ; 196 258 <^>!SC01B::send ? ; 197 259 198 260 <^>!a::send \ 199 261 <^>!s::send / 200 <^>!d::send {201 <^>!f::send }262 <^>!d::sendraw { 263 <^>!f::sendraw } 202 264 <^>!g::send * 203 265 <^>!h::send ? … … 207 269 <^>!�::send : 208 270 <^>!�::send y 209 ;SC02B (#) wird zu Mod5271 ;SC02B (#) wird zu AltGr 210 272 211 273 <^>!y::send ~ … … 213 275 <^>!c::send | 214 276 <^>!v::send {#} 215 <^>!b::send {`}277 <^>!b::send `` ; tot, soll der untot sein? 216 278 <^>!n::send {+} 217 <^>!m::send 0/0 ;279 <^>!m::send `% 218 280 <^>!SC033::send {&} 219 281 <^>!SC034::send " … … 225 287 226 288 <^>!+SC029::send � ; 227 <^>!+1::send � 289 <^>!+1::send � ; 228 290 <^>!+2::send � 229 291 <^>!+3::send � 230 <^>!+4::send � 231 <^>!+5::send � 232 <^>!+6::send � 233 <^>!+7::send � 234 <^>!+8::send � 235 <^>!+9::send � 236 <^>!+0::send � 237 <^>!+�::send � 292 <^>!+4::send � ; 293 <^>!+5::send � ; 294 <^>!+6::send � ; 295 <^>!+7::send � ; 296 <^>!+8::send � ; 297 <^>!+9::send � ; 298 <^>!+0::send � ; 299 <^>!+�::send � ; 238 300 <^>!+SC00D::send � ; 239 301 … … 262 324 <^>!+�::send ? 263 325 <^>!+�::send ? 264 ;SC02B (#) wird zu Mod5326 ;SC02B (#) wird zu AltGr 265 327 266 328 <^>!+y::send � … … 278 340 ;--------- 279 341 280 SC02B & a:: 281 CapsLock & a:: 282 send Pos1 283 return 284 342 <>^4::Send 5 343 344 ;SC056 & 8:: 345 ;RAlt & 8:: 346 ;Send {/} 347 ;return 348 349 ;SC056 & 9:: 350 ;RAlt & 9:: 351 ;Send {*} 352 ;return 353 354 ;SC056 & 0:: 355 ;RAlt & 0:: 356 ;Send {-} 357 ;return 358 359 360 ;SC056 & q:: 361 ;RAlt & q:: 362 ;Send {Esc} 363 ;return 364 365 ;SC056 & w:: 366 ;RAlt & w:: 367 ;Send {Backspace} 368 ;return 369 370 ;SC056 & e:: 371 ;RAlt & e:: 372 ;Send {Up} 373 ;return 374 375 ;SC056 & t:: 376 ;RAlt & t:: 377 ;Send {Insert} 378 ;return 379 380 ;SC056 & z:: 381 ;RAlt & z:: 382 ;Send {�} 383 ;return 384 385 ;SC056 & u:: 386 ;RAlt & u:: 387 ;Send {7} 388 ;return 389 390 ;SC056 & i:: 391 ;RAlt & i:: 392 ;Send {8} 393 ;return 394 395 ;SC056 & o:: 396 ;RAlt & o:: 397 ;Send {9} 398 ;return 399 400 ;SC056 & p:: 401 ;RAlt & p:: 402 ;Send {+} 403 ;return 404 ; 405 ;SC056 & �:: 406 ;RAlt & �:: 407 ;Send {?} 408 ;return 409 410 411 ;SC056 & a:: 412 ;RAlt & a:: 413 ;Send {Home} 414 ;return 415 416 ;SC056 & s:: 417 ;RAlt & s:: 418 ;Send {Left} 419 ;return 420 421 ;SC056 & d:: 422 ;RAlt & d:: 423 ;Send {Down} 424 ;return 425 426 ;SC056 & f:: 427 ;RAlt & f:: 428 ;Send {Right} 429 ;return 430 431 ;SC056 & g:: 432 ;RAlt & g:: 433 ;Send {End} 434 ;return 435 436 ;SC056 & h:: 437 ;RAlt & h:: 438 ;Send {�} 439 ;return 440 441 ;SC056 & j:: 442 ;RAlt & j:: 443 ;Send {4} 444 ;return 445 446 ;SC056 & k:: 447 ;RAlt & k:: 448 ;Send {5} 449 ;return 450 451 ;SC056 & l:: 452 ;RAlt & l:: 453 ;Send {6} 454 ;return 455 456 ;SC056 & �:: 457 ;RAlt & �:: 458 ;Send {,} 459 ;return 460 461 ;SC056 & �:: 462 ;RAlt & �:: 463 ;Send {�} 464 ;return 465 466 ;SC056 & y:: 467 ;RAlt & y:: 468 ;Send {Tab} 469 ;return 470 471 ;SC056 & x:: 472 ;RAlt & x:: 473 ;Send {Del} 474 ;return 475 476 ;SC056 & c:: 477 ;RAlt & c:: 478 ;Send {PgDn} 479 ;return 480 481 ;SC056 & n:: 482 ;RAlt & n:: 483 ;Send {�} 484 ;return 485 486 ;SC056 & m:: 487 ;RAlt & m:: 488 ;Send {1} 489 ;return 490 491 ;SC056 & SC033:: 492 ;RAlt & SC033:: 493 ;Send {2} 494 ;return 495 496 ;SC056 & SC034:: 497 ;RAlt & SC034:: 498 ;Send {3} 499 ;return 500 501 ;SC056 & SC035:: 502 ;RAlt & SC035:: 503 ;Send {.} 504 ;return 505 506 ;6. Ebene (Mod5 & Shift) 507 ;----------------------- 508 509 ;+SC056 & b:: 510 ;+RAlt & b:: 511 ;Send m 512 ;return 285 513 286 514 … … 326 554 ^�::send ^d 327 555 ^�::send ^y 328 ;SC02B (#) wird zu Mod5556 ;SC02B (#) wird zu AltGr 329 557 330 558 ^y::send ^� … … 380 608 !�::send {altdown}d 381 609 !�::send {altdown}y 382 ;SC02B (#) wird zu Mod5610 ;SC02B (#) wird zu AltGr 383 611 384 612 !y::send {altdown}� … … 434 662 #�::send #d 435 663 #�::send #y 436 ;SC02B (#) wird zu Mod5664 ;SC02B (#) wird zu AltGr 437 665 438 666 #y::send #� … … 488 716 ^+�::send ^+d 489 717 ^+�::send ^+y 490 ;SC02B (#) wird zu Mod5718 ;SC02B (#) wird zu AltGr 491 719 492 720 ^+y::send ^+� … … 508 736 return 509 737 738 Unicode: 739 ; Place Unicode text onto the clipboard: 740 Transform, Clipboard, Unicode, %MyUTF_String% 741 ; Retrieve the clipboard's Unicode text as a UTF-8 string: 742 Transform, OutputVar, Unicode 743 Send %OutputVar% 744 return 745 510 746 toggleneo: 511 747 if state <> 512 748 { 513 749 state = 514 menu, tray, rename, enable, disable515 menu, tray, enable, ctrls750 menu, tray, rename, %enable%, %disable% 751 menu, tray, enable, %ctrls% 516 752 } 517 753 else 518 754 { 519 755 state = : Inaktiverad 520 menu, tray, rename, disable, enable521 menu, tray, disable, ctrls756 menu, tray, rename, %disable%, %enable% 757 menu, tray, disable, %ctrls% 522 758 } 523 759 524 menu, tray, tip, namestate760 menu, tray, tip, %name%%state% 525 761 suspend 526 762 return … … 531 767 else 532 768 scc = on 533 iniwrite, scc, inifile, environment, neoCtrlChars 534 ; gosub, setctrl 769 iniwrite, %scc%, %inifile%, environment, svorakCtrlChars 770 gosub, setctrl 771 return 772 773 setctrl: 774 if scc <> off 775 menu, tray, uncheck, %ctrls% 776 else 777 menu, tray, check, %ctrls% 535 778 return 536 779 537 780 538 781 help: 539 msgbox, 64, name, NEO-Layout ohne Administratorrechte. `n`n nameersetzt das �bliche deutsche `nTastaturlayout mit der Alternative NEO, `nbeschrieben auf http://www.de. `n`nWenn Autohotkey aktiviert ist, werden alle Tastendrucke `nabgefangen und statt dessen eine �bersetzung weitergeschickt. `nDies geschieht transparent f�r den Anwender, `nes muss nichts installiert werden. `n`nDie Zeichen�bersetzung kann leicht �ber ein Icon im `nSystemtray deaktiviert werden. `nAu�erdem kann dort ausgew�hlt werden, ob die Strg-Tasten `nebenfalls �bersetzt werden sollen. `n`n`nSimon Griph, 2004-10-25 `n782 msgbox, 64, name, NEO-Layout ohne Administratorrechte. `n`n%name% ersetzt das �bliche deutsche `nTastaturlayout mit der Alternative NEO, `nbeschrieben auf http://www.de. `n`nWenn Autohotkey aktiviert ist, werden alle Tastendrucke `nabgefangen und statt dessen eine �bersetzung weitergeschickt. `nDies geschieht transparent f�r den Anwender, `nes muss nichts installiert werden. `n`nDie Zeichen�bersetzung kann leicht �ber ein Icon im `nSystemtray deaktiviert werden. `nAu�erdem kann dort ausgew�hlt werden, ob die Strg-Tasten `nebenfalls �bersetzt werden sollen. `n`n`nSimon Griph, 2004-10-25 `n 540 783 return 541 784
