2013-08-01 15 views
27

Używam trybu ido. Oto w jaki sposób ustawić w .emacsEmacs: wyłącz automatyczne wyszukiwanie plików w trybie ido

(require 'ido) 
(setq ido-enable-flex-matching t) 
(setq ido-everywhere t) 
(ido-mode t) 

Podczas otwierania pliku, robię Cx Cf my_file a jeśli nie istnieje w bieżącym katalogu, Emacs spróbuje go szukać w innych niedawnych stosowanych w katalogach o sekunda. Jednak przez większość czasu próbowałem tylko tworzyć nowe pliki. Musiałem bardzo szybko wpisać nazwę pliku, a następnie C-j, aby to potwierdzić. Jak mogę powstrzymać ido przed zrobieniem tego?

+0

alias "otwórz nowy plik" jako klucz inny niż Cx Cf (Mx find-file to właściwa nazwa działania) – user2141046

+1

@ user2141046 @woodings Z 'ido-find-file' możesz po prostu nacisnąć' Cx Cf' ponownie, aby przejść do tradycyjnego interfejsu 'find-file' – assem

+0

@semsem Nie chcę powracać do normalnego' find-file'. Potrzebuję 'ido', ale nie szukam w innych katalogach. – woodings

Odpowiedz

7

znalazłem proste rozwiązanie:

(setq ido-auto-merge-delay-time 9) 

Czas tutaj jest w sekundach. Mogę ustawić bardzo dużą liczbę, aby całkowicie wyłączyć tę funkcję.

+2

lub ustaw 'ido-auto-merge-work-directories-length' na' -1', aby wyłączyć – assem

+0

przy czym ten problem naprawdę mnie zirytował przez jakiś czas, kiedy używam ido, w końcu zdecydowałem się przeszukać rozwiązanie. Zanim dostałem tę stronę, stwierdziłem, że kiedy używasz ido, możesz po prostu użyć C-f, aby powrócić do normalnego trybu zamiast ido, ale twoje rozwiązanie wydaje się lepsze. Dziękuję Ci! – CodyChan

31

Następujące będzie całkowicie wyłączyć funkcję:

(setq ido-auto-merge-work-directories-length -1) 

nigdy nie widziałem żadnej wartości w nim, więc wyłączenie go całkowicie może mieć sens dla wielu ludzi.

9

Oto inny wariant z wykorzystaniem Ido:

  1. Typ C-X-F jak zwykle.
  2. Znajdź katalog, w którym chcesz utworzyć nowy plik przy użyciu wyszukiwania Ido.
  3. W każdej chwili ponownie wpisz C-f, a Emacs wróci do starej funkcji find-file.

Następnie można wpisać nazwę pliku, a Emacs utworzy nowy bufor. Tak więc, jeśli wpiszesz C-x C-fC-ffile_nameRET stworzy bufor o nazwie file_name tymczasowo w bieżącym katalogu.

Powiązane problemy