Matt Lundin <m...@imapmail.org> writes: > Bastien <b...@gnu.org> writes: > >> Hi Matt, >> >> Matt Lundin <m...@imapmail.org> writes: >> >>> This patch fixes a bug in which org-publish makes the following call... >>> (let ((org-inhibit-startup t) (org-mode))) >> >> Applied, thanks! > > Oops... I see now that org-publish-find-date and org-publish-find-title > call org-export-get-environment. This in turn relies on org-set-local to > set #+BIND: variables, which requires the buffer to be writable. I have > an org-mode-hook that sets some of my web publishing files read-only (so > as to prevent accidental editing). Without org-inhibit-startup, these > buffers remain read-only, causing the following error message:
[...continuing the previous post.] I think I've found a more general problem here. When called in an org buffer... (let ((org-inhibit-startup t)) (org-mode)) ...either wipes out dir-locals variables or prevents them from loading. I have looked at the org-mode code and am not entirely sure why this would be the case. However, this causes problems, for instance, when org-agenda-inhibit-startup is t or when calling org-toggle-tags-groups. And one more minor thing... The documentation for org-agenda-inhibit-startup says that the default is t. However, the default is nil. ,---- | Inhibit startup when preparing agenda buffers. | When this variable is `t' (the default), the initialization of | the Org agenda buffers is inhibited: e.g. the visibility state | is not set, the tables are not re-aligned, etc. `---- Thanks, Matt