在Mac OS X中禁用鼠标加速

时间:2011-04-25 20:27:37

标签: macos mouse hid

首先,这是用户空间问题:Disabling mouse acceleration in Mac OS X @ superuser

总结一下:我希望在Mac OS X上有线性鼠标响应。也就是说,没有加速; 可调整常量 pixels pointer moves / meters mouse moved比率。

我不知道如何解决这个问题。 (嗯,不是真的,但最好从头开始。)我应该写一个鼠标驱动程序吗?一个启动程序?点击即可设置调整器?首选项窗格?

我希望我的解决方案尽可能简单,通用且不引人注目,因此某些标准可能是:

  • 适用于Snow Leopard(10.6.5)及更高版本 - 很久以后,除非API的一个重要部分被弃用
  • 适用于鼠标,但不适用于触摸板,平板电脑,魔棒......(或者可以配置?)
  • 可以很容易地被其他想要同样事情的人(我们这42个人都在这个星球上)应用/运行。

我是一位经验丰富的C程序员,无论是在用户还是内核领域(在Linux和Windows中),但对Mac OS X或Darwin几乎一无所知。所以任何事情都是值得赞赏的(“不能在没有Apple证书的情况下分发驱动程序”)但是一些文档/参考文章会让我走得很远(“Darwin的下一代鼠标曲线编辑API和示例”)。

我知道这个问题有点开放,但我甚至不知道解决方案的是可行的。提前谢谢。

编辑:虽然我已经问过两个问题来解决同样的问题,但这是另一个问题的程序对应问题。 (请参阅此问题的第一句。)在这里,我正在尝试创建自己的解决方案,可以这么说,使用 - 我不知道 - 一些HID API?一个司机? “开放当前用户的prefs文件并将此设置更改为此”的解决方案可能应该发布在另一个问题上,但请注意,这样的解决方案可能不存在。

1 个答案:

答案 0 :(得分:70)

这个答案在错误的网站上!

我在StackOverflow上的很多声誉都来自于人们对这个答案的投票,我在回忆之前就已经知道有几个堆栈交换网站,StackOverflow仅用于编程问题和答案。因此,如果您想编写自己的鼠标驱动程序,上面的问题是关于如何解决这个问题。对于所有其他讨论,请将它here on the superuser site放在它所属的位置。

原始答案如下。


解释

您可以从终端更改隐藏的首选项。要读取其当前值类型

defaults read .GlobalPreferences com.apple.mouse.scaling
在终端提示下

。正常值为0~3,可以通过移动“系统偏好设置”鼠标窗格中的“跟踪速度”滑块来设置。因此,0~3的值不会禁用加速度。

如何禁用加速

但是,如果通过键入

将其设置为-1
defaults write .GlobalPreferences com.apple.mouse.scaling -1

在终端中,似乎禁用加速并将鼠标跟踪速度设置为某个不能更改的常量预定义值。

我发现我必须退出并重新登录才能生效。之后,pixels pointer moves / meters mouse moved比率常量但遗憾的是

如何撤消更改

要恢复为Apple默认设置,只需打开“系统偏好设置”的“鼠标”面板,然后将“跟踪速度”更改为任何内容,然后退出“系统偏好设置”。

鼠标≠触控板

Mac OS X独立存储鼠标和触控板设置。如果您想在触控板而非鼠标上禁用加速,说明是相同的,只需在上面的com.apple.trackpad.scaling中找到com.apple.mouse.scaling替换(并使用系统偏好设置的触控板窗格而不是显然是鼠标窗格。

注释

我不会引用消息来源,因为此提示可在网络上的许多地方使用。我在OS 10.7 Lion中试过它,但许多消息来源声称使用了10.6 Snow Leopard。