# Mousetweaks 手册

## 介绍

Mousetweaks 鼠标增强工具，为 GNOME 桌面提供了鼠标辅助功能。实际上，它提供了下列功能：

- 模拟右键点击：允许用户通过按住左键一段时间，就可以执行右键点击。

- 悬停点击：允许用户不需要按下任何鼠标按钮，就可以执行各种点击操作。

- 指针锁定：允许用户把指针锁定在面板的一个区域中，直到用户按下一个预设的按键或鼠标按钮来释放它。

从 2.31.3 版开始，mousetweaks 不再依赖任何 AT-SPI 辅助功能框架。

## 如何使用这些功能

模拟右键点击和悬停点击依赖于 mousetweaks 进程；而指针锁定小程序依赖于 GNOME 面板。所以，使用这些功能的方法也不尽相同。

### 启动模拟右键点击功能

你可以用两种方法启动模拟右键点击功能：

- 从图形界面启动

- 从命令行启动

#### 从图形界面启动

要从图形界面中启动模拟右键点击功能，需要使用鼠标首选项面板的辅助工具。要打开它，请点击菜单系统首选项控制中心，打开控制中心面板。在里面找到鼠标首选项打开，再打开辅助工具标签，可以看到下面的选项：

鼠标首选项面板图示

要启用模拟右键点击功能，打勾选中这个复选框：

按住左键(主要按钮)来触发右键(次要按钮)的点击

启用模拟右键点击复选框的图示

#### 从命令行启动

要从命令行启动模拟右键点击，打开终端并输入下面的命令：

`mousetweaks `--ssc``

### 启动悬停点击功能

你可以有三种方法来启动悬停点击功能：

- 从鼠标首选项面板的辅助工具标签中启用

- 从命令行启动

- 从悬停点击面板小程序上的开/关按钮上启用

#### 从鼠标首选项面板的辅助工具标签中启用

要从图形界面中启动模拟右键点击功能，需要使用鼠标首选项面板的辅助工具。要打开它，请点击菜单系统首选项控制中心，在里面找到并打开鼠标首选项，再点击辅助工具标签，你将会看到下面的设置：

鼠标首选项面板图示

要启用悬停点击功能，打勾选中这个复选框：

当指针停止移动时，初始化点击

启用悬停点击复选框的图示

#### 从命令行启动

要从命令行启动悬停点击并显示点击类型窗口，打开终端并输入下面的命令：

`mousetweaks `--dwell --show-ctw``

启动参数 --login 和 --daemonize 是添加允许 GDM 启动和退出 mousetweaks：第一个是启动时不检查辅助技术框架；不忽略第二个，mousetweaks 运行后将保留进程号，以便 GDM 可以通过进程号来关闭它。

#### 从悬停点击面板小程序的开/关按钮来启用

您还可以将鼠标指针指向悬停点击面板小程序上的开关按钮，只需停留一会儿就可以启用悬停点击功能。事实上，这个鼠标样的图标是一个可悬停点击的开/关按钮，用颜色的填满程度来显示悬停的时间。当颜色填充满格子，按钮显示激活状态，悬停点击启动。

GNOME 菜单右边显示的点击类型小程序图示

要获得关于如何在 GNOME 面板上添加悬停点击小程序的介绍，请参阅 启动指针锁定功能，那里讲解了怎样添加指针锁定小程序。操作步骤跟悬停点击是相似的。

### 启动指针锁定功能

因为指针锁定是一个面板小程序，它的启动跟随 GNOME 面板。因此，要启用指针锁定功能，您必须要在面板上添加相应的小程序，然后它就可以自动运行了。

要添加它到面板上，操作跟其他小程序相同：在面板上点右键，打开快捷菜单，选择添加到面板，出现一个面板小程序列表。

在添加到面板窗口中双击指针锁定项，指针锁定小程序就会添加到面板。它会一直运行，除非您从面板上删除它。

## 如何退出这个功能

类似启动这个功能，它们的退出也依赖于您想退出的功能。

### 退出模拟右键点击

退出右键点击可以有两种方法：

- 不选中 Mousetweaks 首选项面板上对应的复选框。

  启用模拟右键点击特性的复选框图示

  请访问从图形界面启用模拟右键点击功能，来找到这个复选框的位置。

- 通过在命令行中输入下面的命令：

  `mousetweaks` `--shutdown`

### 退出悬停点击

退出悬停悬停点击的方法可以有三种：

- 不选中 Mousetweaks 首选项面板上对应的复选框。

  启用无按钮点击特性的复选框图示

  请参考从图形界面启动悬停点击，找到这个复选框的位置。

- 通过在命令行中输入下面的命令：

  `mousetweaks` `--shutdown`

- 如果悬停点击小程序已经添加到 GNOME 面板，可以把指针悬停在开/关按钮上来禁用此功能。

  GNOME 菜单右边显示的点击类型小程序图示

### 退出指针锁定功能

因为指针锁定功能是一个面板小程序，您必须像别的小程序那样退出它：从面板上删除它。要做到这一点，在小程序的竖线手柄上点右键，然后在出来的快捷菜单中选择从面板上删除命令。

指针捕获区域(绿色)及其快捷菜单图示

当使用默认的 GNOME 主题时，指针锁定小程序的手柄就是捕获区域左边的两条垂直竖线。

## 功能介绍

Mousetweaks 鼠标增强工具提供了三项辅助功能。在这一节里你将看到三个功能的描述：

- mouse-a11y-ssc-description

- mouse-a11y-dwell-description

- mouse-a11y-pointer-capture-description

### 模拟右键点击描述

用户激活这一特性后，可以通过按住鼠标左键来执行右键点击动作。这对那些只能使用一个鼠标按钮 的用户非常有用。

图示右键点击的设置选项。

#### 它是怎样工作的？

假定已经启用了模拟右键点击特性。

要执行右键的点击动作，需要按住左键一段时间，这个时间的长度是由模拟右键功能的延时滑块确定的。按住左键时，指针的箭头将使用不同的颜色进行填充，以反映经过的时间。

如果在指针的颜色还没有填充满前，用户就松开了左键，系统将只产生左键按下和释放的消息。

如果用户松开左键时，指针的颜色已经填充满，在产生左键点击事件后，将会接着产生一个右键点击事件。事实上，用户一松开左键 mousetweaks 就会创建模拟右键点击事件。

上面的解释是假定鼠标左键在按住和松开的时间内，指针没有移动，如果在鼠标左键松开前，指针发生了移动，将不会产生模拟右键点击动作。因此，要取消模拟点击，用户只需在松开鼠标左键前移动一下鼠标指针即可。

此外，模拟的右键点击产生之前，会有一个优先的左键点击事件，当模拟点击一个对左键有响应的对象时，这使它点击的对象行为跟预期不同。更多详细介绍，请参阅 与普通右键点击的差异。

#### 延时滑块

在启用复选框的下面，有一个延时滑块，指定用户需要按住左键多久，才能触发动作。拖动滑块，用户可以设定合适的时间。

#### 运动阈值

对于很难保证按住指针不动的用户，可以设定“运动阈值”特性。这个选项可以让 Mousetweaks 忽略指针轻微的移动，即使指针有少量的移动，仍然可以保证右键点击特性的实现。您可以在悬停点击的运动阈值特性里，找到更多相关信息。

悬停点击下面的运动阈值 选项也会影响到模拟右键点击特性，甚至在没有启用悬停点击的情况下。

#### 与普通的右键点击的不同点

因为模拟右键点击无法忽略左键的按下和松开事件，所以在产生右键点击前会先发生一个左键点击。换句话说，这一功能产生的右键点击将会在前面自动追加一个左键的点击，这和普通的右键点击有一点不同。例如：

- 选中多个项时不能执行右键点击动作，因为右键点击前的那次左键点击将会取消选择。

- 在网页链接上执行模拟右键点击时，执行模拟右键点击的左键将在模拟右键打开链接的快捷菜单之前打开链接的网页。

  按住 Ctrl 键，然后再在网页链接上执行模拟右键点击，可以打开上下文菜单。它能工作的原因是，当链接收到按住 Ctrl 和左键的组合键信息时，会在新标签页打开链接，这也可以看作是，按住 Ctrl 修饰键在一个链接上，用模拟右键点击打开上下文菜单时的一个副作用影响。

  不过浏览器要配置成打开新标签时不自动切换到新标签，否则当前页会变成新标签页，上下文菜单也会消失。

- 在面板上的回收站图标上执行模拟右键时，不仅会出现快捷菜单，而且回收站文件夹也会打开。(出现快捷菜单是由于右键点击，打开回收站文件夹是因为右键点击前的那次左键点击。)

列出所有的歧义行为不大可能，因为这要依赖于应用程序对由左键产生的右键点击的反应。

从另一方面来看，按住左键很长时间也没有触发模拟右键点击是不可能的，除非指针在左键松开前发生移动，这也会产生一些不可预料的结果，例如：

- 当在滚动条的按钮的箭头上按住左键，滚动条会跳至底部。这实际上是在滚动条按钮上点击右键的正常行为。

  要避免滚动条跳到底部，只需要在释放左键之前将指针移动到滚动条的箭头之外。这种方法将不会触发模拟右键点击。

### 悬停点击描述

一些用户不能使用任何鼠标按钮，通过启用悬停点击，他们可以使用鼠标执行各种点击，而不需要按下按钮。可以执行的点击类型有：单击、双击、拖动和右键点击。

当悬停点击激活以后，鼠标按钮继续保持正常的点击功能，而且，当悬停点击运行时，如果用鼠标按钮执行了一次点击，悬停点击将会停止，不会有模拟产生；要开始一次新的悬停点击，用户得重新进行移动和停止鼠标的动作。

#### 它是怎样工作的？

每次指针停下来的时候，就开始悬停点击。为了给用户反馈，在进行点击前的倒计时，mousetweaks 将使用其它颜色填充指针箭头。

点击如何完成，以及选择什么点击类型，依赖于用户选择的模式。可用的模式有：

- 选择预设的点击类型

- 用鼠标手势决定点击类型

悬停模式的单选按钮图示

要选择悬停模式，用户需要根据自己需要选择一个单选按钮。

##### 使用预设的点击类型自动完成点击。

当用户选择选择预设的点击类型时激活这种模式。事实上，当鼠标停止运动了延时滑块指定的时间，系统就会自动执行点击类型窗口所选的点击类型，如下：

点击类型窗口图示

要显示点击类型窗口，用户必须选中显示点击类型窗口复选框：

显示点击类型窗口的复选框图示

完成点击后，自动回到单击类型。为了选择其他点击类型，用户需要到点击类型窗口里再执行一次启用按钮自动点击。

与点击类型窗口不同，一些用户可能更喜欢在面板上的悬停点击小程序，其方便之处在于：

GNOME 菜单右边显示的点击类型小程序图示

实际上，使用悬停点击面板小程序可以：

- 用户不需要使用点击类型窗口，它可能会挡住桌面上其他的窗口。

- 用户可以直接使用悬停点击小程序上的开/关按钮来启用或停止此项功能。这对于想暂时禁用悬停点击来阅读一些文本来说非常有用。

要在 GNOME 面板上显示悬停点击小程序，可以使用通常的方法来添加。您可以在这一节里找到添加方法：启用指针锁定功能。

点击类型窗口和悬停点击小程序可以同时使用，也可以分别单独使用。

##### 使用鼠标手势来完成点击和选择点击类型

当用户选择使用鼠标手势来完成点击和选择点击类型时激活这种模式。事实上，当鼠标停止移动一定的时间(在延时中指定)，指针的形状会有一个短时间的改变；我们把这个形状叫手势指针：

- 当鼠标显示手势指针时，移动鼠标就可以在最后停止的位置产生一个点击动作，然后指针恢复到正常形状。点击的类型由移动方向来决定。指针移动时会有一条线跟随指针，可以给用户提供视觉反馈。

- 如果用户在移动鼠标前，指针已经恢复到普通形态，这时候的移动就不会产生点击动作。下次停止移动时重新开始悬停功能。

用户也可以设定指针匹配移动方向，通过四个可用的下拉列表：

移动方向对应点击类型的配置选项图示

在每个下拉列表里还有一项禁用项。如果不想自动执行某些点击类型，可以禁用相应的选项。这对那些仅仅某一项点击困难的用户有很大帮助。

#### 悬停延时设置

拖动延时滑块，用户可以配置鼠标停止多久后开始悬停点击。

悬停点击的延时设置图示

悬停延时设置仅仅与悬停点击有关。

#### 运动阈值设置

对于保持鼠标静止有困难的用户，这个运动阈值项很有用处。

悬停点击的运动阈值设定图示

当设置滑块为低时，很小的移动也会被注意到；而设到高阈值时，鼠标移动很多时才作为运动。

运动阈值的设置不仅关系到悬停点击，也会影响到模拟右键点击，而这与悬停点击是否被禁用无关。

### 锁定指针描述

一些用户不仅仅是在电脑上使用指点设备。他们想把指针锁定在屏幕的一块区域里，以便可以让指点设备执行其它任务。

实际上，指针锁定小程序会在面板上创建一块区域，用户可以把指针锁定在这里，直到用预设的方法来释放指针。

看一下启动指针锁定功能可以了解怎样在 GNOME 面板上添加指针锁定小程序。

指针捕获区域(绿色)及其快捷菜单图示

指针被锁定时的捕获区域图示

在指针锁定小程序上点右键，选择首选项菜单，可以设置指针锁定小程序的选项。

指针锁定小程序的首选项图示

指针锁定小程序的首选项窗口包含三个小节：

- 锁定指针一节里，用户可以指定指针进入捕获区域后，执行什么操作来锁定指针。例如，如果选中了 Ctrl 修饰键，那么按住 Ctrl 键就可以锁定指针。如果没有设定修饰键，鼠标按钮设定的是 0，当指针进入捕获区域时，将会被自动锁定。

  您也可以指定修饰键和鼠标按钮组合使用。

- 释放指针小节里，可以指定哪一个修饰键或鼠标按钮来释放指针。

  您也可以指定修饰键和鼠标按钮组合使用。

- 捕获区域的范围小节里，可以设定捕获区域在 GNOME 面板上的宽度。

## 关于 Mousetweaks

### 作者和主页

Mousetweaks 是基于 Launchpad 平台规范。目前由 Gerd Kohlberger (gerdk@svn.gnome.org)负责，和本文作者(frfumanti@svn.gnome.org)帮助测试和服务。

您可以在 Launchpad 和 GNOME Live 上找到更多相关信息。

### 反馈

要报告 Mousetweaks 模块、用户界面、本手册的缺陷或提出建议，请使用 GNOME's Bugzilla 系统提供的方法。如果是鼠标首选项面板的辅助工具布局，请归类到 gnome-control-center 模块；其他 Mousetweaks 相关请归类到 Mousetweaks 模块。

### 版权

Mousetweaks 在 FSF 的 GNU 许可协议下发布；是版本 3，或者(你愿意的)之后的版本。协议的副本可以在 链接 里找到，或者在这个程序的源代码里找到 COPYING.GPL 这个文件。

本手册由 FSF 的 GNU Free Documentation License 许可协议发布，是在 1.3 版本的许可协议，或者(你愿意)之后的版本。协议的副本可以在 链接 里找到，或者在这个程序的源代码里找到 COPYING.FDL 这个文件