automation - que - ¿Mejores macros AutoHotKey?
keyboard macro (9)
Yo 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.).
Entonces, ¿alguien tiene buenos macros AHK para compartir?
Hay toneladas de buenas en el Foro AutoHotKey:
http://www.autohotkey.com/forum/forum-2.html&sid=8149586e9d533532ea76e71e8c9e5b7b
¿Que bien? realmente depende de lo que quiere / necesita.
Utilizo este todo el tiempo, generalmente para un acceso rápido a la línea de comandos de MySQL.
; Tengo esto en mi menú de inicio para no arruinar mis oídos cuando me pongo los auriculares después de reiniciar mi computadora
sleep, 5000
SoundSet, 1.5 ; really low volume
Agrega citas circundantes en texto / palabra seleccionada
Útil al escribir correos electrónicos o durante la codificación ...
Haga doble clic en la palabra, presione Win + X, tenga comillas alrededor
; 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
Creo nuevos objetos de Outlook con AutoHotKey
; Win + Shift + M = nuevo correo electrónico
#+m:: Run "mailto:"
; panorama
#^M:: Run "%ProgramFiles%/Microsoft Office/Office12/OUTLOOK.EXE" /recycle
; Win + Shift + A = crear 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
Aquí hay un fragmento muy simple para cerrar rápidamente la ventana actual con el botón del mouse.
Es una de las acciones que realiza más a menudo 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, me parece una reasignación muy útil de el botón "Adelante".
#IfWinActive ;Close active window when mouse button 5 is pressed
XButton2::
SendInput {Alt Down}{F4}{Alt Up}
Return
#IfWinActive
Para tener en cuenta los programas que usan documentos con pestañas (como los navegadores web), aquí hay 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 se puede agregar fácilmente al CtrlCloseGroup
anterior, ya que su clase de ventana / título no es fácilmente predecible (creo). Aquí está el fragmento que uso para manejarlo, incluyendo un par de enlaces útiles 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 parece útil en Outlook mapear ALT + 1, ALT + 2, etc. a las macros que escribí, que mueven los mensajes seleccionados actualmente a carpetas específicas (por ej., "Personal archivado", "Trabajo archivado", etc.) pero eso es un poco más complicado.
Un fragmento muy simple y útil:
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:/ "
}
}
Aquí hay un script tan simple pero útil:
^SPACE:: Winset, Alwaysontop, , A
Use CTRL + Espacio para establecer cualquier ventana siempre en la parte superior.
Se soluciona un problema al copiar el archivo al servidor FTP cuando aparece el cuadro de diálogo "Copiando" encima del diálogo "Confirmar reemplazo de archivo" (muy molesto):
SetTimer, FocusOnWindow, 500
return
FocusOnWindow:
IfWinExist, Confirm File Replace
WinActivate
return
Uno para desactivar la inútil clave de bloqueo de mayúsculas:
Capslock::
return
CTRL + shift + c copiará el color debajo del cursor al 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