Vanuit de orgmodus handleiding :
U kunt woorden vet ,/italic /, onderstreept , '= verbatim =' en
'~ Code ~', en, indien nodig, '+ doorhalen +'. Tekst in de code en
Woordelijke tekenreeks wordt niet verwerkt voor de syntaxis van de Org-modus, dat is het
woordelijk geëxporteerd.
Indeed ~> (cons 1 nil) \to (1)~
is exported as LaTeX \texttt{> (cons 1 nil) \textbackslash{}to (1)}
.
Maar dit suggereert een oplossing voor LaTeX: gebruik een filter om ongedaan te maken de conversie van \
naar \ textbackslash {}
.
(defun my-latex-filter-allow-latex-in-code (text backend info)
"Undo backslash escaping"
(when (org-export-derived-backend-p backend 'latex)
(replace-regexp-in-string "textbackslash{}" "" text)))
(add-to-list 'org-export-filter-code-functions
#'my-latex-filter-allow-latex-in-code)
Het exportfilter kan ook worden uitgebreid voor het afhandelen van html. Hier is een eerste concept waarmee alleen \ tot
wordt afgehandeld:
(defun my-filter-allow-latex-in-code (text backend info)
"Allow LaTeX symbols in code"
(cond
((org-export-derived-backend-p backend 'latex)
(replace-regexp-in-string "textbackslash{}" "" text))
((org-export-derived-backend-p backend 'html)
;; either extend this or find the html export function doing these conversions
(replace-regexp-in-string "\\\\to" "→" text))))
(add-to-list 'org-export-filter-code-functions
#'my-filter-allow-latex-in-code)