История изменений
Исправление Kroz, (текущая версия) :
https://stackoverflow.com/a/15220552/9646805
#!/bin/bash
set -o emacs;
tab() {
READLINE_LINE="foobar"
READLINE_POINT="${#READLINE_LINE}"
}
bind -x '"\t":"tab"';
read -ep "$ ";
READLINE_POINT - в какой позиции стоит курсор
Функция вызывается по кнопке TAB. При вызове функции эти переменные выставляются в то, как есть до того как пользователь нажал TAB. Функция модифицирует эти значения - как должно быть после нажатия TAB.
P. S. Это функционал не bash, а readline.
Исходная версия Kroz, :
https://stackoverflow.com/a/15220552/9646805
#!/bin/bash
set -o emacs;
tab() {
READLINE_LINE="foobar"
READLINE_POINT="${#READLINE_LINE}"
}
bind -x '"\t":"tab"';
read -ep "$ ";
READLINE_LINE - что в строке ввода
READLINE_POINT - в какой позиции стоит курсор
Функция вызывается по кнопке TAB. При вызове функции эти переменные выставляются в то, как есть до того как пользователь нажал TAB. Функция модифицирует эти значения - как должно быть после нажатия TAB.