ita*_*omo 29 shortcut-keys 12.04 key-binding
我在我的 Ubuntu 12.04 上。每次编辑文本时,我都会使用ctrl+ left/right在单词之间移动/跳转。最近,我安装了 xscreensaver 并更改了键盘快捷键以激活我的屏幕保护程序。但是随后,Ctrl+left停止了正常响应(移到左边的下一个单词)。Ctrl+right仍然跳到右边的下一个单词。无论我是使用终端、Gedit 还是在网页中输入文本,都会出现问题。
我恢复到 gnome-screensaver,删除了 xscreensaver(也修复了我的键盘快捷键)。但问题仍然存在。
我试图从内容复制/etc/inputrc
到~/.inputrc
(默认情况下,我没有〜/ .inputrc文件)。我在这里得到了一些信息:当我使用 Ctrl 和箭头键导航时出现奇怪的字符
请帮忙。
编辑:这是我的 ~/.inputrc:
# /etc/inputrc - global inputrc for libreadline
# See readline(3readline) and `info rluserman' for more information.
# Be 8 bit clean.
set input-meta on
set output-meta on
# To allow the use of 8bit-characters like the german umlauts, uncomment
# the line below. However this makes the meta key not work as a meta key,
# which is annoying to those which don't need to type in 8-bit characters.
# set convert-meta off
# try to enable the application keypad when it is called. Some systems
# need this to enable the arrow keys.
# set enable-keypad on
# see /usr/share/doc/bash/inputrc.arrows for other codes of arrow keys
# do not bell on tab-completion
# set bell-style none
# set bell-style visible
# some defaults / modifications for the emacs mode
$if mode=emacs
# allow the use of the Home/End keys
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# allow the use of the Delete/Insert keys
"\e[3~": delete-char
"\e[2~": quoted-insert
# mappings for "page up" and "page down" to step to the beginning/end
# of the history
# "\e[5~": beginning-of-history
# "\e[6~": end-of-history
# alternate mappings for "page up" and "page down" to search the history
# "\e[5~": history-search-backward
# "\e[6~": history-search-forward
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
$if term=rxvt
"\e[8~": end-of-line
"\eOc": forward-word
"\eOd": backward-word
$endif
# for non RH/Debian xterm, can't hurt for RH/Debian xterm
# "\eOH": beginning-of-line
# "\eOF": end-of-line
# for freebsd console
# "\e[H": beginning-of-line
# "\e[F": end-of-line
$endif
Run Code Online (Sandbox Code Playgroud)
如果我删除 /etc/inputrc,这就是我按住 CTRL 然后按向右箭头五次得到的结果:
与上面的第一张图片不同,按住 CTRL 键并多次按向左箭头不会;5D
再次打印出来......就像它接受了一次命令并且不再执行它......见下图:
yPh*_*hil 41
1 - 在 ~/.zshrc
bindkey '^[[1;5D' backward-word
bindkey '^[[1;5C' forward-word
Run Code Online (Sandbox Code Playgroud)
2 - 或在 ~/.bashrc
bind '"\e[1;5D" backward-word'
bind '"\e[1;5C" forward-word'
Run Code Online (Sandbox Code Playgroud)
... 现在ctrl+ left/right跳转 byobu / tmux 中的单词。
3 - 不要惹麻烦inputrc
。
小智 7
我有同样的问题。我通过将这些行复制到我的~/.inputrc
文件来修复它:
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
Run Code Online (Sandbox Code Playgroud)
小智 2
touch ~/.inputrc
使用. 创建 inputrc 文件
将您提到的链接中接受的答案的内容复制到我使用 Ctrl 和箭头键导航时出现的奇怪字符,通过使用某些文本编辑器打开文件 ~/.inputrc 到此文件。保存。
使用命令读取文件bind ~/.inputrc
或重新启动新终端。事情应该有效..