Come posso mappare i tasti della tastiera agli assi del mouse nel Terminale?

1

Come posso mappare gli assi del mouse ai miei tasti della tastiera nel terminale Mac OSX 10.6? Ad esempio, spostando il mouse su (positivo x) si innesca un tasto premuto di W . È integrato o ho bisogno di un pacchetto software? Gli unici risultati di ricerca che ho trovato erano per mouse-driver , che non ho sul mio sistema.

    
posta elhombre 14.05.2011 - 10:21
fonte

4 risposte

1

Potresti anche utilizzare KeyRemap4MacBook.

Puoiassegnarealtritastialleazionideitastidelmousecreandoun private.xml . La cartella di test ha un file XML con tutti i remapping predefiniti.

    
risposta data 01.11.2012 - 16:01
fonte
0

Ci sono Divvy, SizeUp e Flexiglass: non fanno esattamente quello che vuoi, ma offrono un controllo della tastiera più flessibile rispetto alle finestre. Probabilmente valgono tutti un'occhiata.

link

link

link

Buona fortuna!

    
risposta data 14.09.2011 - 07:11
fonte
0

Per risolvere il problema, puoi scrivere uno strumento da riga di comando per spostare il cursore del mouse e quindi utilizzare le opzioni di associazione dei tasti programmabili della shell per eseguire questo strumento da riga di comando quando viene specificata una sequenza di chiavi specificata.

/*

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;

}
    
risposta data 15.11.2011 - 20:32
fonte
0

Per ricevere gli eventi del mouse in Terminal.app dare un'occhiata a strumenti come MouseTerm, USBOverdrive o ControllerMate !

Se hai voglia di usare uno strumento da riga di comando, dai un'occhiata a altermouse.c pure ( ... possibilmente esteso utilizzando AppleScript).

Per alcuni strumenti X11 vedi xdotool e xautomation (il primo è disponibile tramite MacPorts).

    
risposta data 28.11.2011 - 16:26
fonte

Leggi altre domande sui tag