Saltar al contenido principal

Pasos, Script y AutoHotkey

Lo que hace una acción se puede escribir de tres formas. Escrita como, en la tarjeta Qué hace de la página Acciones, elige cuál se ejecuta.

Qué hace
Escrita como
PasosScriptAutoHotkey
Cada modo conserva su propio contenido. Solo se ejecuta el seleccionado.
ModoQué esElíjalo cuando
PasosUna lista de pasos que elige y completa, una fila cada uno. Sin código que escribir.Quiere construir la acción sin escribir código. La mayoría de las acciones encajan: enviar teclas, escribir texto, mover o cerrar ventanas, esperar, hacer una pregunta.
ScriptEl propio lenguaje de scripts de Input.Observer, escrito en un editor de código.Necesita aritmética, armar texto a partir de partes, bucles que cuentan con una variable, o cualquier cosa que Pasos no pueda expresar.
AutoHotkeyUn script de AutoHotkey v2, ejecutado por el propio AutoHotkey.Ya tiene código de AutoHotkey, o necesita algo que solo hace AutoHotkey.

Pasos y Script se ejecutan dentro de Input.Observer y llaman a las mismas funciones integradas: Pasos es una forma visual de escribir lo que escribiría un script. Consulte Pasos y la Referencia del lenguaje de scripts.

Cada modo conserva su propio contenido​

Una acción contiene un contenido de Pasos, un contenido de Script y un contenido de AutoHotkey uno al lado del otro. Cambiar Escrita como ① cambia cuál se ejecuta. Nunca elimina los demás, así que puede volver atrás.

Si el modo que selecciona está vacío mientras otro modo tiene contenido, un aviso debajo del selector indica que ejecutar la acción no hace nada, y ofrece un botón para usar el modo que tiene contenido.

Cambiar de Pasos a Script​

Cuando cambia de Pasos a Script mientras la acción tiene pasos y su contenido de Script está vacío, Input.Observer ofrece traducir los pasos: ¿Convertir los pasos en un script? Elija Convertir para poner la traducción en el editor de Script.

  • Los pasos quedan como están. Volver a Pasos los muestra sin cambios.
  • Nada convierte en sentido contrario. Un script no se puede convertir en pasos.
  • No se ofrece traducir los pasos que usan Repetir mientras…, Repetir hasta que…, Salir del bucle o Detener los pasos, porque Script no tiene instrucciones equivalentes. Puede cambiar de todos modos; el contenido de Script simplemente empieza vacío.
  • AutoHotkey nunca se convierte a otro modo ni desde otro modo.
  • Cuando los pasos son una grabación de la página Grabadora, el cuadro de diálogo también indica que el script ignora Velocidad de reproducción y Detalle de la trayectoria del mouse al reproducir: sus esperas se ejecutan a la velocidad grabada y se reproduce cada movimiento del mouse grabado (Opciones de la grabadora).

De Pasos a Script muestra en qué se convierte cada tipo de paso.

AutoHotkey​

AutoHotkey es un programa aparte que Input.Observer inicia cuando se ejecuta una acción de AutoHotkey. No está incluido; usted instala AutoHotkey v2 y le indica a Input.Observer dónde está.

  1. Instale AutoHotkey v2.
  2. En la página General, active Habilitar AutoHotkey y establezca en Ejecutable de AutoHotkey su archivo de programa, como AutoHotkey64.exe.
  3. AutoHotkey aparece ahora en Escrita como. Aplique los cambios para que el motor use la nueva opción.

Las reglas:

  • AutoHotkey se ofrece en Escrita como solo mientras Habilitar AutoHotkey está activada, o cuando la acción ya se ejecuta como AutoHotkey. Una acción de AutoHotkey con AutoHotkey desactivado no hace nada, y la página lo indica.
  • Use una compilación normal de AutoHotkey. Las compilaciones con _UIA en su nombre, como AutoHotkey64_UIA.exe, no pueden ejecutar scripts desde Input.Observer.
  • Cuando AutoHotkey está activado pero su programa no se encuentra al iniciar o al recargar la configuración, Input.Observer le pide Buscar el ejecutable de AutoHotkey o Dejar como está.
  • Cada ejecución inicia un proceso nuevo de AutoHotkey con su script. No puede llamar a las funciones integradas de Input.Observer, y se ejecuta hasta que termina por sí solo; la tecla de acceso rápido para detener todas las acciones lo termina.
  • Antes de su script, Input.Observer establece variables que describen el disparador, como IO_ActionName, IO_TriggerKind y la ventana del gesto o de la tecla de acceso rápido (Variables de AutoHotkey). La lista Variables disponibles aquí del editor muestra las que proporcionan los disparadores de la acción; haga clic en una para insertarla.
  • Lo que el script escribe en su salida estándar aparece en la consola de diagnóstico, empezando con AHK: (La consola de diagnóstico).

Una acción de Pasos o de Script también puede ejecutar un fragmento de código de AutoHotkey con la función integrada AutoHotkeyExecuteScript. Se aplican la misma opción y el mismo ejecutable.

Variables de AutoHotkey​

Cada ejecución de AutoHotkey empieza con unas líneas que Input.Observer agrega delante de su script, que establecen variables IO_ a partir de lo que disparó la acción. Esto se aplica a una acción escrita como AutoHotkey y al código que se ejecuta con AutoHotkeyExecuteScript, que recibe las variables de la acción que lo llamó.

Cada ejecución establece estas tres:

VariableContiene
IO_ActionNameEl nombre de la acción. Para un evento global, Global_Event_ seguido del nombre del evento en el archivo de configuración, como Global_Event_release o Global_Event_foreground_changed. Vacía cuando nada disparó la ejecución, como un script ejecutado desde la consola.
IO_AppGroupNameEl nombre del grupo de aplicaciones en el que se encontró la acción, como Global. Vacía para un evento global.
IO_TriggerKindQué disparó la ejecución: Gesture, Hotkey, TextExpansion, MouseButton (un evento global de botón del mouse o de Botón de dibujo soltado), Wheel (un evento global de la rueda) o None.

Las demás dependen del disparador, y solo se establecen las de ese disparador:

DisparadorVariableContiene
GestoIO_GestureWindowLa ventana sobre la que empezó el gesto
IO_GestureButtonEl botón de dibujo: left, right, middle, x1 o x2
IO_GestureStartX, IO_GestureStartYDónde empezó el trazo
IO_GestureEndX, IO_GestureEndYDónde terminó
IO_GestureBoundsLeft, IO_GestureBoundsTop, IO_GestureBoundsRight, IO_GestureBoundsBottomEl rectángulo que rodea todo el trazo
IO_GesturePointsCada punto del trazo en el orden en que se dibujó, como una matriz de matrices [x, y]
Tecla de acceso rápidoIO_HotkeyWindowLa ventana que estaba al frente cuando se presionó la tecla de acceso rápido
IO_HotkeyVkCodeEl código de tecla virtual de Windows de la tecla final, como 75 para K
IO_HotkeyModifiersLas teclas modificadoras de la combinación, sumadas: Ctrl 1, Shift 2, Alt 4, Win 8 (Ctrl+Alt es 5)
Expansión de textoIO_TextExpansionWindowLa ventana en la que escribió
IO_TextExpansionPatternLa abreviatura que escribió
Evento de botón del mouseIO_MouseWindowLa ventana bajo el puntero
IO_MouseButtonEl botón: left, right, middle, x1 o x2
IO_MouseX, IO_MouseYDónde estaba el puntero
Evento de la ruedaIO_WheelWindowLa ventana bajo el puntero
IO_WheelDeltaCuánto giró la rueda, tal como lo informa Windows: 120 por cada muesca de una rueda normal (las ruedas de desplazamiento suave y los paneles táctiles envían pasos más pequeños), positivo al alejarse de usted (o hacia la derecha), negativo al acercarse (o hacia la izquierda)
IO_WheelHorizontaltrue para un giro lateral de la rueda, false para uno normal
IO_WheelX, IO_WheelYDónde estaba el puntero
  • Las ventanas son identificadores de ventana, números que AutoHotkey lee como un id de ventana: "ahk_id " IO_GestureWindow nombra la ventana en WinActivate, WinGetTitle y las demás funciones de ventana.
  • Las posiciones son coordenadas de pantalla en píxeles físicos, desde la esquina superior izquierda del monitor principal. Establezca CoordMode "Mouse", "Screen" antes de usarlas con las funciones del mouse de AutoHotkey, que de lo contrario trabajan en relación con la ventana activa.
  • El texto llega exactamente como era; las comillas, los acentos graves y los saltos de línea del nombre de una acción o de un grupo se escapan por usted.
  • Una variable que el disparador no proporciona no se establece en absoluto, y AutoHotkey detiene el script cuando lee una variable sin establecer. Una acción con varios tipos de disparador, o un snippet llamado desde distintas acciones, debe revisar primero IO_TriggerKind, o usar IsSet(IO_GestureWindow).

Por ejemplo, una acción que se ejecuta desde un gesto o una tecla de acceso rápido, trae al frente la ventana sobre la que se usó y muestra su título:

CoordMode "Mouse", "Screen"
win := IO_TriggerKind = "Gesture" ? IO_GestureWindow : IO_HotkeyWindow
WinActivate "ahk_id " win
MsgBox WinGetTitle("ahk_id " win), IO_ActionName

Motores de script de complementos​

Un complemento puede agregar un motor de script propio. Aparece entonces en Escrita como con el nombre del complemento, y el texto que escribe ahí va al complemento exactamente como lo escribió; Input.Observer no lo revisa. Si ningún complemento en ejecución proporciona ese motor, la página advierte que la acción se omite al ejecutarse. Consulte Complementos.

En el modo Simple​

El modo Simple muestra Escrita como solo para una acción que ya tiene un script o un contenido de AutoHotkey. Para cualquier otra acción, la tarjeta muestra directamente los pasos. Para escribir una acción nueva como script, cambie la ventana al modo Avanzado (La ventana de configuración).