How to make Emacs create intermediate dirs - when saving a file?

前端 未结 3 1497
自闭症患者
自闭症患者 2021-02-01 06:40

Is there a way to create folder tree in emacs - similar to

mkdir -p

in bash?

Basically - I want emacs to create all the intemediate dir

3条回答
  •  刺人心
    刺人心 (楼主)
    2021-02-01 07:20

    Function make-directory does that. Your particular problem may be solved like this:

    (add-hook 'before-save-hook
              (lambda ()
                (when buffer-file-name
                  (let ((dir (file-name-directory buffer-file-name)))
                    (when (and (not (file-exists-p dir))
                               (y-or-n-p (format "Directory %s does not exist. Create it?" dir)))
                      (make-directory dir t))))))
    

提交回复
热议问题