Come posso fare in modo che il read
comando integrato supporti la cronologia, premendo il tasto su / giù per scorrere tra loro?
Ho provato a catturare quando premi il tasto Su, tuttavia non sembra funzionare con read
:
read -p '> ' -n 3 foo
echo
echo -n "$foo" | hexdump
La pressione dei tasti freccia sembra funzionare e posso rilevarlo usando questo, tuttavia se premo aa↑, fallirà in quanto leggerà solo il primo carattere dell'identificatore della freccia su, mentre il terzo è necessario per distinguere la diversa freccia chiavi.
rlwrap
come (almeno sulla mia macchina)rlwrap
non è in grado di gestire CTRL-C con grazia, ad esempio provare a correreUSERINPUT=$(rlwrap -o cat)
e premere CTRL-C e vedere come si comporta il terminale in seguito (eseguire ilreset
comando per tornare di nuovo a uno stato sano) .