From 384e56cb53b2f75299a5a95970f800f9fcc76909 Mon Sep 17 00:00:00 2001 From: Mirek Kratochvil Date: Thu, 8 Jun 2023 14:42:11 +0200 Subject: more dir parameters --- Types.hs | 14 ++++++++++++- cards/mypage/img/awesome.png | Bin 0 -> 36215 bytes cards/mypage/text.md | 45 ++++++++++++++++++++++++++++++++++++++++ external/mypage/img/awesome.png | Bin 36215 -> 0 bytes external/mypage/text.md | 45 ---------------------------------------- site.hs | 6 +++--- 6 files changed, 61 insertions(+), 49 deletions(-) create mode 100644 cards/mypage/img/awesome.png create mode 100644 cards/mypage/text.md delete mode 100644 external/mypage/img/awesome.png delete mode 100644 external/mypage/text.md diff --git a/Types.hs b/Types.hs index e818c63..a6a8b2b 100644 --- a/Types.hs +++ b/Types.hs @@ -44,6 +44,8 @@ data SiteState = , _templates :: M.Map FilePath Mu.Template , _outputDir :: FilePath -- ^ Directory for output , _assetDir :: FilePath -- ^ Directory for output + , _sourceDir :: FilePath -- ^ Path to page source data + , _templateDir :: FilePath -- ^ Path to template directory , _defaultTemplate :: FilePath -- ^ Name of the default template , _redirectTemplate :: FilePath -- ^ Name of the template for redirect pages , _tagTemplate :: FilePath -- ^ Name of the template for tag listing pages @@ -71,7 +73,17 @@ siteOptions' = do short 'a' <> help "Assets directory to be copied verbatim" <> value "assets" <> showDefault - --TODO templates directory! + _sourceDir <- + strOption $ + long "source-directory" <> + short 's' <> + help "Path to the directory with source data (possibly multiple paths)" <> + value "cards" <> showDefault + _templateDir <- + strOption $ + long "template-directory" <> + help "Path to the directory with templates" <> + value "templates" <> showDefault _defaultTemplate <- strOption $ long "default-template" <> diff --git a/cards/mypage/img/awesome.png b/cards/mypage/img/awesome.png new file mode 100644 index 0000000..769a333 Binary files /dev/null and b/cards/mypage/img/awesome.png differ diff --git a/cards/mypage/text.md b/cards/mypage/text.md new file mode 100644 index 0000000..f1d7306 --- /dev/null +++ b/cards/mypage/text.md @@ -0,0 +1,45 @@ +--- +title: My Page +mount: ext/mypage +redirects: + - mypage + - old:mypage +tags: + - yyy + - topic1/xxx +--- + +# My Page + +something something + +``` +this that +``` + +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Proin tortor purus platea sit eu id nisi litora libero. Neque vulputate consequat ac amet augue blandit maximus aliquet congue. Pharetra vestibulum posuere ornare faucibus fusce dictumst orci aenean eu facilisis ut volutpat commodo senectus purus himenaeos fames primis convallis nisi. + Phasellus fermentum malesuada phasellus netus dictum aenean placerat egestas amet. Ornare taciti semper dolor tristique morbi. Sem leo tincidunt aliquet semper eu lectus scelerisque quis. Sagittis vivamus mollis nisi mollis enim fermentum laoreet. + +Curabitur semper venenatis lectus viverra ex dictumst nulla maximus. Primis iaculis elementum conubia feugiat venenatis dolor augue ac blandit nullam ac phasellus turpis feugiat mollis. + +- Duis lectus porta mattis imperdiet +- vivamus augue litora lectus arcu. Justo torquent pharetra volutpat ad +- blandit bibendum accumsan nec elit cras luctus primis ipsum gravida class congue. + +Vehicula etiam elementum finibus enim duis feugiat commodo adipiscing tortor tempor elit. Et mollis consectetur habitant turpis tortor consectetur adipiscing vulputate dolor lectus + +1. iaculis convallis adipiscing. +2. Nam hendrerit dignissim condimentum ullamcorper +3. diam morbi eget consectetur odio in sagittis. + +## Something else + +![awesome](img/awesome.png) + +### more nonsense + +haha [linek](/tags/or/something) + +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Proin tortor purus platea sit eu id nisi + +litora libero. Neque vulputate consequat ac amet augue blandit maximus aliquet congue. Pharetra vestibulum posuere ornare faucibus fusce dictumst orci aenean eu facilisis ut volutpat commodo senectus purus himenaeos fames primis convallis nisi. diff --git a/external/mypage/img/awesome.png b/external/mypage/img/awesome.png deleted file mode 100644 index 769a333..0000000 Binary files a/external/mypage/img/awesome.png and /dev/null differ diff --git a/external/mypage/text.md b/external/mypage/text.md deleted file mode 100644 index f1d7306..0000000 --- a/external/mypage/text.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: My Page -mount: ext/mypage -redirects: - - mypage - - old:mypage -tags: - - yyy - - topic1/xxx ---- - -# My Page - -something something - -``` -this that -``` - -Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Proin tortor purus platea sit eu id nisi litora libero. Neque vulputate consequat ac amet augue blandit maximus aliquet congue. Pharetra vestibulum posuere ornare faucibus fusce dictumst orci aenean eu facilisis ut volutpat commodo senectus purus himenaeos fames primis convallis nisi. - Phasellus fermentum malesuada phasellus netus dictum aenean placerat egestas amet. Ornare taciti semper dolor tristique morbi. Sem leo tincidunt aliquet semper eu lectus scelerisque quis. Sagittis vivamus mollis nisi mollis enim fermentum laoreet. - -Curabitur semper venenatis lectus viverra ex dictumst nulla maximus. Primis iaculis elementum conubia feugiat venenatis dolor augue ac blandit nullam ac phasellus turpis feugiat mollis. - -- Duis lectus porta mattis imperdiet -- vivamus augue litora lectus arcu. Justo torquent pharetra volutpat ad -- blandit bibendum accumsan nec elit cras luctus primis ipsum gravida class congue. - -Vehicula etiam elementum finibus enim duis feugiat commodo adipiscing tortor tempor elit. Et mollis consectetur habitant turpis tortor consectetur adipiscing vulputate dolor lectus - -1. iaculis convallis adipiscing. -2. Nam hendrerit dignissim condimentum ullamcorper -3. diam morbi eget consectetur odio in sagittis. - -## Something else - -![awesome](img/awesome.png) - -### more nonsense - -haha [linek](/tags/or/something) - -Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Proin tortor purus platea sit eu id nisi - -litora libero. Neque vulputate consequat ac amet augue blandit maximus aliquet congue. Pharetra vestibulum posuere ornare faucibus fusce dictumst orci aenean eu facilisis ut volutpat commodo senectus purus himenaeos fames primis convallis nisi. diff --git a/site.hs b/site.hs index b6f6840..1369457 100644 --- a/site.hs +++ b/site.hs @@ -23,6 +23,7 @@ import Hakyll.Core.Util.File (getRecursiveContents, makeDirectories) import Lens.Micro import Lens.Micro.Aeson import Lens.Micro.Mtl +import qualified Options.Applicative import System.FilePath ( () , isAbsolute @@ -36,7 +37,6 @@ import Text.Pandoc.Class (runIOorExplode) import Text.Pandoc.Readers.Markdown (readMarkdown) import Text.Pandoc.Writers.HTML (writeHtml5String) import qualified Text.Parsec.Error -import qualified Options.Applicative import FormatOpts import Types @@ -321,9 +321,9 @@ main = do init <- Options.Applicative.execParser siteOptions flip runStateT init $ do installAssets - traverse sourcePages ["external"] + use sourceDir >>= sourcePages sourceTags - sourceTemplates "templates" + use templateDir >>= sourceTemplates use pages >>= traverse (uncurry installPage) . M.assocs renderTags io $ putStrLn "OK" -- cgit v1.2.3