Daniel Szmulewicz wrote: > Sebastien Vauban wrote: >> 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). > > 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?
It seems to be a character encoding problem: it was supposed to be a real "nbsp" char (00A0, IIRC). It's clearly NOT intended to be a "?". I don't know how this got badly converted in these posts. Best regards, Seb -- Sebastien Vauban