如何将Ctrl右键映射到Fn?


12

运行Ubuntu 14.04 LTS的Dell XPS 13。我经常使用HomeEnd键。(似乎大多数人不使用这些键多了。)不幸的是,因为它是这样一个小电脑,戴尔把Home并且End在左,右方向键的上方,需要拿着Fn钥匙下来取HomeEnd

Ctrl光标键旁边有一个键。我从未使用过此键,因为我已CapsLock映射到Ctrl。我希望它可以充当Fn键,因此可以用一只手按下Fn LeftHome)和Fn RightEnd)。

有什么办法吗?

编辑:我同时运行了showkey和xev,如@AB的注释所建议,并且Fn键不会触发任何输出。我有种感觉,这意味着我的请求是不可能的。

在此处输入图片说明


1
这能解决您的问题
Edward Torvalds

1
打开一个终端并运行sudo showkey,然后按您的Fn键。Fn钥匙有输出吗?如果没有启动xev,请按Fn将输出添加到您的问题中。
2015年

@AB(问题已编辑)两个程序都看不到Fn键按下。
IJ肯尼迪

3
这是一个硬件问题,通常是不可能的,尽管可能有一个或两个模型可以使用。即使这样,它仍然需要软件绑定以外的东西。
2015年

按照上面我的评论中的描述启动相同的命令,然后使用Fn-HomeFn-End检查键码。
2015年

Answers:


3

安装xautomation,我们需要命令xte

sudo apt-get install xautomation

xbindkeys

sudo apt-get install xbindkeys

创建或编辑文件 ~/.xbindkeysrc

nano ~/.xbindkeysrc

并添加以下行

"xte 'key Home'"
 m:0x4 + c:113

"xte 'key End'"
 m:0x4 + c:114

测试

killall xbindkeys
xbindkeys -f ~/.xbindkeysrc

该软件包xbindkeys将安装一个自动启动条目

/etc/xdg/autostart/xbindkeys.desktop

无需其他操作。


解决问题的好方法!
特技

嗯,我按照这些指示去开球,一切似乎都很好,但是...对我来说不起作用。除了尝试right-control-right-arrow(希望结束)之外,还有什么方法可以检查我是否已根据您的回答进行了设置?
IJ肯尼迪2015年

这是您获得的完全相同的值xbindkeys -k吗?
AB

@AB是“(方案功能)” m:0x4 + c:113控制+左“(方案功能)” m:0x4 + c:114控制+右
IJ肯尼迪

致支持者:这在运行Ubuntu 14.04的Dell XPS上有效吗?
IJ肯尼迪

1

对于您来说不幸的是,它Fn是一个死键:这意味着它本身没有扫描代码,仅在与其他键一起按下时才为其他键提供附加的扫描代码。

当您去tty1那里执行时,您可以看到以下内容:

showkey --keycodes

您按的任何键都会为您提供输出,除了 Fn,因此无法映射FnCtrl

但是,根据键盘的硬件Fn+ 可能会映射到EG Ctrl+,但是您将失去两个Ctrl键的功能...

(我在键盘上尝试过,不可能用Fn+ 给出相同的扫描代码...)


我怀疑Fn是死键。您如何看待其他(推荐的)答案?
IJ肯尼迪2015年

AB总是使用超越我的黑魔法:我只做白魔法,所以我会说:这是最好的答案...但是,我想到了一些东西:如果您愿意放弃word leftword right([Ctrl中的内容现在是]←和[Ctrl]键→)可能的工作......(更新答案)?
Fabby

我经常使用左单词和右单词,所以这对我不起作用。虽然有人。
IJ肯尼迪2015年

0

这是一个更简单的解决方案:绑定sh -c "xdotool getactivewindow key Home "sh -c "xdotool getactivewindow key End "命令,以及Alt+ ,Alt+.

当然,您需要xdotool先使用进行安装sudo apt-get install xdotool

然后转到Settings-> Keyboard-> Shortcuts-> Custom。单击加号按钮并创建新的快捷方式。

注意:您也可以使用Alt+ Arrow_UpAlt+ Arrow_Down,但是我不建议您使用或Ctrlkey,因为某些程序已经将它们用作快捷方式。例如,Firefox使用那些。

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.