[英]Lightweight GNU readline alternative
我正在尋找 GNU readline 替代方案。 它具有很多功能,但只有幾個對我有用,如下所述 -
我正在開發交互式命令提示應用程序(顯示提示並接受要運行的下一個用戶命令)。 我想為提示實現一些編輯和歷史記錄功能。 因此,當用戶按下 UP 鍵時,它應該顯示上次運行的命令。 此外,如果用戶需要編輯任何拼寫錯誤或命令開關等,他應該能夠使用箭頭鍵進行導航。
在 windows 上已經存在類似的東西,如果您使用fgets
或scanf
獲取 cmd 提示上的輸入,它已經維護歷史記錄並允許您編輯。
linux有沒有好的選擇?
我認為這是一個令人欽佩的目標:-)
也許Linenoise , libedit / editline或tecla符合要求?
其中libedit可能是最廣泛使用的 - 例如postgreqsql客戶端shell和Kerberos和ntp
各種BSD實用程序(盡管對於上游源它可能不是用於編譯的默認行編輯庫,因為在Linux上廣泛使用libreadline)。 有一些略有不同的libedit / editline版本,你會看到你是否閱讀了一些這些參考文獻並做了一些進一步的研究。
干杯,祝你的項目好運。
有replxx ,BSD許可的readline替代品。 它適用於Linux,BSD,Solaris和Windows。 它支持您期望從交互式控制台程序中獲得的功能,即:
我認為 GNU Readline 的現代替代品是 Jupyter Notebook。 這個想法是您不創建鏈接到行編輯器庫的可執行文件。 相反,您應該只提供 kernel,用戶可以選擇自己的筆記本 UI,CUI、基於 web 的 GUI,甚至是 IDE,如 VS Code。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.