通訳者スロットを実行すると、rlwrap
上下の矢印キーを押してコマンド履歴にアクセスできます。しかし、Bashのように(Ctrl-rを使用して)コマンド履歴を取得できたらと思います。rlwrap
この機能を備えた代替手段はありますか?ところで、私はrlwrap
0.43バージョンを使用しています。
編集:この問題はGNU APLに関連しているようです。他のコマンドラインソルバーでは、Ctrl-rコマンドは期待どおりに機能します。
答え1
rlwrap
マンページから:
-a, --always-readline [password_prompt]
Always remain in "readline mode", regardless of command's
terminal settings. Use this option if you want to use
rlwrap with commands that already do some line editing.
インタプリタ(または必要なコマンドrlwrap
)にすでにコマンド書き込みメカニズムがある場合、これは明らかに次のコマンドの1つです。
rlwrap
この場合の使用方法は次のとおりです(GNU APLインタプリタをapl
例として使用)。
$ rlwrap --always-readline apl
ただし、これは既存の項目を上書きすることに注意してくださいapl
。非常にAPLに特化した歴史と完成メカニズム)。これを回避する方法(スポイラー:できません!)は、実際には次のいずれかです。最も一般的なFAQ~についてrlwrap
省略すると、--always-readline
「rlwrap
透明」のままになります。つまり、すべてのキー押下を rlwrapped コマンドに渡し、何もしません。
答え2
Debianではすぐに使用できますCtrl-R。
$ rlwrap --version
rlwrap 0.42
$ rlwrap cat > /dev/null
foo
bar
(reverse-i-search)`f': foo
/etc/inputrc
そして、~/.inputrc
これはReadlineを使用しても適用されるため、rlwrap
利用可能なバインディングに影響を与える可能性があります。 (しかし、あなたはそれがBashで動作することを示唆していたので、それとは何の関係もないかもしれませんinputrc
。)