¿Cómo puedo asignar las teclas del teclado a los ejes del mouse en la Terminal?

1

¿Cómo puedo asignar los ejes del mouse a las teclas del teclado en el terminal Mac OSX 10.6? Por ejemplo, mover el mouse hacia arriba (x positivo) activa una pulsación de tecla de W . ¿Está incorporado o necesito un paquete de software? Los únicos resultados de búsqueda que encontré fueron para mouse-driver , que no tengo en mi sistema.

    
pregunta elhombre 14.05.2011 - 10:21

4 respuestas

1

También puedes usar KeyRemap4MacBook.

Puedeasignarotrasclavesalasaccionesdelatecladelmousecreandoun private.xml . La carpeta de prueba tiene un archivo XML con Todas las remappings predefinidas.

    
respondido por el user495470 01.11.2012 - 16:01
0

Hay Divvy, SizeUp y Flexiglass; no hacen exactamente lo que estás buscando, pero ofrecen un control más flexible del teclado sobre las ventanas. Probablemente todos valgan la pena verlos.

enlace

enlace

enlace

¡Buena suerte!

    
respondido por el rjp 14.09.2011 - 07:11
0

Como solución alternativa, puede escribir una herramienta de línea de comandos para mover el cursor del mouse y luego usar las opciones de enlace de teclas programables de su shell para ejecutar esta herramienta de línea de comandos cuando se ingresa una secuencia de teclas especificada.

/*

File: 
mvright.m

Compile with: 
gcc -Wall -Wextra -framework ApplicationServices -framework Foundation -o mvright mvright.m

Successfully compiled on:
Mac OS X 10.6.8

Usage:
./mvright
# in .bashrc; press ctrl-h keys to move mouse cursor to the right
bind -x '"\C-h": /usr/local/bin/mvright'  

References:

- "Controlling the mouse from Python in OS X",
  http://stackoverflow.com/questions/281133/controlling-the-mouse-from-python-in-os-x, 
  http://synergy-foss.org 
- "Move and click the mouse via code", 
  http://hints.macworld.com/article.php?story=2008051406323031

*/ 


#import <Foundation/Foundation.h>
#import <ApplicationServices/ApplicationServices.h>


int main(void) {

   NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

   // Get the current mouse location
   CGEventRef ourEvent = CGEventCreate(NULL);
   CGPoint ourLoc = CGEventGetLocation(ourEvent);

   //NSLog(@"Location? x= %f, y = %f", (float)ourLoc.x, (float)ourLoc.y);

   // The data structure CGPoint represents a point in a two-dimensional
   // coordinate system.  Here, X and Y distance from upper left, in pixels.
   CGPoint pt;
   pt.x = (float)ourLoc.x + 10.0;
   pt.y = (float)ourLoc.y;

   //NSLog(@"Location? x= %f, y = %f", (float)pt.x, (float)pt.y);

   CGEventRef eventRef;
   eventRef = CGEventCreateMouseEvent(NULL, kCGEventMouseMoved, pt, kCGMouseButtonCenter);

   //Apparently, a bug in xcode requires this next line
   //CGEventSetType(eventRef, kCGEventMouseMoved);

   CGEventPost(kCGSessionEventTap, eventRef);
   //CGEventPost(kCGHIDEventTap, eventRef);

   CFRelease(eventRef);
   CFRelease(ourEvent);

   [pool release];
   return 0;

}
    
respondido por el jano 15.11.2011 - 20:32
0

Para recibir eventos del mouse en Terminal.app, eche un vistazo a herramientas como MouseTerm, USBOverdrive o ControllerMate !

Si tiene ganas de utilizar una herramienta de línea de comandos, también puede consultar altermouse.c ( ... posiblemente extendido usando AppleScript).

Para algunas herramientas X11, vea xdotool y xautomation (las primeras están disponibles a través de MacPorts).

    
respondido por el marco 28.11.2011 - 16:26

Lea otras preguntas en las etiquetas