问题标签 [libreadline]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - vi 或 emacs 的 Bash 用法
从编程的角度来看,当您将 bash shell 设置为使用 vi 或 emacs 时
或者
这里到底发生了什么?我一直在读一本书,它声称 bash shell 使用这些编辑器中的任何一个作为 shell 本身的输入,但我认为它可能使用了 readline。
ruby-on-rails - 在 Ubuntu Lucid Lynx 上安装 Heroku 已损坏
我正在尝试在某个地方免费托管一个 Ruby on Rails 应用程序,而 Heroku 看起来像是我的最后一个资源。它应该可以在 Linux 上运行,并且 gem 安装时没有错误,但是每当我运行任何 Heroku 命令时,它都会吐出几个错误,所有错误都是连接的,并且谈论失败的“要求”。我在代码中查看了它,它说:
这就对了。
我尝试安装所有我能找到和想到的 libreadline 变体,但没有任何区别。这里有什么想法吗?
python - python行编辑telnet服务器
我正在用 python 创建一个服务器(它在做什么是无关紧要的),但我希望它接受 telnet 连接并提供具有行编辑功能(tabcompletion、emacs/vi-mode 等)和每个会话历史记录的命令行界面. 我已经成功创建了 telnet 会话,禁用了线路模式并启用了服务器回显。
我最初的想法是使用 readline,但 python readline 模块似乎只适用于 stdin 上的单个会话;并检查似乎是它工作方式的底层 readline 库。
但是,我想做的是为每个客户端创建一个实例(如果您愿意,可以将其称为状态),并在接收到字符(字节)时提供给状态。一旦生成了完整的行,它将把它传递给可以解析它的服务器。
所以我的问题是,如果有一个库可以处理这种事情,即使是一个 c 库就足够了。
编辑:澄清一下,我已经有了一个功能齐全的服务器,但我希望 telnet 接口作为重新配置、获取信息等的附加功能。
c++ - 在 Windows 下静态链接、正确工作的 readline 库?
我们正在开发一个依赖于 GNU readline 库的 C++ 软件包,我们通常使用 gcc 构建(至少需要版本 4)。现在我们想把它移植到 Windows 上,获得一个静态链接的版本,我们可以重新分发它而不需要用户编译。
我尝试了几种方法:
- 使用 Cygwin 构建(不使用提供的 readline 结合
-mno-cygwin
或 MinGW 编译器), - 使用 MinGW 和 GnuWin32 中的 readline 构建(未解决的对 stat64 的依赖,我无法解决),
- 使用 MinGW 构建并构建 readline 和所需的 pdcurses 从源代码(最有希望的方法是使用静态二进制文件!但获得的交互式 shell 行为不正确,例如退格键未可视化)。
有什么想法可以让我们使用其中一种方法吗?
c - 如何在使用 GNU readline 从 stdin 读取时将消息输出到另一个线程上的 stdout 而不会弄乱输入?
抱歉标题太长了。我正在用 C 语言开发一个网络程序,它可以在标准输出上显示从网络接收到的消息,并通过 GNU readline 库在标准输入上接受用户输入。问题是,当用户通过 readline 在主线程上键入命令时,会收到一条网络消息并输出到 stdout,这将产生如下内容:
设想:
输入:1234567890
网络消息:Hello
当用户刚刚输入“7”时,网络消息到达
终端上的实际输出:
输入> 1234567
你好890_
有没有办法得到这样的输出?
你好
输入> 1234567890_
ps _ 是光标。
提前致谢!
perl - 需要使用 T:R:G mod 的 Perl system() 命令的进度指示器
我想要一个获取 Perl 输出的进度指示器
对于从 make 命令输出到 STDOUT 的每一行,我想输出一个点作为进度指示器。不幸的是,我使用的是 Term::ReadLine::Gnu Perl mod。
如何在 make 命令运行时重定向 STDOUT 以捕获和计算行数?
macos - 如何链接到 GNU readline 库而不是 macosx 中的 libedit?
尝试在 macosx 上构建 Term-Readline-Gnu,抱怨 libedit 并建议使用 gnu readline 失败。我怎么做?
这是我尝试过的尝试之一:
首先,我静态构建了 GNU libreadline v6.2,但没有安装它——以确保我没有搞砸同名的系统版本:
./configure --prefix=/Users/Fred/Downloads/tmp1
制作
使安装静态
然后尝试构建 Term_Readline-Gnu-1.20
cmc:Term-ReadLine-Gnu-1.20 cmc$ perl Makefile.PL --includedir=/Users/cmc/Downloads/tmp1/include --libdir=/Users/Fred/Downloads/tmp1/lib
找到`/usr/lib/libtermcap.dylib'。
gcc-4.2 -I/Users/Fred/Downloads/tmp1/include -arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -DHAVE_STRING_H rlver.c -o rlver -L/Users/Fred/Downloads/tmp1/lib -arch x86_64 -arch i386 -arch ppc -L/usr/local/lib -lreadline -ltermcap
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!
您使用的 libreadline 是 libedit 库。使用 GNU Readline 库。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!
克里斯
c - C 中的制表符补全(readline 库)
我一直在努力让标签完成工作。我很困惑,不知道该怎么做。请您看一下我的代码并告诉我如何修复它。
顺便说一下,rl_attempted_completion_function
自从我从在线教程中获得它以来,我就使用了它,但它是一个 C++ 函数。我可以使用什么功能来替换它而不进行更改。
谢谢
ruby - 如何在 Ubuntu 11.10 上使用 RVM 在 IRB 中获得 Readline 支持
我已经尝试了我能想到的一切来让它工作,但无济于事,所以在这里我请求有关如何调试的建议。
首先,运行 Ubuntu 11.10
安装的rvm:
使用 apt-get 安装 readline:
检查 readline 安装:
安装 ruby,支持 readline?
这是rvm版本:
让我们试试 ruby shell:
不,好吧,如果它不能与 ubuntu 的 readline 版本一起使用???让我们试试 rvm 自己的 readline 版本:
好的,这里有一个错误,让我们看一下:
正如预期的那样,irb 不适用于 readline:
我是否安装了所有 rvm 要求?是的,请看:
就这样继续下去,继续,继续,继续......
所以总而言之,如果一些明亮的火花可以建议我如何调试这种情况并解决,我将非常感激。
ps - 是的,我已经“谷歌”这个问题死了....