标签: inputrc

向上/向下翻页打印〜而不是在终端中进行历史搜索

我使用的是配备 mac os x 10.8.2 的 Macbook Pro

我已经设定:

page up: \033[5~
page down: \033[6~
Run Code Online (Sandbox Code Playgroud)

在终端键盘设置中(按 esc 获取 \033)。

我的 ~/.xinputrc 是:

# Be 8 bit clean.

set input-meta on
set output-meta on
set convert-meta off

# Auto completion options
set show-all-if-ambiguous on
set completion-ignore-case on

# Keybindings
"\e[1~": beginning-of-line       # Home key
"\e[4~": end-of-line             # End key
"\e[5~": history-search-backward # Page Up
"\e[6~": history-search-forward  # Page Down
"\e[3~": delete-char             # Delete key
"\e[5C": forward-word            # Ctrl+right
"\e[5D": backward-word           # …
Run Code Online (Sandbox Code Playgroud)

terminal inputrc macbook-pro macos

5
推荐指数
1
解决办法
4006
查看次数

如何在 bash shell 中禁用 `alt-numkey`

我可以通过按在 Chrome OS 中的应用程序之间切换alt-N,其中 N 是我的应用程序在状态栏上的位置。有用!

但是当我在我的 Nitrous.io 盒子的 bash shell 中时,按下alt-N以跳转到不同的应用程序会给 bash 一个命令:(arg: N).

(arg: N)命令在 bash 中做什么?五分钟的搜索教会了我很多热键,但没有alt + 数字键

我可以禁用它吗?

bash readline bashrc inputrc

4
推荐指数
1
解决办法
1030
查看次数

如何使用鼠标在 bash 上移动命令行光标

当使用 bash(在终端中)执行很长的命令时,能够使用鼠标将光标设置到任意位置通常很有用。在 Mac-Os 中,alt(Option)键具有此效果(使用 alt+click)。

我开始使用Linux,这个选项不起作用。我相信有某种方法可以更新 ~/.inputrc 来启用此选项。你知道这样的方法吗?

linux terminal bash inputrc

4
推荐指数
1
解决办法
1万
查看次数

将 vi 模式字符串移动到 bash 提示符的末尾

我在 bash 中使用 vi 编辑模式。我在 ~/.inputrc 中将“show-mode-in-prompt”设置为“on”。

显示模式提示(关闭)

如果设置为 On,则在提示开头添加一个字符串,指示编辑模式:emacs、vi 命令或 vi 插入。模式字符串是用户可设置的(例如,emacs-mode-string)。

所以现在我可以在我的提示开头看到编辑模式。

i:$ # This is ins mode
c?$ # This is cmd mode
i:$ cat ~/.inputrc
set editing-mode vi
set show-mode-in-prompt on
set vi-ins-mode-string "\1\e[1;32m\2i:\1\e[0m\2"
set vi-cmd-mode-string "\1\e[1;31m\2c?\1\e[0m\2"
set colored-stats on
i:$ echo $PS1
$
Run Code Online (Sandbox Code Playgroud)

不过,我真的很喜欢在我的提示末尾添加这个,并在当前目录前面加上,即

/current/dir/here $ i:
Run Code Online (Sandbox Code Playgroud)

但我不确定这是否可以实现。我的第一个想法是在 PS1 中使用回车,但不幸的是这会覆盖模式字符串。

i:$ PS1='\r\w $ '
~/projects $
Run Code Online (Sandbox Code Playgroud)

我的第二个想法是以某种方式获取模式字符串并将其插入 $PROMPT_COMMAND,而不是让 readline 将其写入提示。我可以通过以下方式获取当前模式:

i:$ bind -v | grep keymap | awk '{print $3}'
vi-insert
Run Code Online (Sandbox Code Playgroud)

但是 PROMPT_COMMAND 值仅在发出提示之前执行,因此我不会看到模式更改。

第 …

bash command-line prompt readline inputrc

4
推荐指数
1
解决办法
937
查看次数

来自 .inputrc 的 bash readline 的元键绑定不起作用

如果我把

"\M-p": previous-history
Run Code Online (Sandbox Code Playgroud)

进入我的 .inputrc 并启动一个终端(urxvt 或 xterm),按 Alt-p 打印一个“:”字符。随后的点击产生 ^[p 像这样:

:^[p^[p^[p^[p^[p
Run Code Online (Sandbox Code Playgroud)

我希望 Alt-p 能够像 Control-p 那样给我历史记录中的上一个命令。我已经通过将以前的历史记录绑定到 Control-t 来验证 .inputrc 正在被读取,并且有效。

"\C-t": previous-history
Run Code Online (Sandbox Code Playgroud)

我也试过

Meta-p: previous-history
Run Code Online (Sandbox Code Playgroud)

没有成功。

其他人遇到过这个问题吗?难道我做错了什么?我在 Debian sid 上使用 xmonad。

bash readline inputrc

1
推荐指数
1
解决办法
980
查看次数

如何使用shift+方向键选择当前终端命令?

我发现这个https://superuser.com/a/488158/458103可以使ctrl+arrow光标向前和向后移动。现在如何使shift+arrow选择当前命令字呢?

linux terminal cygwin inputrc xfce4-terminal

1
推荐指数
1
解决办法
3627
查看次数