Skip to content

Commit

Permalink
v1.1.20.00
Browse files Browse the repository at this point in the history
  • Loading branch information
Ragnar-F committed Mar 10, 2015
1 parent 3578d3a commit 1dc5628
Show file tree
Hide file tree
Showing 34 changed files with 617 additions and 119 deletions.
63 changes: 62 additions & 1 deletion AHKL_ChangeLog.htm
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,67 @@ <h1>Änderungen und neue Features</h1>
<p>Ältere Änderungen können in <a href="ChangeLogHelp.htm">Archivierte Änderungen</a> gefunden werden.</p><!--new revisions go here-->


<h2 id="v1.1.20.00">1.1.20.00 - 8. März 2015</h2>
<h4>Neue Features:</h4>
<p>Erweitert: Hotkey-, Menu-, SetTimer-, Gui- und Gui-Steuerelement-Ereignisse akzeptieren nun <a href="misc/Labels.htm#Functions">eine Funktion anstelle eines Labels</a>, wenn kein Label gefunden wird.</p>
<p>Erweitert: Hotkey-, Menu-, SetTimer-, Gui- und Gui-Steuerelement-Ereignisse akzeptieren nun ein <a href="objects/Functor.htm">Funktionsobjekt</a>. Hinzugefügt: Delete-Unterbefehl für SetTimer zum Freigeben des Objekts.</p>
<p>Erweitert: Bei <a href="commands/OnMessage.htm">OnMessage()</a> ist es nun möglich, dass eine beliebige Anzahl von Funktionen oder Funktionsobjekten eine einzelne Nachricht überwachen können.</p>
<p>Hinzugefügt: <a href="commands/OnExit.htm">OnExit()</a> und <a href="commands/OnClipboardChange.htm">OnClipboardChange()</a>, die ein Funktionsname oder -objekt akzeptieren.</p>
<p>Hinzugefügt: Hotkey-Label können nun <a href="Hotkeys.htm#Function">auf eine Funktionsdefinition verweisen</a>.</p>
<p>Hinzugefügt: <a href="commands/Format.htm#ULT">U/L/T-Modifikatoren</a> zum Umwandeln in Groß-/Kleinschreibung mit Format().</p>
<p>Hinzugefügt: <a href="commands/Input.htm#E">E-Option</a> für den Input-Befehl, um Endungszeichen als Zeichen statt als Tastencode zu behandeln.</p>
<p>Hinzugefügt: Unterstützung von ** (stderr) in FileAppend.</p>
<p>Hinzugefügt: <a href="commands/ObjBindMethod.htm">ObjBindMethod(obj, method, args*)</a> und <a href="objects/Func.htm#Bind">Func.Bind(args*)</a>. </p>

<h4>Änderungen:</h4>
<p>Geändert: AHK verhält sich nun anders, wenn das Hauptscript nicht gefunden wird:</p>
<ul>
<li>Wenn kein Script angegeben wurde und keine Standard-Script-Dateien gefunden wurden, wird die neue <a href="Welcome.htm">Willkommensseite</a> in der Hilfe-Datei angezeigt.</li>
<li>Wenn ein Script angegeben wurde oder wenn die Hilfe-Datei fehlt (oder einen anderen Namen hat als die EXE-Datei), wird nur eine Fehlermeldung angezeigt.</li>
</ul>
<p>Geändert: WinActivate wird das Fenster nun wiederherstellen, wenn es bereits aktiv, aber minimiert ist.</p>
<p>Geändert: WinActivate sucht nun nach einem sichtbaren Fenster, um es zu aktivieren, wenn DetectHiddenWindows ausgeschaltet und das aktive Fenster versteckt ist, anstatt nichts zu tun.</p>
<p>Geändert: A_CaretX/A_CaretY verwenden nun eine andere Methode zum Abrufen der Position der Texteinfügemarke.</p>
<ul>
<li>Sie geben häufiger einen leeren Wert zurück, wenn die echte Position der Texteinfügemarke nicht ermittelt werden kann, anstatt die obere linke Position des aktiven Fensters zurückzugeben.</li>
<li>Um so Nebeneffekte zu reduzieren.</li>
<li>Funktioniert auch in Konsolenfenstern.</li>
</ul>
<p>Geändert: A_OSVersion verwendet nun <a href="http://msdn.microsoft.com/en-us/library/ff561910">RtlGetVersion()</a>, um Windows 10 und hoffentlich auch zukünftige Versionen erkennen zu können.</p>
<p>Geändert: A_OSVersion gibt nun eine Versionsnummer im Format "Haupt.Neben.Build" zurück, wenn es keinen Namen für das Betriebssystem hat.</p>
<p>Geändert: Objekte unterstützen nun <code>x[,y]</code>, <code>x.y[,z]</code> und <code>x[](y)</code>.</p>
<ul>
<li>Benutzerdefinierte Objekte können das nutzen, indem man Standardwerte für Parameter von Eigenschaften und Meta-Funktionen angibt. Bei __Call wird der erste Parameter weggelassen, wie in <code>x.__Call(,y)</code>.</li>
<li>COM-Objekte rufen DISPID_VALUE auf, wenn der Elementname weggelassen wird. Zum Beispiel würde <code>x[]</code> die Standardeigenschaft von x abrufen, und mit <code>fn[]()</code> könnte man JScript-Funktionen aufrufen.</li>
</ul>
<p>Einige interne Änderungen, um Fehler zu beheben, Codegröße zu reduzieren oder Performance zu verbessern, sowie:</p>
<ul>
<li>Änderungen, wie #if und statische Variableninitialisierungen beim Laden geparst werden.</li>
<li>Änderungen, wie { Blöcke } beim Laden geparst werden.</li>
</ul>

<h4>Fehlerbehebungen:</h4>
<p>Behoben: VK-zu-Tastenname-Umwandlungen für die Tasten von 'A' bis 'Z' berücksichtigen nun das Tastaturlayout.</p>
<ul>
<li>Betrifft: GetKeyName, Hotkey-Steuerelement, A_PriorKey, KeyHistory und Input EndKey ErrorLevel (außer wo UMSCHALT-Taste benötigt wird).</li>
<li>Alle anderen Tasten, einschließlich solche, die Nicht-ASCII-Buchstaben erzeugen, wurden bereits auf Basis von AutoHotkey's aktuellem Tastaturlayout umgewandelt.</li>
</ul>
<p>Behoben: FileAppend's * (stdout) berücksichtigt nun den Codierung-Parameter, anstatt immer ANSI-Text auszugeben.</p>
<p>Behoben: Auto-Skalierung von GUIs mit nur einem Scrollbalken.</p>
<p>Behoben: <code>Exception(m, n)</code> verursachte einen Absturz, wenn n sehr weit die Grenzen überschritten hat.</p>
<p>Behoben: GuiContextMenu setzt A_GuiEvent nun korrekt in x64.</p>
<p>Behoben: FileGetSize übergab manchmal ein unbestimmtes Ergebnis, wenn die Datei nicht existiert oder nicht geöffnet werden kann.</p>
<p>Behoben: Thread-Unterbrechungen speichern und stellen ErrorLevel besser wieder her, wodurch folgendes behoben wird:</p>
<ul>
<li>Kürzen von Strings länger als 127 Zeichen.</li>
<li>Verwerfen von Objekten.</li>
<li>Unterbrechungen durch Timer ließen manchmal ErrorLevel im hexadezimalen Format zurückgeben.</li>
</ul>
<p>Behoben: ControlClick-Pos-Modus ignoriert nun deaktivierte Steuerelemente.</p>
<p>Behoben: Merkwürdiges Verhalten, wenn Gui +MaxSize kleiner als +MinSize ist.</p>
<p>Behoben: GuiControl/Get benötigte einen Gui-Namen, wenn ein Steuerelement-HWND angegeben wurde.</p>
<p>Behoben: Meta-Funktionen beeinträchtigten Zeilennummern, die von Exception() gemeldet werden.</p>

<h2 id="v1.1.19.03">1.1.19.03 - 11. Februar 2015</h2>
<p>Verbessert: Neubelegung erlaubt nun <code>scXXX::Y</code>, wenn das aktuelle Tastaturlayout das <code>ScXXX</code> nicht einem VK-Code zugeordnet hat. Allerdings muss <code>Y</code> noch auf dem aktuellen Tastaturlayout vorhanden sein.</p>
<p>Behoben: <code>break n</code> funktioniert nun korrekt, wenn <code>until</code> vorhanden ist, anstatt den Thread zu beenden.</p>
Expand Down Expand Up @@ -875,7 +936,7 @@ <h2 id="L35">Revision 35 - 25. Oktober 2009</h2>

<h2 id="L34">Revision 34 - 24. Oktober 2009</h2>
<p>Geändert: Das Setzen eines Wertes auf einen leeren String innerhalb eines Objekts speichert nun den leeren String, anstatt das Key-Value-Paar vom Objekt zu entfernen. _Remove kann weiterhin verwendet werden, um Key-Value-Paare vollständig zu entfernen.</p>
<p>Geändert: Befehlsnamen müssen mit einem Leerzeichen, Tabulator oder Komma terminiert werden. Die folgenden Zeichen umgehen nicht länger diese Anforderung: <span class="Code">&lt;&gt;:+-*/!~&amp;|^[]</span>. Zum Beispiel werden Syntaxfehler wie <span class="Code">MsgBox&lt; foo</span> und <code>If!foo</code> nun bei der Ladezeit abgefangen.</p>
<p>Geändert: Befehlsnamen müssen mit einem Leerzeichen, Tabulator oder Komma terminiert werden. Die folgenden Zeichen umgehen nicht länger diese Anforderung: <code>&lt;&gt;:+-*/!~&amp;|^[]</code>. Zum Beispiel werden Syntaxfehler wie <code>MsgBox&lt; foo</code> und <code>If!foo</code> nun bei der Ladezeit abgefangen.</p>
<p>Behoben: Return behandelt nun Ausdrücke korrekt, wodurch eine Variable ein Objekt enthalten kann. Zum Beispiel sollte <code>Return x:=y</code>, <code>Return (x)</code>, <code>Return x,...</code> und ähnliches nun richtig funktionieren (<code>Return x</code> hat bereits funktioniert).</p>
<p>Behoben: Multi-Parameter get/set unterstützte Meta-Funktionen für mehrere Objekte nicht richtig (wie z. B. für <code>x</code> <i>und</i> <code>x[y]</code> im Ausdruck <code>x[y,z]</code>).</p>
<p>Behoben: Hintereinanderfolgende Objektzuweisungen wie z. B. <code>x[y]:=z</code> in <code>r:=x[y]:=z</code> ergaben keine Zahlen oder Objekte - fehlerhaft seit L33.</p>
Expand Down
2 changes: 1 addition & 1 deletion AutoHotkey.htm
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<body>

<a id="ahklogo" href="./"><img src="static/ahk_logo.png" border="0" alt="AutoHotkey"></a>
<h1>Version <a href="AHKL_ChangeLog.htm">v<!--ver-->1.1.19.03<!--/ver--></a></h1>
<h1>Version <a href="AHKL_ChangeLog.htm">v<!--ver-->1.1.20.00<!--/ver--></a></h1>
<p>Eine deutsche &Uuml;bersetzung von <a href="http://ahkscript.org/docs/">http://ahkscript.org/docs/</a> (siehe <a href="http://ahkscript.org/boards/viewtopic.php?f=9&amp;t=43">hier</a> f&uuml;r mehr Details).</p>
<p>©2003-2014 Chris Mallett, und zum Teil ©<a href="http://www.autoitscript.com/">AutoIt-Team</a> und die AHK-Community</p>
<p style="font-size:85%">Software-Lizenz: <a href="license.htm">GNU General Public License</a></p>
Expand Down
24 changes: 24 additions & 0 deletions Hotkeys.htm
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ <h2>Inhaltsverzeichnis</h2>
<li><a href="#Features">Benutzerdefinierte Kombinationen und Sonstige Features</a></li>
<li><a href="#Wheel">Mausrad-Hotkeys</a></li>
<li><a href="#Remarks">Tipps und Hinweise</a></li>
<li><a href="#AltTabDetail">Alt-Tab-Hotkeys</a></li>
<li><a href="#Function">Funktions-Hotkeys</a></li>
</ul>

<h2 id="Intro">Einführung und einfache Beispiele</h2>
Expand Down Expand Up @@ -174,6 +176,7 @@ <h2 id="Wheel">Mausrad-Hotkeys</h2>
SendMessage, 0x114, 1, 0, %fcontrol%, A <em>; 0x114 ist WM_HSCROLL und die 1 danach SB_LINERIGHT.</em>
return</pre>
<p>Da Mausrad-Hotkeys nur Ereignisse beim Drücken erzeugen (nie beim Loslassen), können sie nicht als Hotkeys verwendet werden, die das Wort <a href="#keyup">"UP"</a> enthalten.</p>

<h2 id="Remarks">Tipps und Hinweise</h2>
<p>Jede Ziffernblocktaste kann dazu gebracht werden, je nach Status der NUM-Taste zwei verschiedene Hotkey-Subroutinen zu starten. Alternativ kann man eine Ziffernblocktaste auch dazu bringen, die gleiche Subroutine zu starten, unabhängig vom Status der NUM-Taste. Zum Beispiel:</p>
<pre>NumpadEnd::
Expand Down Expand Up @@ -203,6 +206,7 @@ <h2 id="Remarks">Tipps und Hinweise</h2>
<p>Ein Hotkey-Label kann als Ziel von <a href="commands/Gosub.htm">Gosub</a> oder <a href="commands/Goto.htm">Goto</a> verwendet werden. Zum Beispiel: <code>Gosub ^!s</code>.</p>
<p>Häufig werden Hotkeys dazu verwendet, eine wiederholende Aktion zu starten und zu stoppen, wie z. B. mehrere Tastatureingaben oder Mausklicks. Ein Beispiel dazu findet man in <a href="FAQ.htm#repeat">diesem FAQ-Thema</a>.</p>
<p>Jedes Script kann aus <a href="misc/Threads.htm">mehreren Threads</a> bestehen, wodurch es möglich ist, dass ein neuer Hotkey gestartet werden kann, obwohl eine vorherige Hotkey-Subroutine noch läuft. Zum Beispiel können neue Hotkeys gestartet werden, während eine <a href="commands/MsgBox.htm">MsgBox</a> mit dem aktuellen Hotkey angezeigt wird.</p>

<h2 id="AltTabDetail">Alt-Tab-Hotkeys</h2>
<p>Jeder Alt-Tab-Hotkey muss eine Kombination von zwei Tasten sein, das üblicherweise mit einem Und-Zeichen (&amp;) erreicht werden kann. Im folgenden Beispiel kann man die rechte ALT-Taste gedrückt halten und J oder K drücken, um das Alt-Tab-Menü durchzuschalten:</p>
<pre>RAlt &amp; j::AltTab
Expand Down Expand Up @@ -232,5 +236,25 @@ <h2 id="AltTabDetail">Alt-Tab-Hotkeys</h2>
IfWinExist ahk_class #32771
Send {Escape}{Alt up} <em>; Schließt das Menü, ohne das ausgewählte Fenster zu aktivieren.</em>
return</pre>

<h2 id="Function">Funktions-Hotkeys <span class="ver">[v1.1.20+]</span></h2>
<p>Es ist möglich, einem oder mehreren Hotkeys eine <a href="Functions.htm">Funktion</a> zuzuweisen, indem man sie wie folgt einfach direkt unter dem Hotkey-Label definiert:</p>
<pre><em>; STRG+UMSCHALT+O, um den enthaltenen Ordner im Explorer zu öffnen.
; STRG+UMSCHALT+E, um den Ordner zu öffnen und darin die aktuelle Datei zu markieren.
; Unterstützt SciTE und Notepad++.</em>
^+o::
^+e::
editor_ordner_öffnen() {
WinGetTitle, pfad, A
if RegExMatch(pfad, "\*?\K(.*)\\[^\\]+(?= [-*] )", pfad)
if (FileExist(pfad) &amp;&amp; A_ThisHotkey = "^+e")
Run explorer.exe /select`,"%pfad%"
else
Run explorer.exe "%pfad1%"
}</pre>
<p>Es dürfen nur Leerraumzeichen, Kommentare oder Direktiven zwischen den Hotkey-Labeln oder Labeln und der Funktion vorkommen. Es werden keine Labels erstellt, wenn Hotkeys auf diese Weise definiert werden; allerdings endet der <a href="Scripts.htm#auto">automatische Ausführungsbereich</a> beim ersten Hotkey, selbst wenn ihm eine Funktion zugewiesen wurde.</p>
<p>Das Verwenden einer Funktion hat den Vorteil, dass lokale Variablen verwendet werden können, um so Konflikte zu vermeiden, wenn zwei oder mehr Hotkeys die gleichen Variablennamen für unterschiedliche Zwecke verwenden. Außerdem fördert es selbstdokumentierende Hotkeys, wie im Code oben, wo der Funktionsname den Hotkey beschreibt.</p>
<p>Mit dem <a href="commands/Hotkey.htm">Hotkey</a>-Befehl kann man auch eine Funktion oder ein Funktionsobjekt einem Hotkey zuweisen.</p>

</body>
</html>
Loading

0 comments on commit 1dc5628

Please sign in to comment.