Awesome. Thank you, Sebastien. 
I prefer the second solution, because it allows me to account for different 
kinds of spaces: espace fine, espace insécable, espace moyenne, etc. 

Just for curiosity: I’m not sure what to make of the regexp. The ‘?’ is 
normally a postfix operator used in conjunction with other characters, isn’t 
it? As it is, it seems to target question marks instead of blank spaces. What 
am I missing?


> ------------------------------
> 
> Message: 17
> Date: Mon, 25 Aug 2014 09:55:20 +0200
> From: Sebastien Vauban <sva-n...@mygooglest.com>
> To: emacs-orgmode@gnu.org
> Subject: Re: [O] utf8x and org-mode 8
> Message-ID: <86wq9xj95j....@somewhere.org>
> Content-Type: text/plain; charset=utf-8
> 
> 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
> 
> 
> 
--
Daniel Szmulewicz
daniel.szmulew...@gmail.com


Reply via email to