On 17 July 2012 20:00, Thomas K. <[email protected]> wrote:
> Hi,
>
> I am trying to use the {indir} attribute as part as a path when including
> images, e.g.
>
> image::{indir}/images/myimage.png[]
>
>
> The document is converted via a2x and dblatex backend on Windows.
>
> LaTeX fails, because it chokes when discovering a path containing
> backslashes like 'C:\docdir\asciidoc/images/myimage.png[]'.
I would have expected Latex on windows to work with backslashes, since
thats the default on that platform. Having it work with a mixed path
might be the problem. If having all backslashes doesn't work or you
want to be portable try your own macro as below.
Unfortunately asciidoc doesn't know the thing it is substituting
{indir} into is a path, so it can't convert it, and the image source
could be any URL so having asciidoc do a simple slash/backslash
substitution is not a general solution either. So AFAICT there isn't
a good general solution that asciidoc can apply.
Since you know you are only dealing with files you might try
generating your own macro that uses the Python os.path.join and
os.path.normpath to make the path and then do what image does (just
copy that section from the system docbook45.conf to a local
docbook45.conf). That way it will use the correct {indir} in included
files.
Cheers
Lex
>
> As a workaround, I am currently using {docdir} instead of {indir} and
> converting the backslashes in the docdir path into a LaTeX-friendly format:
>
> :docdir: {eval:r"{docdir}".replace("\\","/")}
>
>
> This is done at the beginning of my toplevel document. Doing the same with
> {indir} would mean that I would have to do it at the beginning of each of my
> (included) documents, which is a bit painful.
>
> Would it be possible for asciidoc to convert all backslashes in path names
> into forward slashes by default? This obviously works for all operating
> systems. Or my problem actually related to dblatex, which should perform
> this conversion instead?
>
> Greetings
>
> Thomas
>
>
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "asciidoc" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/asciidoc/-/EAvTLt7nCHAJ.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/asciidoc?hl=en.
--
You received this message because you are subscribed to the Google Groups
"asciidoc" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/asciidoc?hl=en.