Tout d'abord, voici la question de l'espace utilisateur: Désactivation de l'accélération de la souris dans Mac OS X @ superuser
Pour résumer: je veux avoir une réponse linéaire de la souris sur Mac OS X. Autrement dit, aucune accélération; une constante réglable mais pixels pointer moves / meters mouse moved
ratio.
Je n'ai aucune idée de comment procéder. (Eh bien, ce n'est pas vrai, mais il vaut mieux recommencer à zéro.) Dois-je écrire un pilote de souris? Un programme de démarrage? Un ajusteur de paramètres cliquer-et-oublier? Un volet de préférences?
Je veux que ma solution soit aussi simple, universelle et non intrusive que possible, donc certains critères pourraient être:
Je suis un programmeur C assez expérimenté, à la fois dans l'espace utilisateur et dans le noyau (sous Linux et Windows), mais je ne sais pratiquement rien de Mac OS X ou de Darwin. Donc, tout est apprécié, vraiment ("ne peut pas distribuer de pilotes sans certificat d'Apple") mais une documentation/référence me ferait du chemin ("Darwin's Next Generation Mouse Curve Editing API and Examples").
Je sais que la question est un peu ouverte mais je ne sais même pas quel type d'une solution pourrait fonctionner. Merci d'avance.
Edit: Bien que j'ai posé les deux questions pour résoudre le même problème, c'est l'homologue de programmation de l'autre. (Voir la première phrase de cette question.) Ici, j'essaie de créer ma propre solution, pour ainsi dire, en utilisant - je ne sais pas - une API HID? Un conducteur? Une solution du type "ouvrir le fichier de préférences de l'utilisateur actuel et modifier ce paramètre en ceci" devrait probablement être publiée sur l'autre question, mais notez qu'une telle solution n'existe probablement pas.
Une grande partie de ma réputation sur StackOverflow vient des gens qui ont voté pour cette réponse, que j'ai écrite bien avant que je ne réalise qu'il existe plusieurs sites Web d'échange de pile et que StackOverflow est uniquement destiné à la programmation des questions et réponses. Par conséquent, la question ci-dessus concerne la façon de résoudre ce problème si vous souhaitez coder vos propres pilotes de souris. Pour toutes les autres discussions, allez l'avoir ici sur le site du superutilisateur où il appartient.
La réponse originale suit.
Il y a une préférence cachée que vous pouvez modifier depuis le terminal. Pour lire son type de valeur actuel
defaults read .GlobalPreferences com.Apple.mouse.scaling
à l'invite du terminal. Les valeurs normales sont comprises entre 0 et 3, qui peuvent être définies en déplaçant le curseur "Vitesse de suivi" dans le volet Souris des Préférences Système. Les valeurs de 0 à 3 ne désactiveront donc pas l'accélération.
Cependant, si vous le définissez sur -1 en tapant
defaults write .GlobalPreferences com.Apple.mouse.scaling -1
dans le terminal, cela semble désactiver l'accélération et définir la vitesse de suivi de la souris sur une valeur prédéfinie constante que vous ne pouvez pas modifier.
J'ai découvert que je devais me déconnecter et me reconnecter pour que cela prenne effet. Après cela, le pixels pointer moves / meters mouse moved
le ratio est constant mais malheureusement pas réglable .
Pour revenir à Apple paramètres par défaut, ouvrez simplement le volet Souris des Préférences Système et modifiez la vitesse de suivi sur n'importe quoi, puis quittez les Préférences Système.
Mac OS X stocke les paramètres de la souris et du trackpad indépendamment. Si vous souhaitez désactiver l'accélération sur un trackpad au lieu d'une souris, les instructions sont les mêmes, remplacez simplement par com.Apple.trackpad.scaling
partout où vous voyez com.Apple.mouse.scaling
dans ce qui précède (et utilisez évidemment le volet Trackpad des Préférences Système au lieu du volet Souris).
Je ne citerai pas de source, car cette astuce est disponible à de nombreux endroits sur le Web. Je l'ai essayé dans OS 10.7 Lion, mais de nombreuses sources affirment utiliser 10.6 Snow Leopard.