2008-09-19 8 views
21

J'utilise les macros AutoHotKey pour Windows. Le plus souvent je l'utilise pour définir des raccourcis clavier qui démarrent/focalisent des applications particulières, et un pour envoyer un email instantané dans ma liste ToDo. J'ai aussi une urgence qui tue toutes mes grandes applications de mémoire-hogging (Outlook, Firefox, etc.).Les meilleures macros AutoHotKey?

Alors, est-ce que quelqu'un a de bonnes macros AHK à partager?

+4

Jetez un oeil à http://superuser.com/questions/7271/most-useful-autohotkey-scripts – Jay

+4

Ce lien ne semble fonctionner: -/ – Evildonald

Répondre

13

extrait très simple et utile:

SetTitleMatchMode RegEx ; 
; Stuff to do when Windows Explorer is open 
; 
#IfWinActive ahk_class ExploreWClass|CabinetWClass 
    ; create new folder 
    ; 
    ^!n::Send !fwf 

    ; create new text file 
    ; 
    ^!t::Send !fwt 

    ; open 'cmd' in the current directory 
    ; 
    ^!c:: 
     OpenCmdInCurrent() 
    return 
#IfWinActive 

; Opens the command shell 'cmd' in the directory browsed in Explorer. 
; Note: expecting to be run when the active window is Explorer. 
; 
OpenCmdInCurrent() 
{ 
    WinGetText, full_path, A ; This is required to get the full path of the file from the address bar 

    ; Split on newline (`n) 
    StringSplit, word_array, full_path, `n 
    full_path = %word_array1% ; Take the first element from the array 

    ; Just in case - remove all carriage returns (`r) 
    StringReplace, full_path, full_path, `r, , all 
    full_path := RegExReplace(full_path, "^Address: ", "") ; 

    IfInString full_path, \ 
    { 
     Run, cmd /K cd /D "%full_path%" 
    } 
    else 
    { 
     Run, cmd /K cd /D "C:\ " 
    } 
} 
+1

J'ai dû ajouter deux lignes pour que ce script fonctionne dans Win7 avec AHK 1.048.05: [1] SetTitleMatchMode RegEx; en haut du script dans la section autorun [2] full_path: = RegExReplace (full_path, "^ Address:", ""); dépouiller à l'adresse nue – Leftium

+1

Je suis novice dans le script autohotkey et j'ai du mal à implémenter les correctifs de Leftium, vers quelles lignes vont les nouvelles commandes? – raveren

+0

Cela n'a pas fonctionné sur ma plate-forme quand j'ai frappé ^! N et d'autres liste de commande ci-dessus ... Je ne sais pas ce qui est arrivé – harris

6

; J'ai dans mon menu de démarrage afin que je ne vais pas ruiner mes oreilles quand je mets mon casque après avoir redémarré mon ordinateur

sleep, 5000 
SoundSet, 1.5 ; really low volume 
4

Créer de nouveaux objets Perspectives avec AutoHotKey

; Win + Maj + M = nouvel e-mail

#+m:: Run "mailto:" 

; Outlook

#^M:: Run "%ProgramFiles%\Microsoft Office\Office12\OUTLOOK.EXE" /recycle 

; Win + Maj + A = créer un nouveau rendez-calendrier

#+A:: Run "%ProgramFiles%\Microsoft Office\Office12\OUTLOOK.EXE"/c ipm.appointment 

; Win + Maj + T = créer une nouvelle tâche ; Win + Maj + K = Nouvelle tâche

#+T:: Run "%ProgramFiles%\Microsoft Office\Office12\OUTLOOK.EXE"/c ipm.task 
#+K:: Run "%ProgramFiles%\Microsoft Office\Office12\OUTLOOK.EXE"/c ipm.task 
8

Ajouter guillemets autour du texte sélectionné/mot
utiles lors de l'écriture des e-mails ou lors du codage ...

mot Doubleclick, appuyez sur Win + X, ont entre guillemets

; Win + X 
#x:: ; Attention: Strips formatting from the clipboard too! 
Send ^c 
clipboard = "%clipboard%" 
; Remove space introduced by WORD 
StringReplace, clipboard, clipboard,%A_SPACE%",", All 
Send ^v 
return 
3

Voici un extrait mortellement simple pour fermer rapidement la fenêtre en cours à l'aide du bouton de la souris.

C'est l'une des actions que vous effectuez le plus souvent sous Windows, et vous serez surpris du temps que vous économiserez en n'ayant plus besoin de tirer pour ce petit X. Avec une souris à 5 boutons, je trouve cela réaffectation très utile du bouton "Forward".

#IfWinActive ;Close active window when mouse button 5 is pressed 
    XButton2:: 
    SendInput {Alt Down}{F4}{Alt Up} 
    Return 
#IfWinActive 

Pour prendre compte des programmes qui utilisent des documents séparés par des onglets (comme les navigateurs web), voici une version plus complète:

;----------------------------------------------------------------------------- 
; Bind Mouse Button 5 to Close Tab/Close Window command 
;----------------------------------------------------------------------------- 

; Create a group to hold windows which will use Ctrl+F4 instead of Alt+F4 
GroupAdd, CtrlCloseGroup, ahk_class IEFrame    ; Internet Explorer 
GroupAdd, CtrlCloseGroup, ahk_class Chrome_WidgetWin_0 ; Google Chrome 
; (Add more programs that use tabbed documents here) 
Return 

; For windows in above group, bind mouse button to Ctrl+F4 
#IfWinActive, ahk_group CtrlCloseGroup 
    XButton2:: 
    SendInput {Ctrl Down}{F4}{Ctrl Up} 
    Return 
#IfWinActive 

; For everything else, bind mouse button to Alt+F4 
#IfWinActive 
    XButton2:: 
    SendInput {Alt Down}{F4}{Alt Up} 
    Return 
#IfWinActive 

; In FireFox, bind to Ctrl+W instead, so that the close command also works 
; on the Downloads window. 
#IfWinActive, ahk_class MozillaUIWindowClass 
    XButton2:: 
    SendInput {Ctrl Down}w{Ctrl Up} 
    Return 
#IfWinActive 

Visual Studio 2010 ne peut pas être facilement ajouté à la CtrlCloseGroup ci-dessus, c'est la classe de fenêtre/titre ne sont pas facilement prévisibles (je pense). Voici l'extrait que j'utilise pour gérer, y compris un couple d'autres liaisons utiles:

SetTitleMatchMode, 2 ; Move this line to the top of your script 

;----------------------------------------------------------------------------- 
; Visual Studio 2010 
;----------------------------------------------------------------------------- 

#IfWinActive, Microsoft Visual Studio 

    ; Make the middle mouse button jump to the definition of any token 
    MButton:: 
    Click Left ; put the cursor where you clicked 
    Send {Shift Down}{F2}{Shift Up} 
    Return 

    ; Make the Back button on the mouse jump you back to the previous area 
    ; of code you were working on. 
    XButton1:: 
    Send {Ctrl Down}{Shift Down}{F2}{Shift Up}{Ctrl Up} 
    Return 

    ; Bind the Forward button to close the current tab 
    XButton2:: 
    SendInput {Ctrl Down}{F4}{Ctrl Up} 
    Return 

#IfWinActive 

Je trouve aussi utile dans Outlook pour la carte ALT + 1, ALT + 2, etc. macros je l'ai écrit qui se déplacent le moment message (s) sélectionné (s) vers des dossiers spécifiques (par exemple "Personal Filed", "Work Filed", etc.) mais c'est un peu plus compliqué.

7

est ici si simple mais utile scénario:

^SPACE:: Winset, Alwaysontop, , A 

Utilisez CTRL + Espace pour définir une fenêtre toujours sur le dessus.

2

Correction d'un problème lors de copie du fichier sur le serveur FTP lorsque la « copie » de dialogue apparaît sur le dessus de la boîte de dialogue « Confirmer remplacement du fichier » (très gênant):

SetTimer, FocusOnWindow, 500 
return 

FocusOnWindow: 
IfWinExist, Confirm File Replace 
    WinActivate 
return 

Un pour désactiver le verrouillage des majuscules inutiles clé:

Capslock:: 
return 

CTRL + Maj + c copieront couleur sous le curseur vers le presse-papiers (en hexadécimal)

^+c:: 
MouseGetPos,x,y 
PixelGetColor,rgb,x,y,RGB 
StringTrimLeft,rgb,rgb,2 
Clipboard=%rgb% 
Return 

Écrivez votre adresse e-mail dans le champ actif (touche Win + m)

#m:: 
Send, [email protected]{LWINUP} 
Sleep, 100 
Send, {TAB} 
return