Есть ли способ запретить Vim использовать полный путь к файлу при автозаполнении с помощью вкладки с помощью команды: b [uffer] + wildmenu?
У меня включено подстановочное меню, поэтому, если есть несколько матчей, то он покажет их все, и я могу выбрать один. Однако, если есть одно совпадение, и я нажимаю вкладку, Vim вставляет полный путь к файлу, связанному с буфером, и когда я нажимаю return, Vim жалуется, что нет соответствующего файла.
например, у меня два буферы открыты, по одному для file_a.txt и file_b.txt. Если я наберу b: fi
и нажмем вкладку, Vim перечислит оба буфера в подменю, и я могу выбрать тот, который хочу, без проблем. Если вместо этого я наберу b: _a
и затем нажму tab, Vim вставит полный путь - :b ~/path/to/file_a.txt
- поэтому, когда я нажму enter, он скажет, что нет подходящего буфера.
Можно ли изменить способ Завершение табуляции работает просто для вставки имени буфера, или есть ли возможность для команды буфера обработать полный путь к файлу (это обрабатывается как регулярное выражение или что-то в этом роде?).
EDIT
После экспериментов проблема возникает только тогда, когда имя буфера начинается с '~'. Команда [b]uffer
не выполняет простое сопоставление, но сопоставление с образцом, и '~' имеет смысл. Либо окружение шаблона кавычками, либо замена «~» на полный путь решает проблему. Итак, существует ли автоматический c способ расширения Vim до правильного полного пути при загрузке буферов?