Tell us about your environment
- MarkBind Version: v1.16.1
What did you do? Please include the actual source code causing the issue.
Folder structure:
root/
- index.md
- a/
- - img.png
- - subsite.md
index.md
...
<include src="a/subsite.md" />
subsite.md
...
<img src="img.png" />
What did you expect to happen?
The subsite.md/html works, because the references are correct.
I would also expect any site reusing the subsite to work too. In this case, index.md should work and display img.png properly.
What actually happened? Please include the actual, raw output.
However, the image link is broken when viewing index.md/html. Upon inspection, the img src in index.html points to img.png, suggesting that the content of subsite.md is just copied into index.md.
To get the image to work on both sites, the code has to be changed to <img src='/a/img.png' />. However, this is tedious and unintuitive for authors to write.
Possible solution
In addition to the pre-process step of include, additionally pre-process the src tags too, replacing all relative URLs with their absolute path equivalent. For example, we could use {{baseUrl}}/a/img.png in the example above.
- However, we need to be able to detect relative URLs vs absolute one, as well as handle additional edge cases like "http(s)://..." or "#".
Extension
This issue is also applicable to other media elements such as videos, downloadable files, css and hrefs.
Tell us about your environment
What did you do? Please include the actual source code causing the issue.
Folder structure:
index.md
subsite.md
What did you expect to happen?
The subsite.md/html works, because the references are correct.
I would also expect any site reusing the subsite to work too. In this case, index.md should work and display img.png properly.
What actually happened? Please include the actual, raw output.
However, the image link is broken when viewing index.md/html. Upon inspection, the img src in index.html points to
img.png, suggesting that the content of subsite.md is just copied into index.md.To get the image to work on both sites, the code has to be changed to
<img src='/a/img.png' />. However, this is tedious and unintuitive for authors to write.Possible solution
In addition to the pre-process step of include, additionally pre-process the src tags too, replacing all relative URLs with their absolute path equivalent. For example, we could use
{{baseUrl}}/a/img.pngin the example above.Extension
This issue is also applicable to other media elements such as videos, downloadable files, css and hrefs.