Como una adaptación del código de @mat-burns en este puesto ( Nota También necesitarás xcode instalado. )
#!/usr/bin/env xcrun swift
import Foundation
let kDelayUSec : useconds_t = 500_000
func moveMouseClick( p1: CGPoint) {
let mouseMove = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseDragged), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
let mouseDown = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseDown), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
let mouseUp = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseUp), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseMove)
usleep(kDelayUSec)
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseDown)
usleep(kDelayUSec)
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseUp)
}
func main() {
let pointX = 396
let pointY = 214
let p1 = CGPointMake( CGFloat(pointX), CGFloat(pointY))
moveMouseClick( p1)
}
main()
Cambia las líneas:
let pointX = 396
let pointY = 214
para reflejar su punto de clic.
Guarda este código como moveClick.swift
Y luego en Terminal.app ejecuta /bin/chmod +x ~/scripts/moveClick.swift
para que el script sea ejecutable
Cambie ~/scripts/moveClick.swift por la ruta real de su archivo swift.
No tengo Keyboard maestro Pero veo que puede ejecutar un shell script.
Ejecutar una acción Shell script
~/scripts/moveClick.swift
En el ejemplo anterior hemos codificado el punto de clic.
Pero si quieres hacerlo versátil, podemos hacer que el código tome argumentos.
Usando este código en su lugar.
#!/usr/bin/env xcrun swift
import Foundation
let kDelayUSec : useconds_t = 500_000
func moveMouseClick( p1: CGPoint) {
let mouseMove = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseDragged), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
let mouseDown = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseDown), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
let mouseUp = CGEventCreateMouseEvent(nil, CGEventType(kCGEventLeftMouseUp), p1, CGMouseButton(kCGMouseButtonLeft)).takeUnretainedValue()
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseMove)
usleep(kDelayUSec)
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseDown)
usleep(kDelayUSec)
CGEventPost(CGEventTapLocation(kCGHIDEventTap), mouseUp)
}
func main() {
let p1 = CGPointMake( CGFloat(atof( C_ARGV[1])), CGFloat(atof( C_ARGV[2])))
moveMouseClick( p1)
}
main()
De nuevo en Keyboard maestro.
Ejecutar una acción Shell script
~/scripts/moveClick.swift 396, 214