go - 在 CLI REPL 中添加导航键(箭头键)支持

标签 go command-line-interface read-eval-print-loop

我正在用 golang 创建一个 CLI 工具,我们称它为 repl。它从 stdin 中读取由 ; 分隔的指令,将函数应用于读取的语句,并将结果打印到 stdout(并返回读取)

repl> foo;
"foo"
repl> bar; 
"bar"

如果我将 bar 拼错为 baer 并想修复它,我必须删除所有字符直到 a 然后重写而不是能够导航到字符(使用箭头键)并且只删除该字符。本质上,我正在尝试复制已经在一些商业 REPL(例如 mysql、python 等)中发现的行为,您可以在其中使用箭头键在字符之间移动。关于如何着手做这件事有什么建议吗?

最佳答案

你可以使用 Readline ,它有你想要的,还有更多。

关于go - 在 CLI REPL 中添加导航键(箭头键)支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42903815/

相关文章:

vim - 如何通过firearm.vim使cljs文件与figwheel repl一起使用?

go - 为什么 Go 在这段代码中的 Printf 上检测到竞争条件

php - PHP 中的奇怪错误、路径中的空格和 Windows

PHP 命令行界面 : Possible to set a $_SERVER Variable that's an Array?

python - 使用 Click 制作简洁、可安装的 Python 库

javascript - 如何暂停 NodeJS 脚本?

azure - 如何使用 Azure SDK for Golang 获取 SP 到期日期?

戈朗 : How to disable automatically flag sorting?

linux - 自定义日志处理/解析

xcode - 如何在终端中使用 swift?