簡體   English   中英

輕量級 GNU readline 替代品

[英]Lightweight GNU readline alternative

我正在尋找 GNU readline 替代方案。 它具有很多功能,但只有幾個對我有用,如下所述 -

我正在開發交互式命令提示應用程序(顯示提示並接受要運行的下一個用戶命令)。 我想為提示實現一些編輯和歷史記錄功能。 因此,當用戶按下 UP 鍵時,它應該顯示上次運行的命令。 此外,如果用戶需要編輯任何拼寫錯誤或命令開關等,他應該能夠使用箭頭鍵進行導航。

在 windows 上已經存在類似的東西,如果您使用fgetsscanf獲取 cmd 提示上的輸入,它已經維護歷史記錄並允許您編輯。

linux有沒有好的選擇?

我認為這是一個令人欽佩的目標:-)

也許Linenoiselibedit / editlinetecla符合要求?

其中libedit可能是最廣泛使用的 - 例如postgreqsql客戶端shell和Kerberos和ntp各種BSD實用程序(盡管對於上游源它可能不是用於編譯的默認行編輯庫,因為在Linux上廣泛使用libreadline)。 有一些略有不同的libedit / editline版本,你會看到你是否閱讀了一些這些參考文獻並做了一些進一步的研究。

干杯,祝你的項目好運。

replxx ,BSD許可的readline替代品。 它適用於Linux,BSD,Solaris和Windows。 它支持您期望從交互式控制台程序中獲得的功能,即:

  • 行編輯
  • 歷史
  • 語法高亮
  • 提示
  • UTF-8
  • 用戶定義的鍵綁定(支持(shift / ctrl)F1 - F12)
  • 多線程打印

我認為 GNU Readline 的現代替代品是 Jupyter Notebook。 這個想法是您不創建鏈接到行編輯器庫的可執行文件。 相反,您應該只提供 kernel,用戶可以選擇自己的筆記本 UI,CUI、基於 web 的 GUI,甚至是 IDE,如 VS Code。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM