如何将Ctrl +箭头绑定到Home和End键?xmodmap不起作用


15

在Windows上,我用来绑定Ctrl+ LeftHomeCtrl+权End通过AHK。

现在,我正在努力在Ubuntu中实现此行为。我试过编辑/etc/inputrc

"\e[1;5C": end-of-line
"\e[1;5D": beginning-of-line

它有效,但仅在终端窗口中。我也尝试过xmodmap:

xmodmap -e "keycode 113=Left NoSymbol Home"

但它不起作用。
奇怪的是,如果我在xmodmap中绑定Shift+ Left,它将起作用:

xmodmap -e "keycode 113=Left Home"

我的猜测是,Ctrl+ Left(跳过单词)的默认行为在某种程度上比xmodmap绑定具有更高的优先级。

在哪里可以找到默认绑定的位置以及如何将其删除?或者,也许我可以在那里绑定所需的行为?

我在Ubuntu 12.04上


您是否获得xev要更改的键的输出?
赛斯2013年

我做。我从xev输出中得到了键码113 = Left。
acid009 2013年

你能把整个xev输出加起来吗?
赛斯

状态0x0,键码113(键符号0xff51,左)
acid009 2013年

和状态0x4,如果使用Ctrl按下,则为键码113(键符号0xff51,左)-状态将按预期更改为0x4
acid009 2013年

Answers:


11

AutoKey可以像这样进行绑定,但是它需要在后台运行服务(例如ahk,但与xmodmap不同)。

配置一个“短语”,其中文本为<home>,粘贴方法为Keyboard,热键为<ctrl>-<left>

自动按键GUI


真好 这也可能是这里的答案以及askubuntu.com/questions/254424/…的
Kevin Bowen

1
扩展的,更通用的版本:askubuntu.com/a/304834/194 这会使这个问题重复吗?
cscarney 2013年

也许可以,但是您仍然应该得到赏金。;-)
Kevin Bowen

此方法不起作用。
acid009 2014年

1
@JeffDror是<page_up>和<page_down>(code.google.com/p/autokey/wiki/SpecialKeys
cscarney 2014年

1

我在Ubuntu工作站上使用Apple铝制键盘,以下xmodmap命令为我完成了此操作:

# remap Ctrl_L to ModeSwitch, then use it to map arrow keys so that
# they act like on the MacBook keyboard with Fn key pressed 
xmodmap -e "keycode 37=Mode_switch"
xmodmap -e "keycode 113 = Left NoSymbol Home"
xmodmap -e "keycode 114 = Right NoSymbol End"
xmodmap -e "keycode 111 = Up NoSymbol Prior"
xmodmap -e "keycode 116 = Down NoSymbol Next"

这非常有效,因为Caps Lock使用Ubuntu键盘首选项将我的键重新映射为Control功能,因此不需要左Control键。由于它位于MacBook键盘上的Fn键所在的位置,因此在台式机键盘和MacBook键盘之间进行切换不会影响肌肉记忆力。


0

Autokey为我工作。默认的自动键行为是:映射right ctrl+ arrowleft ctrl+ arrow。而且我只想要right ctrl,因为我曾经left ctrl浏览过单词。

这是我在自动键中使用的脚本:

output = system.exec_command('xinput query-state "AT Translated Set 2 keyboard" | grep down', getOutput=True)
# 105 is right ctrl
if 'key[105]=down' in output:
    keyboard.send_keys('<end>')
else:
    keyboard.send_keys('<ctrl>+<right>')

注意:您的键盘名称可能不同。尝试所有这些。我有3台设备,但只有一台可以工作

xinput list --name-only | grep -i keyb
Virtual core keyboard
Virtual core XTEST keyboard
AT Translated Set 2 keyboard

PS我从GitHub安装了Autokey,因为Ubuntu软件中的软件包已损坏。

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.