Câu trả lời:
Bạn không cần phải làm điều đó, nếu đó là câu hỏi của bạn.
C-x C-f /some/new/directory/newfile.txt
Emacs in một thông báo để cho bạn biết rằng thư mục /some/new/directory/
chưa tồn tại : Use M-x make-directory RET RET to create the directory and its parents
.
Chèn văn bản vào bộ đệm mới cho tập tin mới newfile.txt
.
C-x C-s
để lưu tập tin.
Emacs hỏi bạn có muốn tạo các thư mục trung gian bị thiếu hay không (ví dụ: new/directory/
Bạn nhấn y
"có".
Không rườm rà lắm, IMO. Giao diện người dùng cần yêu cầu bạn xác nhận, vì bạn có thể dễ dàng nhập nhầm tên của một thư mục hiện có.
y
.
ido
người dùngido-find-file
) và nhập một đường dẫn không tồn tại.m
ake dir mới?). Trúng RET.Nếu bạn thực sự muốn thực hiện find-file
để tự động tạo thư mục mẹ khi chưa tồn tại, bạn có thể thực hiện các thao tác sau trong tệp init của mình.
(defun my-find-file (orig-fun &rest args)
(let* ((filename (car args))
(directory (file-name-directory filename)))
(if (not (file-directory-p directory))
(make-directory directory t))
(apply orig-fun args)))
(advice-add 'find-file :around 'my-find-file)
Rốt cuộc, Emacs được thiết kế để có thể mở rộng và tùy biến.
Tài liệu tham khảo:
M-x make-dir
tab
(được kiểm traemacs -Q
để chắc chắn rằng nó hoạt động)RET
RET
và nó sẽ tạo thư mục mà không cần phải nhắc thêm.