Есть ли сочетание клавиш Emacs для выбора между неоднозначными именами буферов при переключении буферов
В emacs я уже использую iswitchbuffer, но я все же хотел бы быть более продуктивным с переключением буфера.
Один распространенный случай, который часто возникает, состоит в том, что у меня 6 или 7 одинаковых или почти одинаковых имен файлов. Например:
server.py<proj1> server.py<proj2> server.py<proj3>... foo_server.py<proj4>
Проблема в том, что мне приходится печатать большую часть контекста каталога, когда я переключаю буферы.
Существующей альтернативой типизации контекста каталога является всплывающее окно с сообщением: e
Click on a completion to select it.
In this buffer, type RET to select the completion near point.
Possible completions are:
... ....
но это также неудовлетворительно, так как я должен переключиться в окно и использовать мышь, чтобы выбрать его.
Я бы предпочел использовать вкладку или другую клавишу, чтобы выделить альтернативный выбор буфера, а затем ввести, чтобы выбрать один. Есть ли способ сделать это?
2 ответа
В iswitchb-режиме (и его преемнике 1 ido-mode) привязка по умолчанию для циклического перебора кандидатов - Ctrl + s и Ctrl + r.
Вы должны быть в состоянии ограничить своих кандидатов, набрав общий бит имени файла, а затем циклически перебрать этих кандидатов с этими привязками.
1 См. Текст заголовка в iswitchb.el
а также ido.el
,
Если вы используете icomplete-mode
(что немного похоже на iswitchb-mode
но применяется ко всем дополнениям, а не только к буферам), вы можете переходить к следующему / предыдущему подходящему кандидату с помощью C- иC-.,
Другой вариант, если вы используете систему завершения по умолчанию (с или без icomplete-mode
), это ввести serv*1
(например) выбрать server.py<proj1>
,