Org export: case sensitive non-ascii char substn
This commit is contained in:
parent
7a414f419a
commit
49298d3c7c
13
config.org
13
config.org
|
@ -8694,17 +8694,18 @@ since we want to let emoji processing occur first.
|
|||
|
||||
#+begin_src emacs-lisp
|
||||
(defvar +org-pdflatex-inputenc-encoded-chars
|
||||
"[[:ascii:]\u00A0-\u01F0\u0218-\u021BȲȳȷˆˇ˜˘˙˛˝\u0400-\u04FFḂḃẞ\u200C\u2010-\u201E†‡•…‰‱‹›※‽⁄⁎⁒₡₤₦₩₫€₱℃№℗℞℠™Ω℧℮←↑→↓〈〉␢␣◦◯♪⟨⟩Ḡḡ\uFB00-\uFB06]")
|
||||
"[[:ascii:]\u00A0-\u01F0\u0218-\u021BȲȳȷˆˇ˜˘˙˛˝\u0400-\u04FFḂḃẞ\u200C\u2010-\u201E†‡•…‰‱‹›※‽⁄⁎⁒₡₤₦₩₫€₱℃№℗℞℠™Ω℧℮←↑→↓〈〉␢␣◦◯♪⟨⟩Ḡḡ\uFB00-\uFB06]")
|
||||
|
||||
(defun +org-latex-replace-non-ascii-chars (text backend info)
|
||||
"Replace non-ascii chars with \\char\"XYZ forms."
|
||||
(when (and (org-export-derived-backend-p backend 'latex)
|
||||
(string= (plist-get info :latex-compiler) "pdflatex"))
|
||||
(replace-regexp-in-string "[^[:ascii:]]"
|
||||
(lambda (nonascii)
|
||||
(if (string-match-p +org-pdflatex-inputenc-encoded-chars nonascii) nonascii
|
||||
(or (cdr (assoc nonascii +org-latex-non-ascii-char-substitutions)) "¿")))
|
||||
text)))
|
||||
(let (case-replace)
|
||||
(replace-regexp-in-string "[^[:ascii:]]"
|
||||
(lambda (nonascii)
|
||||
(if (string-match-p +org-pdflatex-inputenc-encoded-chars nonascii) nonascii
|
||||
(or (cdr (assoc nonascii +org-latex-non-ascii-char-substitutions)) "¿")))
|
||||
text))))
|
||||
|
||||
(add-to-list 'org-export-filter-final-output-functions #'+org-latex-replace-non-ascii-chars t)
|
||||
#+end_src
|
||||
|
|
Loading…
Reference in New Issue