2015-08-17 4 views
1

Когда я пытаюсь создать новый файл в Emacs с C-x C-f, набрав имя файла, Completion всегда автоматически будет совпадать с именем. К сожалению, как только Emacs выяснит, что не существует сопоставленного файла, он попытается найти файл с именем, которое я только что напечатал на других путях. Поэтому, когда в другом пути есть файл с тем же именем, я не могу создать этот файл в текущем пути. Кто-нибудь скажет мне, как избежать этой неприятной проблемы?Emacs Completion отказывается создавать новый файл

+0

Я подозреваю, что вы используете либо 'ido', либо' helm'. Для первого см. [Этот вопрос] (http://stackoverflow.com/questions/21007014/not-selecting-what-emacs-ido-is-suggesting/21008216). – Chris

+1

@ Крис: Мы не должны догадываться. ;-) – Drew

ответ

0

Вопрос неясен, и поэтому риски закрываются. Попробуйте дать пошаговый рецепт того, что вы делаете, начиная с emacs -Q (без файла инициализации), чтобы воспроизвести проблему.

По умолчанию (в ванильных Emacs), C-x C-f обязан find-file, и это делает не поиска несколько «путей». Он отображается только в текущем каталоге (default-directory), если вы не изменили каталог в минибуфере во время выполнения команды.

Начните с использования C-h k C-x C-f, чтобы узнать, какую команду вы используете.

+0

Функция завершения всегда соответствует имени файла, который я вводил в мини-буфере. Например, есть путь/a и файл с именем test.txt, и в нем существовал подпуть/a/b. Теперь я пытаюсь создать test.txt. Функция завершения автоматически найдет первый файл и откажется от создания test.txt в/a/b. – yangdawei

+0

Опять же, ** пошаговый ** рецепт, пожалуйста, начиная с 'emacs -Q' (нет файла инициализации). – Drew

+0

Нет функций завершения 'emacs -Q', поэтому файл создается нормально. Спасибо. Но как сделать файл с запуском файла инициализации? – yangdawei

Смежные вопросы