rebase_relative_paths extension: don't change fragment paths.
We don't want a pure fragment path to be rewritten, since these are used for cross-referencing.
This commit is contained in:
parent
6972a7dc91
commit
0661ce699f
4 changed files with 10 additions and 1 deletions
|
@ -5081,6 +5081,9 @@ Without this extension, you would have to use
|
|||
`![image](chap2/spider.jpg)` in `chap2/text.md`. Links with
|
||||
relative paths will be rewritten in the same way as images.
|
||||
|
||||
Absolute paths and URLs are not changed. Neither are paths
|
||||
consisting entirely of a fragment, e.g. `[section one](#foo)`.
|
||||
|
||||
Note that relative paths in reference links and images will
|
||||
be rewritten relative to the file containing the link
|
||||
reference definition, not the file containing the reference link
|
||||
|
|
|
@ -1923,7 +1923,8 @@ autoLink = try $ do
|
|||
rebasePath :: SourcePos -> Text -> Text
|
||||
rebasePath pos path = do
|
||||
let fp = sourceName pos
|
||||
in if isAbsolute (T.unpack path) || isURI path
|
||||
isFragment = T.take 1 path == "#"
|
||||
in if isFragment || isAbsolute (T.unpack path) || isURI path
|
||||
then path
|
||||
else
|
||||
case takeDirectory fp of
|
||||
|
|
|
@ -18,6 +18,8 @@ URL left alone: manual.
|
|||
|
||||
Absolute path left alone: absolute.
|
||||
|
||||
Link to fragment: chapter two.
|
||||
|
||||
Chapter two
|
||||
|
||||
A spider: [spider]
|
||||
|
@ -33,6 +35,7 @@ A spider: [spider]
|
|||
<p>Link to <a href="command/chap1/spider.png">spider picture</a>.</p>
|
||||
<p>URL left alone: <a href="https://pandoc.org/MANUAL.html">manual</a>.</p>
|
||||
<p>Absolute path left alone: <a href="/foo/bar/baz.png">absolute</a>.</p>
|
||||
<p>Link to fragment: <a href="#chapter-two">chapter two</a>.</p>
|
||||
<h1 id="chapter-two">Chapter two</h1>
|
||||
<p>A spider: <img src="command/chap2/spider.png" alt="spider" /></p>
|
||||
```
|
||||
|
|
|
@ -11,3 +11,5 @@ Link to [spider picture](spider.png).
|
|||
URL left alone: [manual](https://pandoc.org/MANUAL.html).
|
||||
|
||||
Absolute path left alone: [absolute](/foo/bar/baz.png).
|
||||
|
||||
Link to fragment: [chapter two](#chapter-two).
|
||||
|
|
Loading…
Add table
Reference in a new issue