gpt4 book ai didi

c - 如何从 bash 读取部分输入的文本?

转载 作者:太空狗 更新时间:2023-10-29 15:34:33 26 4
gpt4 key购买 nike

当我输入一些文本然后 Ctrl+R 时,部分输入的文本出现在反向搜索提示中:

> hello[Ctrl+R]
(reverse-i-search)`': hello

我正在寻找替代反向搜索的方法。可以重新绑定(bind)快捷方式来运行不同的程序,例如:

bind -x '"\C-R":"echo test"'
> hello[Ctrl+R]
test
> hello

如何从绑定(bind) Ctrl+R 的程序访问部分输入的命令/文本 hello

Tab 补全集 COMP_WORDSCOMP_LINE 等。我正在寻找类似的东西,理想情况下可由 C/C++ 可执行文件直接访问。

最佳答案

在这里找到了我想要的:https://unix.stackexchange.com/a/82716/54030

环境变量READLINE_LINE可以读取甚至修改:

bind -x '"\C-R":"echo cmd=$READLINE_LINE"'
> hello[Ctrl+R]
cmd=hello

bind -x '"\C-R":"READLINE_LINE=replaced; READLINE_POINT=8"'
> hello[Ctrl+R]
... becomes
> replaced

READLINE_POINT 用于设置光标位置。

关于c - 如何从 bash 读取部分输入的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45777152/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com