bash и history

А вот не подскажет ли кто про bash и history? Есть у него такая фича как reverse-i-search (^r).Проблема в том, что при многократном нажатии ^r, reverse-i-search последовательно переберает подходящие строки из history, доходит до конца и встает намертво, не зацикливается. Обратно двигаться нельзя (нет действия обратного ^r).
Может это можно настроить?
Или есть какие внешние утилитки?
Интересуют решения в рамках bash.

Там есть и

Там есть и прямой i-search, но он по умолчанию повешен на ^S, как в emacs'e. Поэтому, чтобы им пользоваться, надо или сделать stty -ixon или перевесить его на другую кнопку.

Re: Там есть и

jsv написал(а):
Там есть и прямой i-search, но он по умолчанию повешен на ^S, как в emacs'e. Поэтому, чтобы им пользоваться, надо или сделать stty -ixon или перевесить его на другую кнопку.

Я решение уже нашел.

~/XTerm
---------
!
! XTerm resource file
!
XTerm*background: black
XTerm*foreground: green
XTerm*cursorColor: grey
!XTerm*scrollBar: True
XTerm*saveLines: 1000
!XTerm*font: -misc-fixed-medium-r-normal-*-15-*-*-*-*-*-koi8-r
XTerm*font: -*-terminus-medium-*-*-*-20-*-*-*-*-*-koi8-r
XTerm*scrollTtyOutput: no
XTerm*scrollKey: yes

! XTerm*eightBitInput: false - не надо, можно использовать Alt[буква]: string(0x1b) string("буква")
XTerm*deleteIsDEL: true

*VT100*translations: #override \n\
~Shift ~Ctrl: insert-selection(PRIMARY, CLIPBOARD, CUT_BUFFER0) \n\
~Shift: select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0) \n\
Shift ~CtrlKP_Insert: insert-selection(PRIMARY, CLIPBOARD, CUT_BUFFER0) \n\
Ctrlspace: select-cursor-start() \
select-cursor-end(PRIMARY, CLIPBOARD, CUT_BUFFER0) \
insert() \n\
Ctrl W: insert-selection(PRIMARY, CLIPBOARD, CUT_BUFFER0) \
insert() \n\
~Shift CtrlKP_Insert: insert-selection(PRIMARY, CLIPBOARD, CUT_BUFFER0) \n\
Shift ~Ctrl ~AltTab: string(0x1b) string(0x09) \n\
Alt Return: string(0x1b) string(0x0d) \n\
Alt space: string(0x1b) string(" ") \n\
Alt a: string(0x1b) string("a") \n\
Alt b: string(0x1b) string("b") \n\
Alt c: string(0x1b) string("c") \n\
Alt d: string(0x1b) string("d") \n\
Alt e: string(0x1b) string("e") \n\
Alt f: string(0x1b) string("f") \n\
Alt g: string(0x1b) string("g") \n\
Alt h: string(0x1b) string("h") \n\
Alt i: string(0x1b) string("i") \n\
Alt j: string(0x1b) string("j") \n\
Alt k: string(0x1b) string("k") \n\
Alt l: string(0x1b) string("l") \n\
Alt m: string(0x1b) string("m") \n\
Alt n: string(0x1b) string("n") \n\
Alt o: string(0x1b) string("o") \n\
Alt p: string(0x1b) string("p") \n\
Alt q: string(0x1b) string("q") \n\
Alt r: string(0x1b) string("r") \n\
Alt s: string(0x1b) string("s") \n\
Alt t: string(0x1b) string("t") \n\
Alt u: string(0x1b) string("u") \n\
Alt v: string(0x1b) string("v") \n\
Alt w: start-cursor-extend() \
select-cursor-end(PRIMARY, CLIPBOARD, CUT_BUFFER0) \
string(0x1b) string("w") \n\
Alt x: string(0x1b) string("x") \n\
Alt y: string(0x1b) string("y") \n\
Alt z: string(0x1b) string("z") \n\
Alt 1: string(0x1b) string("1") \n\
Alt 2: string(0x1b) string("2") \n\
Alt 3: string(0x1b) string("3") \n\
Alt 4: string(0x1b) string("4") \n\
Alt 5: string(0x1b) string("5") \n\
Alt 6: string(0x1b) string("6") \n\
Alt 7: string(0x1b) string("7") \n\
Alt 8: string(0x1b) string("8") \n\
Alt 9: string(0x1b) string("9") \n\
Alt 0: string(0x1b) string("0") \n\
Shift Right: visual-bell() \n\
Shift Left: visual-bell() \n\
Shift Up: visual-bell() \n\
Shift Down: visual-bell()

~/.inputrc

------------

set completion-ignore-case on
set show-all-if-ambiguous on

TAB: menu-complete
"\ew": copy-region-as-kill
"\C-w": kill-region
"\C- ": set-mark
"\d": delete-char # Добавить в ~/XTerm 'XTerm*deleteIsDEL: true'
"\e\t": complete

# Добавить в ~/.bashrc "stty stop '^t'" (stop scrolling был забиндин на ^s)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".