2013-08-01 24 views
27

Tôi sử dụng chế độ ido. Dưới đây là cách tôi đặt trong .emacsEmacs: tắt tìm kiếm tệp tự động ở chế độ ido

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

Khi tôi mở một tập tin, tôi làm Cx Cf my_file và nếu nó không tồn tại trong thư mục hiện hành, emacs sẽ cố gắng tìm kiếm nó trong thư mục khác sử dụng gần đây trong khoảng một giây. Tuy nhiên, hầu hết thời gian tôi chỉ cố tạo các tệp mới. Tôi đã phải gõ tên tập tin thực sự nhanh chóng và sau đó C-j để xác nhận nó. Làm thế nào tôi có thể ngừng ido làm điều này?

+0

bí danh 'mở tệp mới' là một số khóa khác rồi Cx Cf (Tệp tìm kiếm Mx là tên đúng của hành động) – user2141046

+1

@ user2141046 @woodings Từ 'ido-find-file' bạn chỉ cần nhấn' Cx Cf' một lần nữa để thả xuống giao diện 'find-file' truyền thống – assem

+0

@assem Tôi không muốn quay trở lại bình thường' find-file'. Tôi cần 'ido' nhưng không tìm kiếm trong các thư mục khác. – woodings

Trả lời

7

Tôi tìm thấy một giải pháp dễ dàng:

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

thời gian ở đây là trong vài giây. Tôi có thể đặt một số rất lớn để tắt hoàn toàn tính năng này.

+2

hoặc đặt 'ido-auto-merge-work-directories-length' thành' -1' để tắt – assem

+0

@woodings, vấn đề này thực sự làm tôi khó chịu trong một thời gian khi tôi sử dụng ido, cuối cùng, tôi quyết định tìm kiếm giải pháp. Trước khi tôi nhận được trang này, tôi thấy rằng khi bạn sử dụng ido, bạn chỉ có thể sử dụng C-f để trở về chế độ bình thường thay vì ido, nhưng giải pháp của bạn có vẻ tốt hơn. Cảm ơn bạn! – CodyChan

31

Sau đây sẽ hoàn toàn vô hiệu hóa các tính năng:

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

Tôi chưa từng thấy bất kỳ giá trị trong nó, vì vậy việc vô hiệu hóa nó hoàn toàn có thể có ý nghĩa đối với nhiều người.

9

Dưới đây là một tùy chọn sử dụng Ido:

  1. Loại C-x C-f như bình thường.
  2. Tìm thư mục bạn muốn tạo tệp mới bằng cách sử dụng tìm kiếm Ido.
  3. Bất kỳ lúc nào, gõ C-f một lần nữa và Emacs sẽ quay lại chức năng cũ find-file.

Sau đó, bạn có thể nhập tên tệp bạn muốn và Emacs sẽ tạo bộ đệm mới. Vì vậy, nếu bạn gõ C-x C-fC-ffile_nameRET nó sẽ tạo ra một bộ đệm gọi file_name tạm thời trong thư mục hiện hành.