readline

zsh 在 zle 小部件中读取输入
readline

zsh 在 zle 小部件中读取输入

我正在尝试实现按下时 zsh 历史搜索的自定义版本ctrl-r(尽管我的功能将映射到不同的快捷方式)。 到目前为止,我已尝试使用read,vared并read-command在用户按下定制的快捷键后读取输入。我的代码如下: # Bind \eg to `git status` function _cust-hist { zle -I local line read -r line echo $line zle accept-line } zle -N _cust-hist bindkey '\eg' _cust-h...

Admin

有没有办法在 bash 中保存键盘宏?
readline

有没有办法在 bash 中保存键盘宏?

我想永久保存键盘宏我使用C-x (和录制了该C-x )宏。有没有一种简单的方法可以“查看源代码”我新录制的宏,以便我可以将其绑定到 ~/.inputrc 中的键盘快捷键? 我以为dump-macros会这么做,但似乎没有...... ...

Admin

Bash readline 命令用于向上/向下滚动终端行
readline

Bash readline 命令用于向上/向下滚动终端行

什么是 Bash readline 命令,即短语单词命令,使用 shift 向上/向下滚动终端行 - Page up/down 如何获得所有完整的 Bash readline 命令(通过输入 ~.inputrc 使用) ...

Admin

修改 inputrc/set readline 以允许向下箭头从历史记录中删除未完成的命令
readline

修改 inputrc/set readline 以允许向下箭头从历史记录中删除未完成的命令

在默认的 Fedora 和 Debian 以及其他发行版安装中,可以输入 bash 并使用向上箭头循环以前的历史记录,并使用向下箭头返回未完成的命令。按下未完成命令上的向下箭头不会循环到空白板,因为历史记录缓冲区似乎在未完成的命令处结束。我想按下向下箭头循环到空白板,但仍允许按向上箭头返回未完成的命令。在空白状态下输入新命令将替换上一个未完成的命令。readline 可以做到这一点吗?如果可以,如何实现?请原谅我问了主要问题的范围之外的问题,但是 zsh 可以做到这一点吗? ...

Admin

在 Bash 中,如何读取名为“history-size”的 readline 变量的值?
readline

在 Bash 中,如何读取名为“history-size”的 readline 变量的值?

我的 Bash 版本已从 v590 更新至版本 5.2.15(1)-release (i686-pc-linux-gnu)。 我使用 Kubuntu 20.04 和 KNOPPIX 9.1。 readline 变量history-size可以设置为开启或关闭,可以绑定到键序列(但通常不绑定),并且具有一个值。 该值默认为 的值$HISTSIZE。 我想检查hist-sizereadline 中变量的值,看它是否实际上与$HISTSIZEshell 中的值相等。 我如何读取变量的值hist-size? 早些年我曾使用过“Readline Library”,但现...

Admin

如何在 PowerShell 中绑定 TabCompleteNext/TabCompletePrevious?
readline

如何在 PowerShell 中绑定 TabCompleteNext/TabCompletePrevious?

我尝试使用以下命令在 PowerShell 7.2.4 中绑定 Ctrl-N 和 Ctrl-P,但它们没有效果 - 新的绑定不起作用。 Remove-PSReadLineKeyHandler Tab Remove-PSReadLineKeyHandler Tab -ViMode Command Remove-PSReadLineKeyHandler Shift-Tab Remove-PSReadLineKeyHandler Shift-Tab -ViMode Command Set-PSReadLineKeyHandler Ctrl+N -Function...

Admin

大写字母的控制序列
readline

大写字母的控制序列

我正在尝试提高我的盲打技术,它的准确度和速度都很低。 我注意到自己在输入大写字母时遇到了很大困难。我经常不得不离开主行,或者如果我伸小指去按换档键,我总是会打错。 我在使用退格键时遇到了同样的问题,但通过改用 ^H 解决了这个问题,我的控制键处于大写锁定状态,因此我可以轻松执行大多数 readline 快捷键,并且可以轻松地纠正错误而无需离开主行。 也许有办法转义大写字母?就像我们可以用 ^V 转义序列,或者像我们可以用 ^T 转置光标中的字符一样。有办法将光标中的字符大写吗? 编辑:为澄清起见,如所问: 我目前使用的是 macOS,默认 shell 是 z...

Admin

将相对链接复制到绝对链接
readline

将相对链接复制到绝对链接

给定一个/path/to/files包含许多相对链接的目录foo -> ../other/data/foo,如何将中的链接复制files/为绝对路径链接/mydata/path/ 我以为使用 ls -s $(readlink /path/to/files/*) /mydata/path/ 会这样做,但它只会在新位置创建重复旧位置的相对路径,这意味着所有链接都指向虚空。 我最终需要的是: /path/to/files/foo -> ../other/data/foo /mydata/path/foo -> /path/to/other/da...

Admin

从命令中删除参数
readline

从命令中删除参数

如果我有这样的命令行: sunday.exe monday tuesday-wednesday 我想删除到最后一个空格,或者说最后一个参数。我试过了Ctrl + Backspace,但它只删除到第一个连字符。这可能吗? ...

Admin

背景
readline

背景

背景 到目前为止,我发现它非常有用,readline因为只需修改一个配置文件(即~/.inputrc),您就可以配置所有依赖于的程序readline。我在工作流程中使用的可以与、、、、一起使用的程序readline是。maximapythonbashbcluasqlite3 在阅读文档时bash,我发现edit-and-execute-command功能并考虑是否可以在readline(即~/.inputrc)的配置文件中使用相同的函数,以便我能够在依赖于的每个程序中使用该函数readline。尝试之后,我意识到它没有列在函数和变量索引从readline...

Admin

无法在终端中跨换行退格
readline

无法在终端中跨换行退格

假设你的终端窗口宽 80 列,并且你运行的 Python 脚本仅包含以下内容: print("x" * 81 + "\b\by") 您可能希望输出是一行,x除了最后一行,而最后一行应该是y。我的问题是,我得到的输出是一行x,而第二行只包含一个y。事实是,每当要将退格符打印到 stdout 时,它都会按预期工作,除非有换行,它应该将光标放在上一行:在这种情况下,它似乎被排除在 stdout 缓冲区之外。 我可以沿着上面代码片段的思路用多种方式重现这种行为,例如echo -e "xx...x\b\by"尝试使用 bash 和 sh、printf(...)...

Admin

vim-tmux-navigator 使用 tmux 前缀而不是 C-
readline

vim-tmux-navigator 使用 tmux 前缀而不是 C-

我在 tmux 和 vim 端安装了 vim-tmux-navigator,我可以使用Ctrl-[hjkl] 但是:这意味着 readline(或 bash?)快捷方式被覆盖,例如Ctrl-k(删除到行尾),我想要使用它。 我尝试重新映射键以需要 tmux 前缀(例如Ctrl-b [hjkl]vim-tmux-navigator)但都失败了。 有人有解决这个问题的方法吗? 注意:我使用 Cb 作为示例,下面有一个很好的解决方案。我一直在使用 C-Space,这让事情变得有点复杂。 ...

Admin

如何让 Ctrl+D 分离 tmux,同时保留 Bash 中的 GNU readline 功能?
readline

如何让 Ctrl+D 分离 tmux,同时保留 Bash 中的 GNU readline 功能?

根据我对此日复一日的研究,我可能在寻求不可能的事情。 情况 我已经.bashrc很好地配置好了,可以tmux在连接时产生一个新的,或者如果存在的话,附加到它。 我总是按Ctrl+D退出 shell 会话。它已经刻在我的肌肉记忆中。在做了三十年系统管理之后忘记它也是不可能的事情。 我想能够摆脱tmux仅使用Ctrl+ 的束缚D,而不是让它杀死我的外壳。 我不完美的方法 我能绑定Ctrl+D到。detach​.tmux.conf 问题是,我emacs的肌肉记忆中也刻有按键绑定,因此当我开始编辑命令行时,我会按Ctrl+D来使用 GNU readlin...

Admin

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

将 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 s...

Admin

空格键在 python shell 或 pdb 中不起作用
readline

空格键在 python shell 或 pdb 中不起作用

希望这里的某个人也经历过这种情况。我经常使用 ipython 作为本地 python shell,一切都运行良好。但有时我喜欢使用 pdb 和默认的 python shell。我正在使用 mac 终端,但无法使用空格。如果有人遇到过这种情况并知道发生了什么,或者可以给我指出正确的方向,我将不胜感激! ...

Admin