特に履歴ナビゲーションの場合は上/下です。
私がすでに知っていること
わかりました。dash
シンプルで膨らませず(やや)厳しいPOSIXシェルです。
私はその背後に隠された哲学とこれが他のインタラクティブシェルで不可欠な機能になった理由を理解していますがdash
。
次のリソースを調査しました。
- 男性ページ
- Arch Linux Wikiページ
そして歴史に関する他のページや答えもたくさんありますdash
。
読んだことから集めました。持つそれは歴史的なメカニズムとvi
パターンです。ただし、<ESCAPE>
キー[UP]
または[DOWN]
矢印キー(またはすべてのキー)を意味のあるアクションにマッピングする方法が見つかりません。
コマンドが存在しないか組み込まれていますbind
。bindkey
私の目標は、ダッシュをデバッグ目的のための対話型シェルとして最小限に使用できるようにすることです。
質問
- デフォルトのマッピングはありますか?
- ダッシュでキーマッピングを操作する方法はありますか?
- ダッシュの対話型ユーザビリティを明らかにする他の情報源はありますか?
答え1
macOSでこの問題が発生し、最終的に最も簡単なオプションはrlwrap
(https://github.com/hanslub42/rlwrap)。
dash
dash
私の特別なケースでは、iTermはシェルを使用しようとしたときに実行するために次のコマンドを使用してプロファイルを設定しました(-l
ログインモードの場合はviを-E
持つemacsコマンドラインエディタの場合-V
)。
/opt/homebrew/bin/rlwrap /bin/dash -l -E