From 05410ec611fdf8483053e2905df9a52ea9c53551 Mon Sep 17 00:00:00 2001 From: Matt Lundin Date: Mon, 28 Jul 2014 23:56:42 -0500 Subject: [PATCH] Remove unnecessary invocations of org-mode * lisp/ox-publish.el: (org-publish-find-title) (org-publish-find-date) Fix unnecessary invocations of org-mode with org-inhibit-startup. The functions above call org-mode with org-inhibit-startup in org buffers that are already open. The result is that these open buffers lose some crucial local variables during publishing. For instance, an open buffer will lose its dir-local-variables-alist setting during publishing. There is no need to call org-mode here, because org-mode is a) either already initialized in the buffer or b) initialized via earlier call to find-file-no-select. This looks to me like a relic of some past time when these functions were called in temporary buffers that contained copies of the file's contents. --- lisp/ox-publish.el | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/lisp/ox-publish.el b/lisp/ox-publish.el index be208df..94f12e9 100644 --- a/lisp/ox-publish.el +++ b/lisp/ox-publish.el @@ -806,11 +806,9 @@ Default for SITEMAP-FILENAME is 'sitemap.org'." "Find the title of FILE in project." (or (and (not reset) (org-publish-cache-get-file-property file :title nil t)) - (let* ((org-inhibit-startup t) - (visiting (find-buffer-visiting file)) + (let* ((visiting (find-buffer-visiting file)) (buffer (or visiting (find-file-noselect file)))) (with-current-buffer buffer - (org-mode) (let ((title (let ((property (plist-get (org-export-get-environment) :title))) (if property @@ -831,7 +829,6 @@ time in `current-time' format." (file-buf (or visiting (find-file-noselect file nil))) (date (plist-get (with-current-buffer file-buf - (let ((org-inhibit-startup t)) (org-mode)) (org-export-get-environment)) :date))) (unless visiting (kill-buffer file-buf)) -- 2.0.2