[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] utf8x and org-mode 8
From: |
Sebastien Vauban |
Subject: |
Re: [O] utf8x and org-mode 8 |
Date: |
Mon, 25 Aug 2014 09:55:20 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.93 (windows-nt) |
Daniel Szmulewicz wrote:
> I understand that org-latex derives the encoding from the buffer.
> In the ".tex” file produced by the exporter, I see this line:
> \usepackage[utf8]{inputenc}
>
> However, I would like to set it to:
> \usepackage[utf8x]{inputenc}
>
> I need to account for special French spacing characters: “espaces
> insécables."
>
> Old tricks to achieve this with previous org-mode versions don’t seem to
> work.
> What is the best way to export an org buffer and have it set to utf8x with
> the latest org-mode version?
AFAICT, when using the `utf8' option to `inputenc' (and not `utf8x'
which should be avoided, as it uses `ucs' which is no longer
maintained), we have 2 solutions to support the UTF-8 non-breaking
space:
- Convert it in Org mode, when exporting (via a filter)
#+begin_src emacs-lisp
;; filter for non-breaking spaces
(defun leuven--latex-filter-nbsp (text backend info)
"Convert non-breaking spaces when exporting to LaTeX/Beamer."
(when (memq backend '(latex beamer))
(replace-regexp-in-string " " "~" text)))
(add-to-list 'org-export-filter-plain-text-functions
'leuven--latex-filter-nbsp)
#+end_src
- or Convert it in LaTeX:
#+begin_src emacs-lisp :tangle no
;; convert `nbsp' to its LaTeX equivalent
(add-to-list 'org-latex-packages-alist
(concat "\\ifdefined\\DeclareUnicodeCharacter{"
"\\DeclareUnicodeCharacter{00A0}{~}"
"}\\fi") t)
#+end_src
I think that the first one is "better", though its problem is that,
being done by a filter (hence, on the user-side), sharing an Org file is
not easy anymore (without sharing the filter to be added to the
personal .emacs file).
Best regards,
Seb
--
Sebastien Vauban