Re: [O] LaTeX export: Handle hash symbol in footnote url links

2014-04-10 Thread Michael Bach
On 2/26/14 3:11 PM, Nicolas Goaziou wrote:
 Hello,
 
 Michael Bach pha...@gmail.com writes:
 
 Thanks for your answer. `\url` can handle hash symbols in its argument
 without escaping alright - as can be expected. AFAICS, the problem lies
 in the `\footnote` command. And yes, I was thinking of `ox-latex`
 figuring out that the url is in a footnote and escape accordingly.

 I can see that the export engine should not and cannot cover all special
 cases, but since links and footnotes are `first-class` org-mode
 concepts, it would be nice to have them play along in this situation.
 From a typographic point of view, I figured url links in footnotes are
 not that unusual.
 
 This needs to be properly defined.
 
 Where protecting characters in verbatim parts of the buffer should
 happen? Within footnotes only? In every verbatim part? And on which
 characters?
 

Ok, using org-element, we could escape special symbols - for now, only
'#', '%' and '' come to mind - in http links iff they are inside a
footnote and exporter backend is latex.

As I said, if this is too special a case to be supported, I was playing
around with regexps and `org-export-filter-final-output-functions' as
seen e.g. in [1].

On other occasions that involved in-buffer replacements, I had success
using group matching with the `re-search-forward', `replace-match' and
`match-string' functions (see also [2]).  But IIUC, since the export
filter function gets passed a string with the .tex export results, I
need a function that operates on a string such as
`replace-regexp-in-string' as seen in [1].

Now I assume for in-string regexp replacement and the use case at hand I
would need a (missing) lookbehind feature [3], don't I?

Please let me know whether you think this is feasible.

Best Regards,
Michael


[1] https://lists.gnu.org/archive/html/emacs-orgmode/2014-02/msg00146.html
[2]
http://stackoverflow.com/questions/6395898/emacs-how-do-i-replace-regexp-with-a-lisp-function-in-a-defun
[3] http://comments.gmane.org/gmane.emacs.devel/147844




Re: [O] LaTeX export: Handle hash symbol in footnote url links

2014-03-21 Thread Bastien
Hi Nicolas,

Nicolas Goaziou n.goaz...@gmail.com writes:

 This needs to be properly defined.

 Where protecting characters in verbatim parts of the buffer should
 happen? Within footnotes only? In every verbatim part? And on which
 characters?

AFAIK in footnotes only, for the # ^ !  characters (% is already
escaped.)

But I'm not sure we should fix this at Org's level: there is the
bigfoot package* that is fixes it, it seems a common LaTeX problem
and solution:

* http://www.ctan.org/tex-archive/macros/latex/contrib/bigfoot/

-- 
 Bastien



Re: [O] LaTeX export: Handle hash symbol in footnote url links

2014-02-26 Thread Nicolas Goaziou
Hello,

Michael Bach pha...@gmail.com writes:

 Thanks for your answer. `\url` can handle hash symbols in its argument
 without escaping alright - as can be expected. AFAICS, the problem lies
 in the `\footnote` command. And yes, I was thinking of `ox-latex`
 figuring out that the url is in a footnote and escape accordingly.

 I can see that the export engine should not and cannot cover all special
 cases, but since links and footnotes are `first-class` org-mode
 concepts, it would be nice to have them play along in this situation.
 From a typographic point of view, I figured url links in footnotes are
 not that unusual.

This needs to be properly defined.

Where protecting characters in verbatim parts of the buffer should
happen? Within footnotes only? In every verbatim part? And on which
characters?


Regards,

-- 
Nicolas Goaziou



[O] LaTeX export: Handle hash symbol in footnote url links

2014-02-21 Thread Michael Bach
Dear org-mode Devs and Users,

I am trying to export the following snippet

#+BEGIN_ORG
* LaTeX export of url with hash symbol

The Org mode export facilities can be used to export Org documents or
parts of Org documents to a variety of other formats.[fn:1]

* Footnotes

[fn:1] [[http://orgmode.org/org.html#Exporting]]
#+END_ORG

Now the exported .tex file contains the link as
: \footnote{\url{http://orgmode.org/org.html#Exporting}}

Which LaTeX does not like:
: Illegal parameter number in definition of \Hy@tempa

FWIW, there is a workaround for the percent symbol described on SO[1]
using `\urldef` - but this does not work with the hash symbol.

Is there another workaround/solution that works with org-mode?

[1] bit.ly/1cwYJaM




Re: [O] LaTeX export: Handle hash symbol in footnote url links

2014-02-21 Thread Vladimir Lomov
Hello,
** Michael Bach [2014-02-21 11:52:14 +0100]:

 Dear org-mode Devs and Users,

 I am trying to export the following snippet

 #+BEGIN_ORG
 * LaTeX export of url with hash symbol

 The Org mode export facilities can be used to export Org documents or
 parts of Org documents to a variety of other formats.[fn:1]

 * Footnotes

 [fn:1] [[http://orgmode.org/org.html#Exporting]]
 #+END_ORG

 Now the exported .tex file contains the link as
 : \footnote{\url{http://orgmode.org/org.html#Exporting}}

 Which LaTeX does not like:
 : Illegal parameter number in definition of \Hy@tempa

 FWIW, there is a workaround for the percent symbol described on SO[1]
 using `\urldef` - but this does not work with the hash symbol.

 Is there another workaround/solution that works with org-mode?

Hash (#), as well as several other symbols have to be espaced when used
as is in LaTeX documents. See, for example, The Not So Short
Introduction to LaTeX2e, 1.3.2 Special Characters. In general it is
duty of ox-latex (LaTeX export backend) to espace such characters.

 [1] bit.ly/1cwYJaM

---
WBR, Vladimir Lomov

-- 
God grant us the serenity to accept the things we cannot change, courage to
change the things we can, and wisdom to know the difference.



Re: [O] LaTeX export: Handle hash symbol in footnote url links

2014-02-21 Thread Michael Bach
Hello Vladimir,

On 21/02/2014 12:14, Vladimir Lomov wrote:
 Hello,
 ** Michael Bach [2014-02-21 11:52:14 +0100]:
 
 Dear org-mode Devs and Users,
 
 I am trying to export the following snippet
 
 #+BEGIN_ORG
 * LaTeX export of url with hash symbol
 
 The Org mode export facilities can be used to export Org documents or
 parts of Org documents to a variety of other formats.[fn:1]
 
 * Footnotes
 
 [fn:1] [[http://orgmode.org/org.html#Exporting]]
 #+END_ORG
 
 Now the exported .tex file contains the link as
 : \footnote{\url{http://orgmode.org/org.html#Exporting}}
 
 Which LaTeX does not like:
 : Illegal parameter number in definition of \Hy@tempa
 
 FWIW, there is a workaround for the percent symbol described on SO[1]
 using `\urldef` - but this does not work with the hash symbol.
 
 Is there another workaround/solution that works with org-mode?
 
 Hash (#), as well as several other symbols have to be espaced when used
 as is in LaTeX documents. See, for example, The Not So Short
 Introduction to LaTeX2e, 1.3.2 Special Characters. In general it is
 duty of ox-latex (LaTeX export backend) to espace such characters.
 

Thanks for your answer. `\url` can handle hash symbols in its argument
without escaping alright - as can be expected. AFAICS, the problem lies
in the `\footnote` command. And yes, I was thinking of `ox-latex`
figuring out that the url is in a footnote and escape accordingly.

I can see that the export engine should not and cannot cover all special
cases, but since links and footnotes are `first-class` org-mode
concepts, it would be nice to have them play along in this situation.
From a typographic point of view, I figured url links in footnotes are
not that unusual.

Best Regards,
Michael


 [1] bit.ly/1cwYJaM
 
 ---
 WBR, Vladimir Lomov