Deaktivieren Sie als Auto in Chrome die Rücktaste mithilfe von AutoHotKey

753
DiMono

Ich versuche, AutoHotKey zu verwenden, um den Rückschrittschlüssel in Chrome zu reparieren. Mein erster Versuch verwendete die folgende Lösung aus dieser Frage :

#IfWinActive, ahk_class Chrome_WidgetWin_1 BackSpace::Send,  

Es funktioniert, aber es hindert mich leider auch daran, Text in einem input/ auszuwählen textareaund alles mit der Rücktaste zu entfernen. Also suchte ich nach einem Weg, um Fälle auszuschließen, bei denen sich der Cursor in einem dieser Bereiche befindet. Ich fand dann diese Antwort, mit einem Skript zum Ändern des Fenstertitels in einem input/ textareaund dem folgenden AHK-Skript, um dieses Titel-Update zu verwenden:

SetTitleMatchMode, RegEx  #x:: ; normal hotkey ; do something return  #IfWinActive, \[AHK\] - Google Chrome$ #x:: ; input/textarea focus hotkey ; do something return  #IfWinActive 

Ich habe versucht, die beiden zu mischen, damit ich das Verhalten von Backspace in einem Chrome-Fenster neu schreiben kann, das nicht endet [AHK] - Google Chrome, aber ich war bisher nicht erfolgreich. Ich habe das Gefühl, dass ich sehr nahe bin und etwas verpasst, aber ich bin ein absoluter Neuling bei AHK und habe keine Ahnung, wohin ich gehen soll. Nachdem ich mich mit dem obigen Code eingemischt habe und online gesucht habe, habe ich hier folgendes:

SetTitleMatchMode 2 ; partial title matches  IfWinActive, ahk_class Chrome_WidgetWin_1 ; identify Chrome { #BackSpace:: If WinActive("[AHK] - Google Chrome") ; identify when within text element { return } else { Send,  } } 

Ich denke, ich sollte in der Lage sein, dies mit einer einzigen IfWinActiveAnweisung zu bewerkstelligen, in der Chrome enthalten ist und das [AHK] -Zubehör ausgeschlossen wird, aber die Dokumente geben keine Beispiele für das Hinzufügen der anderen Parameter über den ersten hinaus, und meine eigenen Versuche wurden unternommen zwecklos. Jede Hilfe wäre sehr dankbar. Wenn es auch eine Möglichkeit gibt, die Adressleiste auf ähnliche Weise auszuschließen, wäre das stellar.

1

1 Antwort auf die Frage

1
adaaaam
#ifWinActive, ahk_class Chrome_WidgetWin_1  bs:: clipboard = ; Clear clipboard send ^c ; Copy any selected text if clipboard = ; If nothing is selected send  send  return  #ifWinActive 
Das ist ordentlich, aber leider tritt das Problem, das ich anspreche, unter bestimmten Bedingungen auch in einem Textfeld auf. Ich muss feststellen, ob der Cursor in einem Textfeld steht und * Text ausgewählt ist. In diesem Fall sollte ich anstelle von senden. DiMono vor 10 Jahren 0
Mir wurde gerade klar, dass ich nicht weiß, was Ihr ursprünglicher Grund für die AHK ist. Deshalb muss ich fragen, ob in Chrome die Rücktaste in Textfeldern gedrückt wird und der Browser zurück navigiert. adaaaam vor 10 Jahren 0
Es ist. Rückschritt ist entweder immer oder meistens (AHK bei der Arbeit), auch wenn ich versuche, Text zu löschen, den ich geschrieben habe. Es ist besonders frustrierend, wenn ich so etwas wie Town of Salem spiele, wo ein großer Teil des Spiels gerade tippt und wenn ich die Rücktaste drücke, werde ich tatsächlich aus dem Spiel genommen. DiMono vor 10 Jahren 0
Okay, ich habe den Code so aktualisiert, dass zuerst geprüft wird, ob etwas ausgewählt wurde. adaaaam vor 10 Jahren 0