テキスト行を読み込み、TERMCAPルーチン( "readline"ライブラリに似ています)を使用してカーソルの移動と編集ができるCコードで作業します。問題はこれです:1つ以上の文字を行末から消去する必要がある場合は、(1)カーソルをEOLに移動して\b \b
シーケンスを発行する方が効率的です。または(2)、カーソルを切り捨てポイントに移動し、単一の「行末消去」コマンドを発行しますか?後者のコマンドが、特にワイド端末では「高価」であるかどうかは不明です。誰でもトレードオフ/ガイドラインが何であるか知っていますか?TUIテキスト編集
1
A
答えて
1
出力デバイス(端末)と、消去される文字の数によって異なります。通常、デバイスがErase-to-EOLを最初にサポートしている場合は、1つまたは複数のErase-Single-Character操作よりも高速であるため、デバイスがそこにあります。
非常に遅い接続で動作している場合を除き、おそらく問題ありません。 80年代には、この種のことが懸念されました。なぜなら、私たちはしばしば1200bps以上の接続などで作業していたからです。それは人々がしばしばcurses(3)を避けてtermcapに向かう理由です。最近では、通信デバイスと出力デバイスの両方が、ユーザーの反応時間よりも非常に高速であるため、多くの場合、画面を完全に再描画してしまうことがあります。
好奇心で、なぜtermcapを使うのですか?何十年も前のUNIXプラットフォームでは、terminfoに取って代わりました。 cursesのような高レベルのライブラリが利用できることは言うまでもありません。
関連する問題
- 1. 編集テキスト
- 2. アンダーライン編集テキスト
- 3. CSSのテキスト編集
- 4. テキストの編集タブ
- 5. "alt"テキストを編集
- 6. Androidスタジオでテキストを編集してテキストを編集する
- 7. 豊富:inplaceInput編集テキスト、リフレッシュコンポーネント
- 8. ダイアログ内のテキストの編集
- 9. テキストの編集背景リソース
- 10. Reactのテキストの編集
- 11. OnLongClickテキストの表示と編集テキスト
- 12. Android:ソフトキーボードの編集テキストの編集(adjustresizeまたはadjustpan doesnt work)
- 13. 複数行の編集可能なテキスト:編集可能なUILabel?
- 14. Android Studioの編集リストに編集テキストを保存します。
- 15. 端末で編集テキストを編集する方法は?
- 16. 編集テキストリスト編集
- 17. アンドロイドでプログラムでテキストを編集する
- 18. ヒント付きのテキスト編集のAndroidアクセシビリティ
- 19. iPhoneスタイルのテキスト編集on android
- 20. Android - カスタムリストビューアアダプターでテキストとスピナーを編集
- 21. Android - ダイアログボタンonClick - >編集テキスト値
- 22. Android - オドメーターエントリ用のカスタム編集テキスト
- 23. Recyclerviewの値の取得テキストの編集
- 24. Eclipse、効果的なテキスト編集のショートカット
- 25. アンドロイドの編集テキストと複数のチェックボックス
- 26. C++の編集ボックスのテキストを変更
- 27. テキスト編集フィールドのあるUIView
- 28. quickedit-labelテキストを編集する
- 29. カスタムタブのテキストを編集する
- 30. メモ帳でテキストを編集する
\ bで消去することは、行末まで消去することと異なります。同じ行に2つの単語があり、最初の単語からいくつかの文字を削除したい場合はどうなりますか?回線の最後までクリアするほうが高速です(現代のハードウェアでは重要ではありません)が、2番目の単語も消去されます。 – linuxfan