emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: org-element-cache error when storing footnotes using capture buffer


From: Akash
Subject: Re: org-element-cache error when storing footnotes using capture buffer
Date: Fri, 4 Oct 2024 16:13:57 +0530

Dear Maintainers,

I seem to have been able to solve this issue through some brute force debugging.
The problem emanates from when copying over the local variables, especially the 
`buffer-file-name' variable

The function definition `org-src--edit-element' contains a provision to make 
the said variable nil - but it is quickly reset during initialisation of the 
buffer just 1 line downstream. Moving the setq statement 4 lines below seems to 
solve the issue,

Herein I give the patch,

```
--- org-src.el  2024-10-04 15:54:11.357117268 +0530
+++ org-src-patched.el  2024-10-04 15:55:24.041730163 +0530
@@ -609,7 +609,6 @@
        (let ((lf (eq type 'latex-fragment)))
           (unless preserve-ind (org-do-remove-indentation (and lf block-ind) 
lf)))
        (set-buffer-modified-p nil)
-       (setq buffer-file-name nil)
        ;; Initialize buffer.
        (when (functionp initialize)
          (let ((org-inhibit-startup t))
@@ -617,6 +616,7 @@
                (funcall initialize)
              (error (message "Initialization fails with: %S"
                              (error-message-string e))))))
+       (setq buffer-file-name nil)
        ;; Transmit buffer-local variables for exit function.  It must
        ;; be done after initializing major mode, as this operation
        ;; may reset them otherwise.

```

The following in .init can also be done by users not willing to patch the 
source file `org-src.el'

;; HHHH---------------------------------------------------

(defun patch/org-src--edit-element (&rest args)
  (setq-local buffer-file-name nil))
(advice-add 'org-src--edit-element
            :after
            #'patch/org-src--edit-element)

;; HHHH---------------------------------------------------


Thank you,
Akash P




reply via email to

[Prev in Thread] Current Thread [Next in Thread]