如何将中键按下分配给笔记本电脑中的特定键?


8

如何将中键按下附加到笔记本电脑中的特定键上?如果我点击触摸板的右上角,则可以执行中间按钮,但是我想将其与某个键相关联,例如“ Windows”键或“菜单”键。

有没有办法做到这一点?

当前的答案不适用于具有经典gnome-failsafe桌面的Ubuntu 11.10。我需要有人弄清楚如何才能完成更新的Ubuntu版本。

Answers:


10

要重新映射菜单键,您需要执行以下操作。

安装先决条件

安装包xkbset

sudo apt-get install xkbset

定义键盘布局

接下来,您需要定义要使用的键盘布局。就我而言,gb用于英国/英国键盘布局,而我们用于美国

setxkbmap -layout gb

注意:如果您运行

setxkbmap -query

它将为您提供以下输出-如果模型和布局是您的键盘,那么您使用的是正确的布局

rules:      evdev
model:      pc105
layout:     gb

接下来定义我们将是下一个映射鼠标键:

xkbset m
xkbset exp =m

查找Menu键码

映射Menu密钥。为此,我们需要Menu键代码。在终端运行中xev,将鼠标移到正方形内,然后Menu按键。

在此处输入图片说明

最终结果

在我的情况下,我的Menu键代码是值135,它将被映射到Mouse Button 2

xmodmap -e "keycode 135 = Pointer_Button2"

测试如下:

  1. 在终端中复制一些文本-启动粘贴操作
  2. 将鼠标悬停在标题栏上-窗口移至背景

全部放在一起:

好的,一旦我们确定了正确的键码,我们就可以将其组合在一起以从登录开始。

首先在您的主文件夹中创建一个名为 remapkeys

gedit ~/remapkeys

现在复制并粘贴以下内容

#!/bin/sh
setxkbmap -layout gb
xkbset m
xkbset exp =m
xmodmap -e "keycode 135 = Pointer_Button2"

救。授予文件执行权限

chmod +x ~/remapkeys

然后从Dash搜索启动应用程序,或者使用Gnome Classic-应用程序-其他-启动应用程序

添加一个新的启动应用程序条目

在此处输入图片说明

该命令应为:

bash -c "sleep 5 && ~/remapkeys"

该命令休眠5秒钟,以允许您的桌面在运行新脚本之前出现-如果您的桌面在5秒钟内没有出现(也许您使用的是慢速上网本?),则将该超时增加到10或15秒钟。注销并登录以进行测试。


在执行完这些步骤之后,我是否可以要求绑定是永久性的,还是应该将其放置在某个位置以便每次重新启动时都进行加载?
2011年

当然不是永久的-我会将语句添加到脚本中并作为启动应用程序的一部分运行,以便其在登录时运行。答案对您
有用

它有效,但正如您所说的那样,并非永久性
719016 2011年

...以防万一我还不清楚,我已经添加了如何从登录到答案开始。
fossfreedom

母鹿是否允许拖放?
维托·阿贝拉

5

首先,安装xautomation:

sudo apt-get install xautomation

您可以使用xte发送点击事件:

xte 'mouseclick 2'

您可以在首选项->键盘快捷方式(或Unity搜索中的“键盘快捷方式”)下为其创建自定义快捷方式。单击“添加”,输入名称和上面的命令,然后单击“应用”。滚动到底部,然后像执行其他任何操作一样设置快捷方式。

尝试此操作时,我无法将操作仅绑定到Windows键。您可以通过执行以下操作来尝试此操作,但是似乎有一个错误阻止了此操作:

打开终端并运行

gconf-editor

按Ctrl + f,选择“也在键值中搜索”框,然后在搜索框中输入以下内容:

xte 'mouseclick 2'

底部窗格中应该只有一个结果。如果还有更多内容,请选择名称中包含“ / desktop / gnome / keybindings / custom * / action”的内容。在右上方的窗格中,在“绑定”字段旁边输入“(不带引号)”。如果得到与我相同的结果,则所有窗口外观都会更改,新的键盘绑定将不起作用。将其更改回原来的状态(或使其空白),然后打开外观(在统一搜索下,首选项->外观或“外观”)。那应该解决问题。


大!我不需要做gconf-editor位,到目前为止,它已经可以工作了,重启后我会仔细检查。谢谢!
719016 2011年

在具有经典gnome-failsafe桌面的Ubuntu 11.10中,此功能不再起作用。我敢肯定,尽管有一定方法可以做到。
719016 2011年

1

我要指出,对于其他人(因为我是在寻找自己的鼠标时多次发现的),一些Logitech鼠标有一些按钮(在我的MX1100上,它们默认是“ DPI +/-”按钮),这些按钮不会发送USB接收器的信号。

可以替代此方法,并让鼠标向您的鼠标驱动程序报告按钮被按下的情况,但是该过程甚至还不接近于用户友好的操作(甚至很容易复制,因为每个鼠标看起来都不相同)。“ lomoco”软件包显然适用于某些用户,但一段时间以来尚未针对较新的鼠标进行更新。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.