Usuń określony skrót Windows, aby skrót Ahk działał


1

Mam skrót do nawiasów takich jak „[]” i „()”, których używam podczas kodowania, które jest napisane w .ahk

#d::
Send {[}{]}{Left}
return

Działa dobrze, z wyjątkiem mojego edytora Python Pycharm:
W jakiś sposób, gdy go tam używam, aktywuje skrót systemu Windows Win+D do wyświetlania pulpitu i przeskakuje na pulpit. Nie używam funkcji „pokaż pulpit”, więc chciałbym, aby ten skrót został całkowicie usunięty, bez wyłączania innych skrótów systemu Windows, takich jak Win+Rightans.

wprowadź opis zdjęcia tutaj

EDYCJA (częściowe rozwiązanie): zgodnie z odpowiedzią Nelsona próbowałem usunąć Sendskrypt AHK prowadzący do tego błęduwprowadź opis zdjęcia tutaj

Jeśli chodzi o mapy klawiszy pycharms, próbowałem napisać makro dla nawiasów kwadratowych w pycharm wprowadź opis zdjęcia tutaj

Jednak obecnie to działa, zapomniałem przetestować makro Pycharm bez uruchamiania skryptu ahk.

Ale nadal nie działa, ponieważ w moich innych edytorach kodu (Rstudio) nie ma makr, więc teraz mam skrót, który może działać tylko w jednym programie.

Wciąż szukam sposobu na usunięcie określonego skrótu Windows.

Dziękuje za przeczytanie


Wydaje mi się, że widziałem sposób na wyłączenie natywnych skrótów Windows, ale nie znajduję go teraz. Ten link pokazuje, jak wyłączyć je wszystkie. askvg.com/…
JJohnston2 30.09.16

Możesz użyć, #IfWinActiveaby włączyć ten skrót dla drugiego edytora.
Nelson

Odpowiedzi:


1

Po ustawieniu tego skrótu w programie AutoHotKey należy zastąpić domyślne zachowanie. Klawisz Win + D jest także klawiszem skrótu Windows.

Możesz to sprawdzić, usuwając Sendwiersz i sprawdzając, czy klawisz Win + D nie robi nic w innych aplikacjach.

Jednak PyCharm może mieć swój własny system haka na klucze i ma konfigurację skrótu Win + D do replikacji funkcji, gdy edytor jest aktywny. Jest to najprawdopodobniej przyczyną problemu, ponieważ przechwytuje on klucze, zanim osiągnie AutoHotKey.

PyCharm zawiera instrukcje sprawdzania i konfigurowania map klawiszy .


Będę głosować za pomocnym rozwiązaniem problemu, ale nadal nie zapewnia żadnego obejścia ani zamierzonego rozwiązania.
user2673238,

Czy możesz hostować gdzieś cały skrypt AHK, jeśli to możliwe? Publikujesz niewielki fragment, ale możesz mieć #IfWinActivelub inne dziwne słowa kluczowe powodujące problemy. A moją wskazówką było usunięcie całej linii do przetestowania, a nie tylko Sendsłowa kluczowego. Możesz skomentować linię, dodając ;na początku.
Nelson

dodano cały skrypt pastebin.com/8wP0QWdd , przepraszam, że jest dość długi. Usunięcie Send nie powoduje działania skrótu w żadnym edytorze kodu. #d:: ;Send, {[}{]}{Left} return Czy coś źle zrozumiałem?
user2673238,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.