Предполагая, что ваша оболочка - bash, и вы используете режим редактирования emacs (set -o emacs
), это ответит на ваш вопрос в скобках и двойных кавычках.
Чтобы объяснить, что там происходит, вот тот, который работает для {}
:
bind '"{" "\C-v{}\e[D"'
Давайте прогуляемся по внутренней части. В первой паре '
мы имеем:
{
Это довольно просто, это просто означает заменить левую фигурную скобку следующим материалом.
Вторая пара "
начинается с:
\C-v{}
Здесь мы вставляем открывающую и закрывающую скобку. Нам нужны оба, потому что мы заменяем то, что было первоначально напечатано, а не добавляем к нему. \C-v
- это символ Control-v , который обозначает дословную вставку (краткая история ключей терминала). Это позволяет нам вставить {
без повторного запуска этой привязки. Наконец, мы имеем:
\e[D
Это просто код перехода для клавиши со стрелкой влево, поэтому он перемещает курсор между фигурными скобками.