Autohotkey-Skript funktioniert nur, wenn jedes Mal eine neue Editor-Datei erstellt wird

0

Ich habe sehr wenig Erfahrung mit AHK, aber nach einigem Ausprobieren habe ich es geschafft, ein Skript zu schreiben, das mir jede Menge Zeit gespart hat. Irgendwie hat es aufgehört zu funktionieren, und jetzt, da ich versuche, es zu beheben, bin ich ratlos über das Verhalten von AHK, da es nur funktioniert, wenn ich das Skript auffordere, jedes Mal eine neue Notepad-Datei zu erstellen, anstatt sie wiederzuverwenden.

Also ... mein ursprüngliches Skript erlaubte mir, Zeilen zu einem existierenden tabulatorgetrennten Glossar von Begriffen in Notepad hinzuzufügen (Dateiname: "Lexikon"). Ich würde einen Begriff in Chrome markieren und #s (für "Quelle") drücken, und mein Begriff würde in mein Glossar kopiert, gefolgt von einem Tabulator. dann würde ich den übersetzten Begriff markieren und #t (für "Ziel") drücken, und er würde rechts von der Registerkarte kopiert, den Cursor in die nächste Zeile bewegen und den Notizblock minimieren. Dies ist mein ursprüngliches Skript:

Original Ahk-Skript

Ich habe es monatelang gerne benutzt, bis es eines Tages nicht mehr funktionierte. Ich habe versucht, herauszufinden, was daran falsch ist, und konnte feststellen, dass der Fehler in der Notepad-Datei liegt. Wenn statt

 Winactivate, lexicon - Notepad

ich benutze

 run Notepad
 WinActivate Notepad

es wird eine neue Editor - Datei jedes Mal , wenn ich # s drücken, und fügen Sie den markierten Begriff zu, zu erstellen , das ist irgendwie , was ich will es außer zu tun, dass ich es brauche in meiner bestehenden „Lexikon“ Datei geschehen, statt Kopieren jedes Begriffs in eine neue, separate Instanz von Notepad.

Kann mir jemand helfen, diese Gremlins herauszufinden?

Vielen Dank!!!

Iza

IzaO
quelle
Haben Sie versucht mit Winactivate, lexicon.txt - Notepad(vorausgesetzt, es hat eine .txtErweiterung)? Weil das bei mir ab v1.1.28.00 funktioniert.
Anaksunaman

Antworten:

1

Versuchen Sie das Hinzufügen

WinWaitActive, lexicon - Notepad

nach dem

Winactivate, lexicon - Notepad

Versuchen Sie auch zu ersetzen

winactivate, chrome

mit

winactivate, ahk_exe chrome.exe

Der einfachste Weg, Text in eine Datei zu schreiben, ist die Verwendung von FileAppend :

#s::
clipboard = ; empty anything in the clipboard
Send ^c ; copies highlighted term
ClipWait, 0.5
FileAppend, %clipboard%%A_Tab%, C:\lexicon.txt
Return


#t::
clipboard = ; empty anything in the clipboard
Send ^c ; copies highlighted term
ClipWait, 0.5   
FileAppend, %clipboard%`n, C:\lexicon.txt
; Run C:\lexicon.txt
Return
user3419297
quelle