From 6dca0437a33666f1f2b11c1812d1eae03097bc6e Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Wed, 17 Dec 2014 20:09:20 +0000 Subject: Emacs: Offer to create missing directories --- tag-emacs/emacs.d/init.el | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tag-emacs/emacs.d/init.el b/tag-emacs/emacs.d/init.el index 3187d09..a43ffe4 100644 --- a/tag-emacs/emacs.d/init.el +++ b/tag-emacs/emacs.d/init.el @@ -406,6 +406,13 @@ (kill-this-buffer) (message "File '%s' successfully removed" filename))))) +(defun my-create-non-existent-directory () + (let ((parent-directory (file-name-directory buffer-file-name))) + (when (and (not (file-exists-p parent-directory)) + (y-or-n-p (format "Directory `%s' does not exist! Create it?" parent-directory))) + (make-directory parent-directory t)))) +(add-to-list 'find-file-not-found-functions #'my-create-non-existent-directory) + (defun kill-or-delete-this-buffer-dwim (&optional arg) "Kills current buffer. With prefix arg, delete it." (interactive "P") -- cgit 1.4.1