2008-09-19 72 views
21

Uso AutoHotKey para macros de Windows. Lo uso más comúnmente para definir teclas rápidas que inician/enfocan aplicaciones particulares, y una para enviar un mensaje de correo electrónico instantáneo a mi lista de tareas pendientes. También tengo uno de emergencia que mata todas mis grandes aplicaciones de memoria (Outlook, Firefox, etc.).¿Mejores macros AutoHotKey?

Entonces, ¿alguien tiene alguna buena macros AHK para compartir?

+4

Tenga una mirada en http://superuser.com/questions/7271/most-useful-autohotkey-scripts – Jay

+4

Este enlace ya no se parece funcionar: -/ – Evildonald

Respuesta

13

muy simple y útil fragmento:

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

Tuve que agregar dos líneas para que esta secuencia de comandos funcionara en Win7 con AHK 1.048.05: [1] SetTitleMatchMode RegEx; en la parte superior del script en la sección de ejecución automática [2] full_path: = RegExReplace (full_path, "^ Address:", ""); pelar a la dirección vacía – Leftium

+1

Soy un principiante en el auto scriptkey scripting y tengo problemas para implementar las correcciones de Leftium, ¿a qué líneas van los nuevos comandos? – raveren

+0

Esto no funcionó en mi plataforma cuando presioné ^! Ny otra lista de comandos de arriba ... No sé qué pasó – harris

6

; Tengo esto en mi menú de inicio por lo que no voy a arruinar mis oídos cuando me puse los audífonos después de reiniciar la computadora

sleep, 5000 
SoundSet, 1.5 ; really low volume 
4

puedo crear nuevos de Outlook objetos con AutoHotKey

; Win + Shift + M = nuevo correo electrónico

#+m:: Run "mailto:" 

; Outlook

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

; Win + Shift + A = crear una nueva cita del calendario

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

; Win + Shift + T = crear nueva Tarea ; Win + Shift + K = Nueva tarea

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

Agregar rodea las cotizaciones en el texto seleccionado/palabra
útiles mensajes de correo electrónico al escribir o durante la codificación ...

palabra doble clic, golpeó Win + X, tienen comillas

; 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

Aquí hay un fragmento simple para cerrar rápidamente la ventana actual con el botón del mouse.

Es una de las acciones que realiza con más frecuencia en Windows, y se sorprenderá de cuánto tiempo ahorrará al no tener que disparar para esa pequeña X. Con un mouse de 5 botones, esto me parece una una reasignación muy útil del botón "Adelante".

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

Tener en cuenta los programas que utilizan documentos con pestañas (como los navegadores web), aquí es una versión más completa:

;----------------------------------------------------------------------------- 
; 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 no pueden ser fácilmente añadidos a la CtrlCloseGroup anteriormente, su clase de ventana/título no es fácilmente predecible (creo). He aquí el fragmento que utilizo para manejar la situación, incluyendo un par de enlaces de votos adicionales:

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 

También me resulta útil en Outlook para mapear ALT + 1, Alt + 2, etc., para las macros que escribí que mueven el momento mensaje (s) seleccionado (s) para carpetas específicas (por ej., "Archivo personal", "Trabajo archivado", etc.) pero eso es un poco más complicado.

7

aquí es tan simple pero útil guión:

^SPACE:: Winset, Alwaysontop, , A 

Use CTRL + Espacio para configurar cualquier ventana siempre encima.

2

corregir un problema al copiar archivos a un servidor FTP cuando el "Copia" aparece de diálogo en la parte superior del "Archivo Confirmar Reemplazar" de diálogo (muy molesto):

SetTimer, FocusOnWindow, 500 
return 

FocusOnWindow: 
IfWinExist, Confirm File Replace 
    WinActivate 
return 

Uno para desactivar el inútil de bloqueo de mayúsculas clave:

Capslock:: 
return 

Ctrl + Shift + C se copia a color por debajo del cursor en el portapapeles (en hexadecimal)

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

escriba su dirección de correo electrónico en el campo activo (tecla Win + m)

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