diff --git a/WebsiteGenerator/Content/Element.swift b/WebsiteGenerator/Content/Element.swift index aa8ed95..6ef71f3 100644 --- a/WebsiteGenerator/Content/Element.swift +++ b/WebsiteGenerator/Content/Element.swift @@ -304,15 +304,15 @@ extension Element { } /** - Create a relative link to another page in the tree. - - Parameter pageUrl: The full page url of the target page, including localization - - Returns: The relative url from a localized page of the element to the target page. + Create a relative link to another file in the tree. + - Parameter file: The full path of the target file, including localization + - Returns: The relative url from a localized page of the element to the target file. */ - func relativePathToOtherSiteElement(pageUrl: String) -> String { + func relativePathToOtherSiteElement(file: String) -> String { // Note: The element `path` is missing the last component // i.e. travel/alps instead of travel/alps/en.html let ownParts = path.components(separatedBy: "/") - let pageParts = pageUrl.components(separatedBy: "/") + let pageParts = file.components(separatedBy: "/") // Find the common elements of the path, which can be discarded var index = 0 diff --git a/WebsiteGenerator/Generators/MarkdownProcessor.swift b/WebsiteGenerator/Generators/MarkdownProcessor.swift index 13e7ef1..73186ba 100644 --- a/WebsiteGenerator/Generators/MarkdownProcessor.swift +++ b/WebsiteGenerator/Generators/MarkdownProcessor.swift @@ -48,7 +48,7 @@ struct PageContentGenerator { } let fullPath = pagePath + Element.htmlPagePathAddition(for: language) // Adjust file path to get the page url - let url = page.relativePathToOtherSiteElement(pageUrl: fullPath) + let url = page.relativePathToOtherSiteElement(file: fullPath) return html.replacingOccurrences(of: file, with: url) } diff --git a/WebsiteGenerator/Generators/PageHeadGenerator.swift b/WebsiteGenerator/Generators/PageHeadGenerator.swift index 66a9458..ffe41ba 100644 --- a/WebsiteGenerator/Generators/PageHeadGenerator.swift +++ b/WebsiteGenerator/Generators/PageHeadGenerator.swift @@ -32,9 +32,9 @@ struct PageHeadGenerator { } content[.customPageContent] = page.customHeadContent() if includesCode { - let scriptPath = "/assets/js/highlight.js" - #warning("Make highlight script path relative") - let includeText = factory.html.scriptInclude(path: scriptPath) + let scriptPath = "assets/js/highlight.js" + let relative = page.relativePathToOtherSiteElement(file: scriptPath) + let includeText = factory.html.scriptInclude(path: relative) if let head = content[.customPageContent] { content[.customPageContent] = head + "\n" + includeText } else {