Когда я пытаюсь создать новый файл в Emacs с C-x C-f, вводя имя файла, Завершение всегда автоматически соответствует имени. К сожалению, как только Emacs обнаружит, что совпадающего файла нет, он попытается найти файл с именем, которое я только что ввел, в других путях. Поэтому, когда есть файл с таким же именем по другому пути, я не могу создать этот файл по текущему пути. Кто-нибудь скажет мне, как избежать этой досадной проблемы?
Emacs Completion отказывается создавать новый файл
Ответы (1)
Вопрос неясен, а потому рискует быть закрытым. Попробуйте дать пошаговый рецепт того, что вы делаете, начиная с emacs -Q
(без файла инициализации), чтобы воспроизвести проблему.
По умолчанию (в ванильном Emacs) C-x C-f
привязан к find-file
и не выполняет поиск по нескольким «путям». Он смотрит только в текущем каталоге (default-directory
), если вы не измените каталог в минибуфере во время выполнения команды.
Начните с использования C-h k C-x C-f
, чтобы увидеть, какую команду вы на самом деле используете.
person
Drew
schedule
17.08.2015
Функция завершения всегда соответствует имени файла, которое я набираю в мини-буфере. Например, есть путь /a и файл с именем test.txt и вложенный путь /a/b. Теперь я пытаюсь создать test.txt. Функция завершения автоматически найдет первый файл и откажется создавать test.txt в /a/b.
- person yangdawei; 17.08.2015
Опять же, пошаговый рецепт, пожалуйста, начиная с
emacs -Q
(без файла инициализации).
- person Drew; 17.08.2015
emacs -Q
функций завершения нет, поэтому файл создается нормально. Спасибо. Но как сделать файл с запуском файла инициализации?
- person yangdawei; 18.08.2015
По совету моего друга, ввод «C-f» сразу после «C-x C-f» может отменить завершение и создать новый файл. Так что я считаю, что моя проблема решена. Большое Вам спасибо.
- person yangdawei; 18.08.2015
Похоже, вы используете режим Ido (Interactive Do). Вы должны знать об этом, чтобы вы могли обратиться к Emacs за помощью по поводу режима Ido, когда у вас возникнут другие проблемы с ним. Режим Ido не является стандартным/обычным способом завершения Emacs. См. руководство Ido (
C-h i
и выберите Ido
в меню).
- person Drew; 18.08.2015
ido
, либоhelm
. Для первого см. этот вопрос. - person Chris   schedule 17.08.2015