diff --git a/src/org/intellij/markdown/html/GeneratingProviders.kt b/src/org/intellij/markdown/html/GeneratingProviders.kt index fd704f38..87504880 100644 --- a/src/org/intellij/markdown/html/GeneratingProviders.kt +++ b/src/org/intellij/markdown/html/GeneratingProviders.kt @@ -193,6 +193,9 @@ internal abstract class LinkGeneratingProvider(protected val baseURI: URI?) : Ge } try { + if (destination.startsWith('#')) { + return destination + } return baseURI?.resolve(destination.toString())?.toString() ?: destination } catch (e : IllegalArgumentException) { diff --git a/src/org/intellij/markdown/html/HtmlGenerator.kt b/src/org/intellij/markdown/html/HtmlGenerator.kt index 015797f6..c069d20b 100644 --- a/src/org/intellij/markdown/html/HtmlGenerator.kt +++ b/src/org/intellij/markdown/html/HtmlGenerator.kt @@ -31,7 +31,7 @@ class HtmlGenerator(private val markdownText: String, @Deprecated("To be removed, pass custom visitor instead", ReplaceWith("generateHtml(HtmlGeneratingVisitor)")) - fun generateHtml(customizer: AttributesCustomizer): String { + fun generateHtml(customizer: AttributesCustomizer = DUMMY_ATTRIBUTES_CUSTOMIZER): String { HtmlGeneratingVisitor(DefaultTagRenderer(customizer, includeSrcPositions)).visitNode(root) return htmlString.toString() } diff --git a/test/data/html/baseUriFile.md b/test/data/html/baseUriFile.md index 3de1ea3d..77a73f68 100644 --- a/test/data/html/baseUriFile.md +++ b/test/data/html/baseUriFile.md @@ -24,6 +24,7 @@ + [parent directory relative link definition] + [absolute link definition] + [root link definition] ++ [bookmark link definition] [implicit current directory relative link definition]: baz.html @@ -31,3 +32,4 @@ [parent directory relative link definition]: ../quux.html [absolute link definition]: https://google.com/ [root link definition]: /root +[bookmark link definition]: #abc \ No newline at end of file diff --git a/test/data/html/baseUriFile.txt b/test/data/html/baseUriFile.txt index 1e93062e..f41a288c 100644 --- a/test/data/html/baseUriFile.txt +++ b/test/data/html/baseUriFile.txt @@ -68,5 +68,8 @@