diff options
| author | Mirek Kratochvil <miroslav.kratochvil@uni.lu> | 2024-02-21 14:27:36 +0100 |
|---|---|---|
| committer | Mirek Kratochvil <miroslav.kratochvil@uni.lu> | 2025-01-27 14:47:01 +0100 |
| commit | 0e710215b45647995aea60b125936d5e3b4e125b (patch) | |
| tree | f9ed20af4570a063d462e01f412536adde71b940 | |
| parent | f95f2bf2f044379789dfe9f3f7ee34b1dd9d1690 (diff) | |
| download | reploy-0e710215b45647995aea60b125936d5e3b4e125b.tar.gz reploy-0e710215b45647995aea60b125936d5e3b4e125b.tar.bz2 | |
fix index URL appending with query strings and hashes, expose the index filename to the template
| -rw-r--r-- | reploy.hs | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -181,7 +181,8 @@ processLink base l = || take 1 l == "#" then pure l else if isAbsolute l - then rootedPageLink l + then let (path, rest) = break (`elem` ['?', '#']) l + in (<> rest) <$> rootedPageLink path else installFile (base </> l) >>= rootedLink -- | Conjure a function that finds a displayable name for a page at a particular mount. @@ -208,6 +209,8 @@ addGlobalMeta meta = do rt <- rootedLink' rtp <- rootedPageLink' pn <- pageName' + aui <- use appendUrlIndex + ifname <- use indexFilename Y.Object m <- (`objMerge` meta) <$> use extraMeta let l = map (\(k, v) -> (K.toText k, Mu.toMustache v)) $ KM.toList m pure . Mu.object @@ -217,6 +220,7 @@ addGlobalMeta meta = do , ("pageLink", Mu.overText $ T.pack . rtp . T.unpack) , ("pageName", Mu.overText $ T.pack . pn . T.unpack) ] + ++ (if aui then [("indexFilename", Mu.toMustache $ T.pack ifname )] else []) -- | Get the expected timestamp file for a given filepath metadataFile :: FilePath -> Site FilePath |
