There is a potential bug regarging how footnotes on headers are
converted to LaTeX.
Consider the following org file:
--start-of-file---
#+AUTHOR: Me
#+LATEX_HEADER: \usepackage{titlesec}
* Header1[fn:1]
* Footnotes
[fn:1]Lorem ipsum
--end-of-file--
When converting to LaTeX the header is exported as:
\section{Header1\footnote{Lorem ipsum}}
I believe the proper output should be:
\section{Header1}\footnote{Lorem ipsum}
Notice that the footnote is placed after the closing bracket segment
instead of being part of the header section. Excuse me for my ignorance of
LaTeX, for I cannot definitively say which one is correct(maybe they
both are) but the second output seems more logical.
Both versions get compiled correctly, however when adding the package
"titlesec" the first version results in failed compilation (the
following error message seems to signify some kind of infinite
recursion/loop):
-error-message-during-compilation-
Package hyperref Warning: Token not allowed in a PDF string
(PDFDocEncoding):
(hyperref) removing `\@ifnextchar' on input line 32.
! TeX capacity exceeded, sorry [input stack size=5000].
\reserved@a ->\def \reserved@a
*{\ttl@assign@i {\@tempskipb }}\reserved@a
l.32 \section{Header1\footnote{Lorem ipsum}}
! ==> Fatal error occurred, no output PDF file produced!
--
If both versions are correct then the bug obviously lies in the
"titlesec" package. However, as I previously said, I don't know if that
is the case. It is possible that this happens with other packages too. I
have not tested any other packages that deal with headers.
I have also tested this on org version 9.4 and the same output is
produced.
I have attached the org file, the tex output file that leads to the bug
and the output log of the compilation process.
==
Emacs : GNU Emacs 27.1 (build 1, x86_64-redhat-linux-gnu, X toolkit,
cairo version 1.16.0, Xaw3d scroll bars)
of 2020-08-21
Package: Org mode version 9.3 (release_9.3 @
/usr/share/emacs/27.1/lisp/org/)
current state:
==
(setq
org-src-mode-hook '(org-src-babel-configure-edit-buffer
org-src-mode-configure-edit-buffer)
org-link-shell-confirm-function 'yes-or-no-p
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-html-format-inlinetask-function
'org-html-format-inlinetask-default-function
org-odt-format-headline-function 'org-odt-format-headline-default-function
org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
org-mode-hook '(#[0 "\300\301\302\303\304$\207" [add-hook
change-major-mode-hook org-show-all append local] 5]
#[0 "\300\301\302\303\304$\207" [add-hook
change-major-mode-hook org-babel-show-result-all append local] 5]
org-babel-result-hide-spec org-babel-hide-all-hashes)
org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
org-archive-hook '(org-attach-archive-delete-maybe)
org-confirm-elisp-link-function 'yes-or-no-p
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-bibtex-headline-format-function #[257 "\300\236A\207" [:title] 3
"\n\n(fn ENTRY)"]
org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"]
org-babel-pre-tangle-hook '(save-buffer)
org-tab-first-hook '(org-babel-hide-result-toggle-maybe
org-babel-header-arg-expand)
org-ascii-format-drawer-function #[771 "\207" [] 4 "\n\n(fn NAME
CONTENTS WIDTH)"]
org-occur-hook '(org-first-headline-recenter)
org-cycle-hook '(org-cycle-hide-archived-subtrees
org-cycle-show-empty-lines org-optimize-window-after-visibility-change)
org-speed-command-hook '(org-speed-command-activate
org-babel-speed-command-activate)
org-odt-format-inlinetask-function
'org-odt-format-inlinetask-default-function
org-confirm-shell-link-function 'yes-or-no-p
org-link-parameters '(("attachment" :follow org-attach-open-link
:export org-attach-export-link :complete org-attach-complete-link)
("id" :follow org-id-open) ("eww" :follow eww :store
org-eww-store-link)
("rmail" :follow org-rmail-open :store org-rmail-store-link)
("mhe" :follow org-mhe-open :store org-mhe-store-link)
("irc" :follow org-irc-visit :store org-irc-store-link
:export org-irc-export)
("info" :follow org-info-open :export org-info-export
:store org-info-store-link)
("gnus" :follow org-gnus-open :store org-gnus-store-link)
("docview" :follow org-docview-open :export
org-docview-export :store org-docview-store-link)
("bibtex" :follow org-bibtex-open :store
org-bibtex-store-link)
("bbdb" :follow org-bbdb-open :export org-bbdb-export
:complete org-bbdb-complete-link :store