進一步閱讀

進一步閱讀

當我在終端中按箭頭時,遊標會正確移動,但是當我用C、C++ 或Python 編寫一個簡單的應用程式時,它會寫^[[A, ^[[B... 我用Python 編寫了一個簡單的程序,所以你可以看到程式碼和結果。

在此輸入影像描述

答案1

這是您從規範輸入模式下的線路規則獲得的終端輸入解碼等級。不是很多。

每個想要提供支援遊標鍵盤、編輯鍵盤和功能鍵的可編輯命令列輸入的應用程式都必須將終端切換到原始輸入模式並解碼 ECMA-48 輸入流,考慮終端類型(以及各種狀態機) RXVT、Linux KVT、SCO Console 和Interix 的集合)。你的程序必須這樣做。

有各種庫可以執行此操作,從 GNU ReadLine 到 libtermkey/libtickit編輯行(又稱 libedit)到 Z shell 中的 ZLE 和 Korn shell 的編輯函式庫。

進一步閱讀

相關內容