Подтвердить что ты не робот

Emacs ido-стиль оболочки

Есть ли оболочка командной строки или оболочка, которая поддерживает файл ido find в стиле emacs? В emacs я могу быстро перейти в каталог с помощью C-x C-f и (ido-mode t).

В идеале, я ищу решение, которое можно использовать вне emacs. Хотя я был бы открыт для быстрого изменения каталогов в буфере eshell.

4b9b3361

Ответ 1

Так как я тоже хотел что-то вроде этого, я попытался реализовать его как завершение bash функция. Очевидно, это означает. вы должны использовать bash.

Это просто проверено, поэтому, пожалуйста, не стесняйтесь сообщать об ошибках/комментариях.

http://pgas.freeshell.org/shell/bash-ido

Ответ 2

Попробуйте Z-оболочку. Он имеет гораздо лучшее завершение, чем bash. Должен признаться, что я не использовал его какое-то время, хотя и придерживался bash, потому что он всегда доступен.

Ответ 3

Bash имеет переменную среды, называемую CDPATH, которая может содержать список каталогов для поиска при использовании команды cd. Кроме того, ознакомьтесь с разделами "Программируемое завершение" и "READLINE" руководства Bash. Вы должны быть способны копать вместе то, что работает для вас.

Ответ 4

Лучшее, что мне удалось придумать, - autojump. Все еще ищут решение ближе к ido, но autojump - отличное приложение.

Ответ 5

Я знаю, что некоторое расширение поддержки эмулятора терминала, например, rxvt-unicode может быть расширен скриптами Perl. Я не уверен, так как я никогда не писал расширение самостоятельно, но, возможно, то, что вы хотите, выполнимо таким образом.

Если вы хотите посмотреть некоторые скрипты Perl для urxvt, в /usr/lib/urxvt/perl есть примеры с установкой urxvt по умолчанию на Debian.

Ответ 6

Если вы хотите завершить ido в eshell или аналогичном, лучше всего написать функцию, которая использует ido для чтения каталога, а затем вставляет эту команду в cd в этот каталог в буфер оболочки. Я сам не использую eshell, поэтому я не мог комментировать, как на самом деле писать эту функцию, но это идея.