From 53f2ace0f4f7b7c68818816f5462f393bed2574a Mon Sep 17 00:00:00 2001 From: kimcc <15278020+kimcc@users.noreply.github.com> Date: Sun, 2 Feb 2020 11:13:02 -0600 Subject: [PATCH] Initial commit --- LICENSE.md | 20 + README.md | 83 +++ archetypes/default.md | 4 + assets/css/custom.scss | 0 assets/css/main.scss | 495 ++++++++++++++++++ assets/css/partials/_breakpoints.scss | 96 ++++ assets/css/partials/_fonts.scss | 32 ++ assets/css/vendor/normalize.scss | 350 +++++++++++++ assets/css/vendor/syntax.scss | 59 +++ assets/js/main.js | 13 + exampleSite/archetypes/default.md | 6 + exampleSite/config.toml | 95 ++++ exampleSite/content/about.md | 24 + exampleSite/content/archives.md | 5 + exampleSite/content/posts/emoji-support.md | 30 ++ exampleSite/content/posts/markdown-syntax.md | 142 +++++ .../content/posts/math-typesetting.mmark | 38 ++ exampleSite/content/posts/placeholder-text.md | 59 +++ exampleSite/content/posts/rich-content.md | 43 ++ exampleSite/content/tags.md | 5 + images/screenshot.png | Bin 0 -> 156022 bytes images/tn.png | Bin 0 -> 88369 bytes layouts/404.html | 7 + layouts/_default/baseof.html | 14 + layouts/_default/section.html | 30 ++ layouts/_default/single.html | 23 + layouts/_default/tag.html | 24 + layouts/index.html | 67 +++ layouts/partials/footer-mobile.html | 12 + layouts/partials/footer.html | 9 + layouts/partials/head.html | 33 ++ layouts/partials/header.html | 5 + layouts/partials/math.html | 6 + layouts/partials/nav.html | 11 + layouts/partials/social.html | 179 +++++++ layouts/section/archives.html | 29 + layouts/section/tags.html | 10 + ...s_d11fe7b62c27961c87ecd0f2490357b9.content | 1 + ...n.js_d11fe7b62c27961c87ecd0f2490357b9.json | 1 + ...s_48b060fe05b0a273d182ef83c0605941.content | 0 ...scss_48b060fe05b0a273d182ef83c0605941.json | 1 + ...s_48b060fe05b0a273d182ef83c0605941.content | 1 + ...scss_48b060fe05b0a273d182ef83c0605941.json | 1 + ...s_48b060fe05b0a273d182ef83c0605941.content | 1 + ...scss_48b060fe05b0a273d182ef83c0605941.json | 1 + ...s_c70ce94df64e4b85862f2e706592873a.content | 12 + ...scss_c70ce94df64e4b85862f2e706592873a.json | 1 + ...s_f300667da4f5b5f84e1a9e0702b2fdde.content | 9 + ...scss_f300667da4f5b5f84e1a9e0702b2fdde.json | 1 + static/android-chrome-144x144.png | Bin 0 -> 7612 bytes static/android-chrome-192x192.png | Bin 0 -> 10264 bytes static/android-chrome-256x256.png | Bin 0 -> 15088 bytes static/android-chrome-36x36.png | Bin 0 -> 1592 bytes static/android-chrome-48x48.png | Bin 0 -> 2038 bytes static/android-chrome-72x72.png | Bin 0 -> 3467 bytes static/android-chrome-96x96.png | Bin 0 -> 4747 bytes static/apple-touch-icon.png | Bin 0 -> 6238 bytes static/browserconfig.xml | 10 + static/css/custom.css | 0 static/css/katex.min.css | 1 + static/favicon-16x16.png | Bin 0 -> 1000 bytes static/favicon-32x32.png | Bin 0 -> 1648 bytes static/favicon.ico | Bin 0 -> 15086 bytes static/fonts/KaTeX_AMS-Regular.ttf | Bin 0 -> 70972 bytes static/fonts/KaTeX_AMS-Regular.woff | Bin 0 -> 38868 bytes static/fonts/KaTeX_AMS-Regular.woff2 | Bin 0 -> 32944 bytes static/fonts/KaTeX_Caligraphic-Bold.ttf | Bin 0 -> 19316 bytes static/fonts/KaTeX_Caligraphic-Bold.woff | Bin 0 -> 11696 bytes static/fonts/KaTeX_Caligraphic-Bold.woff2 | Bin 0 -> 10448 bytes static/fonts/KaTeX_Caligraphic-Regular.ttf | Bin 0 -> 18684 bytes static/fonts/KaTeX_Caligraphic-Regular.woff | Bin 0 -> 11460 bytes static/fonts/KaTeX_Caligraphic-Regular.woff2 | Bin 0 -> 10240 bytes static/fonts/KaTeX_Fraktur-Bold.ttf | Bin 0 -> 35660 bytes static/fonts/KaTeX_Fraktur-Bold.woff | Bin 0 -> 22632 bytes static/fonts/KaTeX_Fraktur-Bold.woff2 | Bin 0 -> 20360 bytes static/fonts/KaTeX_Fraktur-Regular.ttf | Bin 0 -> 34352 bytes static/fonts/KaTeX_Fraktur-Regular.woff | Bin 0 -> 22088 bytes static/fonts/KaTeX_Fraktur-Regular.woff2 | Bin 0 -> 19784 bytes static/fonts/KaTeX_Main-Bold.ttf | Bin 0 -> 60784 bytes static/fonts/KaTeX_Main-Bold.woff | Bin 0 -> 35464 bytes static/fonts/KaTeX_Main-Bold.woff2 | Bin 0 -> 30244 bytes static/fonts/KaTeX_Main-BoldItalic.ttf | Bin 0 -> 44496 bytes static/fonts/KaTeX_Main-BoldItalic.woff | Bin 0 -> 25352 bytes static/fonts/KaTeX_Main-BoldItalic.woff2 | Bin 0 -> 21944 bytes static/fonts/KaTeX_Main-Italic.ttf | Bin 0 -> 47640 bytes static/fonts/KaTeX_Main-Italic.woff | Bin 0 -> 26228 bytes static/fonts/KaTeX_Main-Italic.woff2 | Bin 0 -> 22748 bytes static/fonts/KaTeX_Main-Regular.ttf | Bin 0 -> 69520 bytes static/fonts/KaTeX_Main-Regular.woff | Bin 0 -> 38112 bytes static/fonts/KaTeX_Main-Regular.woff2 | Bin 0 -> 32464 bytes static/fonts/KaTeX_Math-BoldItalic.ttf | Bin 0 -> 39308 bytes static/fonts/KaTeX_Math-BoldItalic.woff | Bin 0 -> 22324 bytes static/fonts/KaTeX_Math-BoldItalic.woff2 | Bin 0 -> 19720 bytes static/fonts/KaTeX_Math-Italic.ttf | Bin 0 -> 40992 bytes static/fonts/KaTeX_Math-Italic.woff | Bin 0 -> 22844 bytes static/fonts/KaTeX_Math-Italic.woff2 | Bin 0 -> 20096 bytes static/fonts/KaTeX_SansSerif-Bold.ttf | Bin 0 -> 33688 bytes static/fonts/KaTeX_SansSerif-Bold.woff | Bin 0 -> 18516 bytes static/fonts/KaTeX_SansSerif-Bold.woff2 | Bin 0 -> 15732 bytes static/fonts/KaTeX_SansSerif-Italic.ttf | Bin 0 -> 30960 bytes static/fonts/KaTeX_SansSerif-Italic.woff | Bin 0 -> 17572 bytes static/fonts/KaTeX_SansSerif-Italic.woff2 | Bin 0 -> 15024 bytes static/fonts/KaTeX_SansSerif-Regular.ttf | Bin 0 -> 29812 bytes static/fonts/KaTeX_SansSerif-Regular.woff | Bin 0 -> 16228 bytes static/fonts/KaTeX_SansSerif-Regular.woff2 | Bin 0 -> 13708 bytes static/fonts/KaTeX_Script-Regular.ttf | Bin 0 -> 24620 bytes static/fonts/KaTeX_Script-Regular.woff | Bin 0 -> 13428 bytes static/fonts/KaTeX_Script-Regular.woff2 | Bin 0 -> 12064 bytes static/fonts/KaTeX_Size1-Regular.ttf | Bin 0 -> 12916 bytes static/fonts/KaTeX_Size1-Regular.woff | Bin 0 -> 6696 bytes static/fonts/KaTeX_Size1-Regular.woff2 | Bin 0 -> 5592 bytes static/fonts/KaTeX_Size2-Regular.ttf | Bin 0 -> 12172 bytes static/fonts/KaTeX_Size2-Regular.woff | Bin 0 -> 6436 bytes static/fonts/KaTeX_Size2-Regular.woff2 | Bin 0 -> 5392 bytes static/fonts/KaTeX_Size3-Regular.ttf | Bin 0 -> 8120 bytes static/fonts/KaTeX_Size3-Regular.woff | Bin 0 -> 4568 bytes static/fonts/KaTeX_Size3-Regular.woff2 | Bin 0 -> 3728 bytes static/fonts/KaTeX_Size4-Regular.ttf | Bin 0 -> 11016 bytes static/fonts/KaTeX_Size4-Regular.woff | Bin 0 -> 6184 bytes static/fonts/KaTeX_Size4-Regular.woff2 | Bin 0 -> 5028 bytes static/fonts/KaTeX_Typewriter-Regular.ttf | Bin 0 -> 35924 bytes static/fonts/KaTeX_Typewriter-Regular.woff | Bin 0 -> 20260 bytes static/fonts/KaTeX_Typewriter-Regular.woff2 | Bin 0 -> 17272 bytes static/fonts/NotoSans-Italic.woff | Bin 0 -> 181612 bytes static/fonts/NotoSans-Italic.woff2 | Bin 0 -> 127972 bytes static/fonts/NotoSans-Regular.woff | Bin 0 -> 235792 bytes static/fonts/NotoSans-Regular.woff2 | Bin 0 -> 164100 bytes static/fonts/NotoSerif-Bold.woff | Bin 0 -> 234116 bytes static/fonts/NotoSerif-Bold.woff2 | Bin 0 -> 177924 bytes static/fonts/NotoSerif-SemiBold.woff | Bin 0 -> 196960 bytes static/fonts/NotoSerif-SemiBold.woff2 | Bin 0 -> 131548 bytes static/js/auto-render.min.js | 1 + static/js/katex.min.js | 1 + static/manifest.json | 43 ++ static/mstile-150x150.png | Bin 0 -> 6020 bytes static/mstile-310x310.png | Bin 0 -> 12885 bytes static/safari-pinned-tab.svg | 22 + theme.toml | 12 + 138 files changed, 2178 insertions(+) create mode 100644 LICENSE.md create mode 100644 README.md create mode 100644 archetypes/default.md create mode 100644 assets/css/custom.scss create mode 100644 assets/css/main.scss create mode 100644 assets/css/partials/_breakpoints.scss create mode 100644 assets/css/partials/_fonts.scss create mode 100644 assets/css/vendor/normalize.scss create mode 100644 assets/css/vendor/syntax.scss create mode 100644 assets/js/main.js create mode 100644 exampleSite/archetypes/default.md create mode 100644 exampleSite/config.toml create mode 100644 exampleSite/content/about.md create mode 100644 exampleSite/content/archives.md create mode 100755 exampleSite/content/posts/emoji-support.md create mode 100644 exampleSite/content/posts/markdown-syntax.md create mode 100755 exampleSite/content/posts/math-typesetting.mmark create mode 100755 exampleSite/content/posts/placeholder-text.md create mode 100755 exampleSite/content/posts/rich-content.md create mode 100644 exampleSite/content/tags.md create mode 100644 images/screenshot.png create mode 100644 images/tn.png create mode 100644 layouts/404.html create mode 100644 layouts/_default/baseof.html create mode 100644 layouts/_default/section.html create mode 100644 layouts/_default/single.html create mode 100644 layouts/_default/tag.html create mode 100644 layouts/index.html create mode 100644 layouts/partials/footer-mobile.html create mode 100644 layouts/partials/footer.html create mode 100644 layouts/partials/head.html create mode 100644 layouts/partials/header.html create mode 100644 layouts/partials/math.html create mode 100644 layouts/partials/nav.html create mode 100644 layouts/partials/social.html create mode 100644 layouts/section/archives.html create mode 100644 layouts/section/tags.html create mode 100644 resources/_gen/assets/js/js/main.js_d11fe7b62c27961c87ecd0f2490357b9.content create mode 100644 resources/_gen/assets/js/js/main.js_d11fe7b62c27961c87ecd0f2490357b9.json create mode 100644 resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.content create mode 100644 resources/_gen/assets/scss/css/custom.scss_48b060fe05b0a273d182ef83c0605941.json create mode 100644 resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.content create mode 100644 resources/_gen/assets/scss/css/main.scss_48b060fe05b0a273d182ef83c0605941.json create mode 100644 resources/_gen/assets/scss/css/styles.scss_48b060fe05b0a273d182ef83c0605941.content create mode 100644 resources/_gen/assets/scss/css/styles.scss_48b060fe05b0a273d182ef83c0605941.json create mode 100644 resources/_gen/assets/scss/css/styles.scss_c70ce94df64e4b85862f2e706592873a.content create mode 100644 resources/_gen/assets/scss/css/styles.scss_c70ce94df64e4b85862f2e706592873a.json create mode 100644 resources/_gen/assets/scss/css/styles.scss_f300667da4f5b5f84e1a9e0702b2fdde.content create mode 100644 resources/_gen/assets/scss/css/styles.scss_f300667da4f5b5f84e1a9e0702b2fdde.json create mode 100755 static/android-chrome-144x144.png create mode 100755 static/android-chrome-192x192.png create mode 100755 static/android-chrome-256x256.png create mode 100755 static/android-chrome-36x36.png create mode 100755 static/android-chrome-48x48.png create mode 100755 static/android-chrome-72x72.png create mode 100755 static/android-chrome-96x96.png create mode 100755 static/apple-touch-icon.png create mode 100755 static/browserconfig.xml create mode 100644 static/css/custom.css create mode 100644 static/css/katex.min.css create mode 100755 static/favicon-16x16.png create mode 100755 static/favicon-32x32.png create mode 100755 static/favicon.ico create mode 100644 static/fonts/KaTeX_AMS-Regular.ttf create mode 100644 static/fonts/KaTeX_AMS-Regular.woff create mode 100644 static/fonts/KaTeX_AMS-Regular.woff2 create mode 100644 static/fonts/KaTeX_Caligraphic-Bold.ttf create mode 100644 static/fonts/KaTeX_Caligraphic-Bold.woff create mode 100644 static/fonts/KaTeX_Caligraphic-Bold.woff2 create mode 100644 static/fonts/KaTeX_Caligraphic-Regular.ttf create mode 100644 static/fonts/KaTeX_Caligraphic-Regular.woff create mode 100644 static/fonts/KaTeX_Caligraphic-Regular.woff2 create mode 100644 static/fonts/KaTeX_Fraktur-Bold.ttf create mode 100644 static/fonts/KaTeX_Fraktur-Bold.woff create mode 100644 static/fonts/KaTeX_Fraktur-Bold.woff2 create mode 100644 static/fonts/KaTeX_Fraktur-Regular.ttf create mode 100644 static/fonts/KaTeX_Fraktur-Regular.woff create mode 100644 static/fonts/KaTeX_Fraktur-Regular.woff2 create mode 100644 static/fonts/KaTeX_Main-Bold.ttf create mode 100644 static/fonts/KaTeX_Main-Bold.woff create mode 100644 static/fonts/KaTeX_Main-Bold.woff2 create mode 100644 static/fonts/KaTeX_Main-BoldItalic.ttf create mode 100644 static/fonts/KaTeX_Main-BoldItalic.woff create mode 100644 static/fonts/KaTeX_Main-BoldItalic.woff2 create mode 100644 static/fonts/KaTeX_Main-Italic.ttf create mode 100644 static/fonts/KaTeX_Main-Italic.woff create mode 100644 static/fonts/KaTeX_Main-Italic.woff2 create mode 100644 static/fonts/KaTeX_Main-Regular.ttf create mode 100644 static/fonts/KaTeX_Main-Regular.woff create mode 100644 static/fonts/KaTeX_Main-Regular.woff2 create mode 100644 static/fonts/KaTeX_Math-BoldItalic.ttf create mode 100644 static/fonts/KaTeX_Math-BoldItalic.woff create mode 100644 static/fonts/KaTeX_Math-BoldItalic.woff2 create mode 100644 static/fonts/KaTeX_Math-Italic.ttf create mode 100644 static/fonts/KaTeX_Math-Italic.woff create mode 100644 static/fonts/KaTeX_Math-Italic.woff2 create mode 100644 static/fonts/KaTeX_SansSerif-Bold.ttf create mode 100644 static/fonts/KaTeX_SansSerif-Bold.woff create mode 100644 static/fonts/KaTeX_SansSerif-Bold.woff2 create mode 100644 static/fonts/KaTeX_SansSerif-Italic.ttf create mode 100644 static/fonts/KaTeX_SansSerif-Italic.woff create mode 100644 static/fonts/KaTeX_SansSerif-Italic.woff2 create mode 100644 static/fonts/KaTeX_SansSerif-Regular.ttf create mode 100644 static/fonts/KaTeX_SansSerif-Regular.woff create mode 100644 static/fonts/KaTeX_SansSerif-Regular.woff2 create mode 100644 static/fonts/KaTeX_Script-Regular.ttf create mode 100644 static/fonts/KaTeX_Script-Regular.woff create mode 100644 static/fonts/KaTeX_Script-Regular.woff2 create mode 100644 static/fonts/KaTeX_Size1-Regular.ttf create mode 100644 static/fonts/KaTeX_Size1-Regular.woff create mode 100644 static/fonts/KaTeX_Size1-Regular.woff2 create mode 100644 static/fonts/KaTeX_Size2-Regular.ttf create mode 100644 static/fonts/KaTeX_Size2-Regular.woff create mode 100644 static/fonts/KaTeX_Size2-Regular.woff2 create mode 100644 static/fonts/KaTeX_Size3-Regular.ttf create mode 100644 static/fonts/KaTeX_Size3-Regular.woff create mode 100644 static/fonts/KaTeX_Size3-Regular.woff2 create mode 100644 static/fonts/KaTeX_Size4-Regular.ttf create mode 100644 static/fonts/KaTeX_Size4-Regular.woff create mode 100644 static/fonts/KaTeX_Size4-Regular.woff2 create mode 100644 static/fonts/KaTeX_Typewriter-Regular.ttf create mode 100644 static/fonts/KaTeX_Typewriter-Regular.woff create mode 100644 static/fonts/KaTeX_Typewriter-Regular.woff2 create mode 100644 static/fonts/NotoSans-Italic.woff create mode 100644 static/fonts/NotoSans-Italic.woff2 create mode 100644 static/fonts/NotoSans-Regular.woff create mode 100644 static/fonts/NotoSans-Regular.woff2 create mode 100644 static/fonts/NotoSerif-Bold.woff create mode 100644 static/fonts/NotoSerif-Bold.woff2 create mode 100644 static/fonts/NotoSerif-SemiBold.woff create mode 100644 static/fonts/NotoSerif-SemiBold.woff2 create mode 100644 static/js/auto-render.min.js create mode 100644 static/js/katex.min.js create mode 100755 static/manifest.json create mode 100755 static/mstile-150x150.png create mode 100755 static/mstile-310x310.png create mode 100755 static/safari-pinned-tab.svg create mode 100644 theme.toml diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..25440e5 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2020 kimcc + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..e20c889 --- /dev/null +++ b/README.md @@ -0,0 +1,83 @@ +# Noteworthy + +Noteworthy is a minimalist Hugo theme for writers and bloggers. + +![Noteworthy desktop screenshot](https://github.com/kimcc/hugo-theme-noteworthy/blob/master/images/screenshot.png) + + +## Features + +* Fully responsive +* Google Analytics and Disqus integration +* Syntax highlighting +* Mathematical notations with KaTex +* About, Tags, and Archives pages +* RSS feeds +* Social media links +* SCSS for styling + + +## Installation + +Navigate to the root directory of your Hugo site and clone this repository. + +``` +git clone https://github.com/kimcc/hugo-theme-noteworthy.git themes/noteworthy +``` + +Refer to the [Hugo docs](https://gohugo.io/getting-started/quick-start/) for more information. + + +## Social media accounts + +In the `params` section of the `config.toml` file, you can add links to your social media accounts. Simply remove the ones that you don't want to include, and their icons will disappear from the site. + +``` +# Main +email = "" +facebook = "" +twitter = "" +instagram = "" +tumblr = "" +reddit = "" +pinterest = "" +youtube = "" +weibo = "" +vk = "" +linkedin = "" + +# Writing +medium = "" +blogger = "" +wordpress = "" + +# Creative & Visual +dribbble = "" +behance = "" +deviantart = "" +flickr = "" + +# Programming +github = "" +stackoverflow = "" +gitlab = "" +codepen = "" +``` + + +## Disqus and Google Analytics + +Add your Disqus shortname and Google Analytics identifier in the `config.toml` file. + +``` +# Add your Disqus shortname here. +disqusShortname = "" + +# Add your Google Analytics identifier: UA-XXXXXXXX-X +googleAnalytics = "" +``` + + +## License + +Released under the [MIT License](https://github.com/kimcc/hugo-theme-noteworthy/blob/master/LICENSE.md). \ No newline at end of file diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..03855e3 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,4 @@ ++++ +title = "" +date = "" ++++ \ No newline at end of file diff --git a/assets/css/custom.scss b/assets/css/custom.scss new file mode 100644 index 0000000..e69de29 diff --git a/assets/css/main.scss b/assets/css/main.scss new file mode 100644 index 0000000..4c81008 --- /dev/null +++ b/assets/css/main.scss @@ -0,0 +1,495 @@ +/* VARIABLES ========================================================================== */ + +// COLORS +$teal: #63BDA2; +$teal-darker: #359377; +$gray-background: #F7F7F7; +$gray-table-border: #EEEEEE; +$gray-lightest: #D2D2D2; +$gray-light: #ABABAB; +$gray-medium: #898989; +$gray-dark: #5F5F5F; +$highlight: #FFEC5C; + +// FONTS +$serif: "Noto Serif","Segoe UI","Helvetica Neue",Helvetica,Roboto,FreeSans,serif; +$sans-serif: "Noto Sans","Segoe UI","Helvetica Neue",Helvetica,Roboto,FreeSans,sans-serif; +$code: Menlo,Monaco,"Courier New",monospace; + +/* SASS IMPORT ========================================================================== */ + +// CUSTOM FONTS +@import "partials/_fonts"; + +// THRID PARTY +@import "vendor/normalize"; +@import "vendor/syntax"; + +/* STYLES ========================================================================== */ + +html, +body { + height: 100%; +} + +html { + margin: 0; + line-height: 170%; + -ms-overflow-style: -ms-autohiding-scrollbar; +} + +body { + color: $gray-dark; + font-family: $sans-serif; + margin: 0; + font-size: 1.1rem; +} + +// TEXT +article p { + a { + text-decoration: underline; + text-decoration-skip-ink: auto; + color: $gray-dark; + } +} + +article .post-footer>a { + text-decoration: none; +} + +h1 { + font-size: 1.9em; + padding-top: 0.2em; + margin: 0.5em 0em 0.75em 0em; + font-family: $serif; + font-weight: 600; + line-height: 1.3em; +} + +h2, +h3, +h4, +h5, +h6 { + margin: 1.25em 0em 0.75em 0em; + font-family: $serif; + font-weight: 600; +} + +h2 { + font-size: 1.25em; + line-height: 1.4em; + + a { + text-decoration: none; + position: relative; + text-shadow: 0px -2px 0 white, 0px -1px 0 white, 0px 0px 0 white, 2px -2px 0 white, 2px -1px 0 white, 2px 0px 0 white, -2px -2px 0 white, -2px -1px 0 white, -2px 0px 0 white, 1px -2px 0 white, 1px -1px 0 white, 1px 0px 0 white, -1px -2px 0 white, -1px -1px 0 white, -1px 0px 0 white, 0px -2px 0 white, 0px -1px 0 white, 0px 0px 0 white; + box-shadow: 0 -1px 0 0 white inset, 0 -2px 0 0 transparent inset; + background-size: 1px 1em; + position: relative; + transition: all 0.6s cubic-bezier(0.075, 0.82, 0.165, 1); + + &:hover { + box-shadow: 0 -1px 0 0 white inset, 0 -2px 0 0 $gray-dark inset; + transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1); + } + } +} + +h5, +h6 { + font-weight: 700; + line-height: 1.3em; +} + +h4 { + line-height: 1.3em; +} + +h3 { + font-size: 1.1em; + line-height: 1.3em; +} + +p { + margin: 0em 0 1em 0; +} + +// LINKS AND TAGS +a { + text-decoration: underline; + text-decoration-skip-ink: auto; + color: $gray-dark; +} + +a, +a>svg { + transition: 0.1s cubic-bezier(0.075, 0.82, 0.165, 1); +} + +a:visited { + color: $gray-dark; +} + +.color-link { + text-decoration: none; + color: $teal; + font-family: $sans-serif; + margin-right: 1.5em; +} + +.color-link:visited { + color: $teal; +} + +.color-link:hover { + color: $teal-darker; + + .color-arrow { + fill: $teal-darker; + } +} + +.tag { + margin-right: 0.75em; + margin-bottom: 1em; + line-height: 1.75em; + color: $gray-light; +} + +.tag:visited { + color: $gray-light; +} + +.tag:hover { + color: $gray-medium; +} + +// ARTICLE FORMATTING +time { + margin-right: 1.5em; + color: $gray-light; +} + +hr { + border: 0; + height: 0; + border-bottom: 1px solid $gray-lightest; +} + +ul, +ol { + margin: 1em 0em; + padding-left: 2em; +} + +li { + line-height: 150%; +} + +mark { + background-color: $highlight; +} + +blockquote { + border-left: 4px solid $gray-lightest; + padding-left: 1.3em; + margin-left: 0em; + margin-top: 0em; + + p { + margin-bottom: 0em; + } +} + +cite { + font-size: 0.95em; +} + +pre { + padding: 1em; + background-color: $gray-background; + max-width: 100%; + overflow: scroll; +} + +p code, +kbd { + font-size: 0.95rem; + background: $gray-background; + padding: 0.2em; +} + +code, +pre, +kbd { + font-family: $code; + font-size: 0.95rem; + line-height: 154%; +} + +.table-wrapper { + overflow-x: auto; +} + +table { + max-width: 100%; + border-spacing: 0; + + thead { + background: $gray-background; + } + + th, + td { + padding: 0.5em 1em; + border: 1px double $gray-table-border; + } +} + +// TOP NAV +nav { + padding: 0.25em 1.5em 1em 1.5em; + max-width: 100%; +} + +.site-title { + margin: 1.5em 0em 1em 0em; + text-align: center; + line-height: 1.7em; + + a { + font-family: $serif; + font-size: 1.5em; + text-decoration: none; + margin-top: 0.75em; + } +} + +.nav-menu { + display: flex; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; +} + +.nav-link { + margin-bottom: 0.5em; +} + +.description { + font-style: italic; + color: $gray-medium; + text-align: center; + margin-bottom: 3.7em; + margin-top: -0.75em; +} + +// CONTENT +.content-container { + padding: 0.5em 1.5em 0em 1.5em; + margin: 0em; + max-width: 100%; +} + +.paginator { + flex-shrink: 0; + display: flex; + justify-content: space-between; + align-items: flex-end; + margin-top: 1em; + padding-bottom: 1.5em; + align-items: center; + + .older { + margin-left: 1em; + } + + p { + font-size: 0.95rem; + margin: 0px; + } + + a { + text-decoration: none; + color: $teal; + font-size: 0.95rem; + } +} + +// ARTICLE CONTENT +.article-content { + flex: 1 0 auto; +} + +.canon { + width: 100%; + height: auto; +} + +.footnote-ref { + a { + margin-left: 0.3em; + } + + a::before { + content: "["; + } + + a::after { + content: "]"; + } +} + +.emojify { + font-family: Apple Color Emoji, Segoe UI Emoji, NotoColorEmoji, Segoe UI Symbol, Android Emoji, EmojiSymbols; + font-size: 1.5rem; + vertical-align: middle; +} + +// SHORTCODE CONTENT +.twitter-tweet { + font-family: $sans-serif !important; + border-left: 4px solid $teal !important; + color: $gray-dark !important; + font-size: 1rem !important; + font-style: italic !important; + margin-left: 0em; + padding-left: 1.3em !important; + + p { + font-size: 1.1em; + font-style: normal; + margin-bottom: 1em; + line-height: 155%; + } + + a { + color: $gray-dark !important; + text-decoration: underline !important; + } + + a:hover, + a:focus { + text-decoration: underline !important; + } +} + +.__h_instagram.card { + font-family: $sans-serif !important; + font-size: 1.1em !important; + border: 1px solid $gray-light; + margin-top: 1.2em !important; +} + +// ARTICLE FOOTER +.post-footer { + font-size: 0.95rem; + color: $gray-light; + border-bottom: 1px solid $gray-lightest; + padding-bottom: 1.8em; +} + +.hidden { + visibility: hidden; + border-bottom: 0px solid; +} + +.page-footer { + padding: 1.5em 0em 2em 0em; + font-size: 0.95rem; + color: $gray-light; + + a { + text-decoration: none; + color: $gray-light; + } +} + +.footer-divider { + color: $gray-lightest; + margin-bottom: 1.5em; +} + +// ARCHIVES PAGE +.archives-list { + padding-left: 0em; +} + +.archives-list-item { + display: flex; + margin: 0.5em 0em; +} + +.archives-list-item-date { + width: 60px; + margin-right: 0.25em; + color: $gray-light; +} + +// 404 PAGE +.not-found-title { + margin-bottom: 0em; +} + +// MAIN FOOTER +.footer { + visibility: hidden; + height: 0; +} + +.footer-mobile { + margin-top: 2em; + max-width: 100%; + padding: 0em 1.5em 0.75em 1.5em; + overflow: hidden; + + .footer-mobile-links { + display: flex; + justify-content: center; + } + + .divider-bar { + color: $gray-light; + padding: 0em 0.25em; + } +} + +footer { + text-align: center; + + .social-icons { + margin: 0 0 1.25em -.5em; + } + + .social-icon { + padding: 0.3em 0.5em; + margin: 0.32em 0.1em; + display: inline-block; + height: 2em; + position: relative; + } + + .social-icon>svg:hover { + fill: $gray-medium; + } + + a { + text-decoration: none; + font-size: 0.95rem; + color: $gray-light; + } + + a:visited { + color: $gray-light; + } + + a:hover { + color: $gray-medium; + } +} + +// BREAKPOINTS +@import "partials/_breakpoints"; +@import "custom"; \ No newline at end of file diff --git a/assets/css/partials/_breakpoints.scss b/assets/css/partials/_breakpoints.scss new file mode 100644 index 0000000..0fe3302 --- /dev/null +++ b/assets/css/partials/_breakpoints.scss @@ -0,0 +1,96 @@ +@mixin media($for-tablet-up) { + @media only screen and (min-width: $for-tablet-up) { + @content; + } +} + +@include media(900px) { + // TOP NAV + nav { + position: fixed; + overflow-y: scroll; + height: 100%; + top: 0; + left: 36px; + width: 240px; + padding: 0px; + } + + .site-title { + margin: 3em 0em 1em 0em; + text-align: left; + } + + .nav-menu { + display: flex; + flex-direction: column; + align-items: flex-start; + } + + .nav-link { + margin-bottom: 0.5em; + } + + .description { + text-align: left; + padding: 1.55em 0 0.5em 0; + border-bottom: none; + margin-bottom: 1em; + margin-top: 0em; + } + + .article-content { + margin-top: 1.4em; + } + + // CONTENT + .paginator { + padding-bottom: 2em; + } + + .content-container { + max-width: 680px; + margin-left: 310px; + padding: 0 1.5em 0 0; + height: 100%; + display: flex; + flex-direction: column; + + h1 { + font-size: 1.9em; + border-top: none; + padding-top: 0em; + margin-top: 1.4em; + } + } + + .post-title { + border-top: none; + padding-top: 0em; + margin-top: 0.75em; + } + + // FOOTER + .page-footer { + border-bottom: none; + } + + .footer { + position: relative; + visibility: visible; + margin-top: 1em; + text-align: left; + } + + .footer-mobile { + visibility: hidden; + height: 0em; + padding: 0em; + margin: 0em; + overflow: hidden; + } + + .social-icons { + width: 100%; + } +} \ No newline at end of file diff --git a/assets/css/partials/_fonts.scss b/assets/css/partials/_fonts.scss new file mode 100644 index 0000000..1067615 --- /dev/null +++ b/assets/css/partials/_fonts.scss @@ -0,0 +1,32 @@ +@font-face { + font-family: Noto Sans; + src: url(../fonts/NotoSans-Regular.woff2) format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ + url(../fonts/NotoSans-Regular.woff) format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ + font-weight: 400; + font-display: fallback; + } + +@font-face { + font-family: Noto Sans; + src: url(../fonts/NotoSans-Italic.woff2) format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ + url(../fonts/NotoSans-Italic.woff) format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ + font-weight: 400; + font-style: italic; + font-display: fallback; +} + +@font-face { + font-family: Noto Serif; + src: url(../fonts/NotoSerif-SemiBold.woff2) format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ + url(../fonts/NotoSerif-SemiBold.woff) format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ + font-weight: 600; + font-display: fallback; +} + +@font-face { + font-family: Noto Serif; + src: url(../fonts/NotoSerif-Bold.woff2) format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ + url(../fonts/NotoSerif-Bold.woff) format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ + font-weight: 700; + font-display: fallback; +} \ No newline at end of file diff --git a/assets/css/vendor/normalize.scss b/assets/css/vendor/normalize.scss new file mode 100644 index 0000000..8c331ec --- /dev/null +++ b/assets/css/vendor/normalize.scss @@ -0,0 +1,350 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ + +/* Document + ========================================================================== */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + + html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ + } + + /* Sections + ========================================================================== */ + + /** + * Remove the margin in all browsers. + */ + + body { + margin: 0; + } + + /** + * Render the `main` element consistently in IE. + */ + + main { + display: block; + } + + /** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + + h1 { + font-size: 2em; + margin: 0.67em 0; + } + + /* Grouping content + ========================================================================== */ + + /** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + + hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ + } + + /** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + + pre { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ + } + + /* Text-level semantics + ========================================================================== */ + + /** + * Remove the gray background on active links in IE 10. + */ + + a { + background-color: transparent; + } + + /** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + + abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ + } + + /** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + + b, + strong { + font-weight: bolder; + } + + /** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + + code, + kbd, + samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ + } + + /** + * Add the correct font size in all browsers. + */ + + small { + font-size: 80%; + } + + /** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + + sub, + sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + + sub { + bottom: -0.25em; + } + + sup { + top: -0.5em; + } + + /* Embedded content + ========================================================================== */ + + /** + * Remove the border on images inside links in IE 10. + */ + + img { + border-style: none; + } + + /* Forms + ========================================================================== */ + + /** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + + button, + input, + optgroup, + select, + textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + margin: 0; /* 2 */ + } + + /** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + + button, + input { /* 1 */ + overflow: visible; + } + + /** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + + button, + select { /* 1 */ + text-transform: none; + } + + /** + * Correct the inability to style clickable types in iOS and Safari. + */ + + button, + [type="button"], + [type="reset"], + [type="submit"] { + -webkit-appearance: button; + } + + /** + * Remove the inner border and padding in Firefox. + */ + + button::-moz-focus-inner, + [type="button"]::-moz-focus-inner, + [type="reset"]::-moz-focus-inner, + [type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; + } + + /** + * Restore the focus styles unset by the previous rule. + */ + + button:-moz-focusring, + [type="button"]:-moz-focusring, + [type="reset"]:-moz-focusring, + [type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; + } + + /** + * Correct the padding in Firefox. + */ + + fieldset { + padding: 0.35em 0.75em 0.625em; + } + + /** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + + legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ + } + + /** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + + progress { + vertical-align: baseline; + } + + /** + * Remove the default vertical scrollbar in IE 10+. + */ + + textarea { + overflow: auto; + } + + /** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ + + [type="checkbox"], + [type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ + } + + /** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + + [type="number"]::-webkit-inner-spin-button, + [type="number"]::-webkit-outer-spin-button { + height: auto; + } + + /** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + + [type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ + } + + /** + * Remove the inner padding in Chrome and Safari on macOS. + */ + + [type="search"]::-webkit-search-decoration { + -webkit-appearance: none; + } + + /** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + + ::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ + } + + /* Interactive + ========================================================================== */ + + /* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + + details { + display: block; + } + + /* + * Add the correct display in all browsers. + */ + + summary { + display: list-item; + } + + /* Misc + ========================================================================== */ + + /** + * Add the correct display in IE 10+. + */ + + template { + display: none; + } + + /** + * Add the correct display in IE 10. + */ + + [hidden] { + display: none; + } + \ No newline at end of file diff --git a/assets/css/vendor/syntax.scss b/assets/css/vendor/syntax.scss new file mode 100644 index 0000000..350286e --- /dev/null +++ b/assets/css/vendor/syntax.scss @@ -0,0 +1,59 @@ +/* Background */ .chroma { color: #f8f8f2; background-color: #272822 } +/* Error */ .chroma .err { color: #960050; background-color: #1e0010 } +/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } +/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; width: auto; overflow: auto; display: block; } +/* LineHighlight */ .chroma .hl { display: block; width: 100%;background-color: #ffffcc } +/* LineNumbersTable */ .chroma .lnt { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } +/* LineNumbers */ .chroma .ln { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } +/* Keyword */ .chroma .k { color: #66d9ef } +/* KeywordConstant */ .chroma .kc { color: #66d9ef } +/* KeywordDeclaration */ .chroma .kd { color: #66d9ef } +/* KeywordNamespace */ .chroma .kn { color: #f92672 } +/* KeywordPseudo */ .chroma .kp { color: #66d9ef } +/* KeywordReserved */ .chroma .kr { color: #66d9ef } +/* KeywordType */ .chroma .kt { color: #66d9ef } +/* NameAttribute */ .chroma .na { color: #a6e22e } +/* NameClass */ .chroma .nc { color: #a6e22e } +/* NameConstant */ .chroma .no { color: #66d9ef } +/* NameDecorator */ .chroma .nd { color: #a6e22e } +/* NameException */ .chroma .ne { color: #a6e22e } +/* NameFunction */ .chroma .nf { color: #a6e22e } +/* NameOther */ .chroma .nx { color: #a6e22e } +/* NameTag */ .chroma .nt { color: #f92672 } +/* Literal */ .chroma .l { color: #ae81ff } +/* LiteralDate */ .chroma .ld { color: #e6db74 } +/* LiteralString */ .chroma .s { color: #e6db74 } +/* LiteralStringAffix */ .chroma .sa { color: #e6db74 } +/* LiteralStringBacktick */ .chroma .sb { color: #e6db74 } +/* LiteralStringChar */ .chroma .sc { color: #e6db74 } +/* LiteralStringDelimiter */ .chroma .dl { color: #e6db74 } +/* LiteralStringDoc */ .chroma .sd { color: #e6db74 } +/* LiteralStringDouble */ .chroma .s2 { color: #e6db74 } +/* LiteralStringEscape */ .chroma .se { color: #ae81ff } +/* LiteralStringHeredoc */ .chroma .sh { color: #e6db74 } +/* LiteralStringInterpol */ .chroma .si { color: #e6db74 } +/* LiteralStringOther */ .chroma .sx { color: #e6db74 } +/* LiteralStringRegex */ .chroma .sr { color: #e6db74 } +/* LiteralStringSingle */ .chroma .s1 { color: #e6db74 } +/* LiteralStringSymbol */ .chroma .ss { color: #e6db74 } +/* LiteralNumber */ .chroma .m { color: #ae81ff } +/* LiteralNumberBin */ .chroma .mb { color: #ae81ff } +/* LiteralNumberFloat */ .chroma .mf { color: #ae81ff } +/* LiteralNumberHex */ .chroma .mh { color: #ae81ff } +/* LiteralNumberInteger */ .chroma .mi { color: #ae81ff } +/* LiteralNumberIntegerLong */ .chroma .il { color: #ae81ff } +/* LiteralNumberOct */ .chroma .mo { color: #ae81ff } +/* Operator */ .chroma .o { color: #f92672 } +/* OperatorWord */ .chroma .ow { color: #f92672 } +/* Comment */ .chroma .c { color: #75715e } +/* CommentHashbang */ .chroma .ch { color: #75715e } +/* CommentMultiline */ .chroma .cm { color: #75715e } +/* CommentSingle */ .chroma .c1 { color: #75715e } +/* CommentSpecial */ .chroma .cs { color: #75715e } +/* CommentPreproc */ .chroma .cp { color: #75715e } +/* CommentPreprocFile */ .chroma .cpf { color: #75715e } +/* GenericDeleted */ .chroma .gd { color: #f92672 } +/* GenericEmph */ .chroma .ge { font-style: italic } +/* GenericInserted */ .chroma .gi { color: #a6e22e } +/* GenericStrong */ .chroma .gs { font-weight: bold } +/* GenericSubheading */ .chroma .gu { color: #75715e } diff --git a/assets/js/main.js b/assets/js/main.js new file mode 100644 index 0000000..bc6ab12 --- /dev/null +++ b/assets/js/main.js @@ -0,0 +1,13 @@ +window.onload = wrapTable(); + +// Wrap tables in a div so that they scroll responsively. +function wrapTable() { + const tables = document.querySelectorAll('table'); + tables.forEach((table) => { + const tableWrapper = document.createElement('div'); + tableWrapper.className = 'table-wrapper'; + table.parentElement.replaceChild(tableWrapper, table); + tableWrapper.appendChild(table); + }); + }; + diff --git a/exampleSite/archetypes/default.md b/exampleSite/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/exampleSite/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/exampleSite/config.toml b/exampleSite/config.toml new file mode 100644 index 0000000..8323795 --- /dev/null +++ b/exampleSite/config.toml @@ -0,0 +1,95 @@ +baseURL = "https://example.com" +languageCode = "en-us" +title = "Noteworthy" +theme = "noteworthy" +enableRobotsTXT = true +paginate = 4 # Set the number of posts to show before overflowing to the next page. +summaryLength = 10 # Configure how long the post summary should be on the homepage. +disableKinds = ["taxonomyTerm"] + +[author] + name = "kimcc" + +[params] + math = true + # Blog description at the top of the homepage. Supports markdown. + description = "Noteworthy is a minimalist Hugo theme, perfect for writers and bloggers." + + # Add links to your accounts. Remove the ones you don't want to include. + # Main + email = "" + facebook = "" + twitter = "" + instagram = "" + tumblr = "" + reddit = "" + pinterest = "" + youtube = "" + weibo = "" + vk = "" + linkedin = "" + + # Writing + medium = "" + blogger = "" + wordpress = "" + + # Creative & Visual + dribbble = "" + behance = "" + deviantart = "" + flickr = "" + + # Programming + github = "" + stackoverflow = "" + gitlab = "" + codepen = "" + +# Add your Disqus shortname here. +disqusShortname = "" + +# Add your Google Analytics identifier: UA-XXXXXXXX-X +googleAnalytics = "" + +# Menu links along the sidebar navigation. +[[menu.main]] + identifier = "about" + name = "About" + url = "/about/" + weight = 1 # Weight is an integer used to sort the menu items. The sorting goes from smallest to largest numbers. If weight is not defined for each menu entry, Hugo will sort the entries alphabetically. + +[[menu.main]] + identifier = "tags" + name = "Tags" + url = "/tags/" + weight = 2 + +[[menu.main]] + name = "Archives" + identifier = "archives" + url = "/archives/" + weight = 3 + +# Privacy configurations: https://gohugo.io/about/hugo-and-gdpr/ +[privacy] + [privacy.disqus] + disable = false + [privacy.googleAnalytics] + anonymizeIP = true + disable = false + respectDoNotTrack = false + useSessionStorage = false + [privacy.instagram] + disable = false + simple = false + [privacy.twitter] + disable = false + enableDNT = false + simple = false + [privacy.vimeo] + disable = false + simple = false + [privacy.youtube] + disable = false + privacyEnhanced = true \ No newline at end of file diff --git a/exampleSite/content/about.md b/exampleSite/content/about.md new file mode 100644 index 0000000..ce6e637 --- /dev/null +++ b/exampleSite/content/about.md @@ -0,0 +1,24 @@ +--- +date: 2019-05-28 +type: section +title: "About" +--- + +Written in Go, Hugo is an open source static site generator available under the [Apache License 2.0](https://github.com/gohugoio/hugo/blob/master/LICENSE). Hugo supports TOML, YAML, and JSON data file types, Markdown and HTML content files and uses shortcodes to add rich content. Other notable features are taxonomies, multilingual mode, image processing, custom output formats, HTML/CSS/JS minification and support for Sass SCSS workflows. + +Hugo makes use of a variety of open source projects including: + +* [Blackfriday](https://github.com/russross/blackfriday) +* [Chroma](https://github.com/alecthomas/chroma) +* [Smartcrop](https://github.com/muesli/smartcrop) +* [Cobra](https://github.com/spf13/cobra) +* [Viper](https://github.com/spf13/viper) + +Hugo is ideal for blogs, corporate websites, creative portfolios, online magazines, single page applications or even a website with thousands of pages. + +Hugo is for people who want to hand code their own website without worrying about setting up complicated runtimes, dependencies and databases. + +Websites built with Hugo are extremelly fast, secure and can be deployed anywhere including, AWS, GitHub Pages, Heroku, Netlify and any other hosting provider. + +Learn more and contribute on [GitHub](https://github.com/gohugoio). + diff --git a/exampleSite/content/archives.md b/exampleSite/content/archives.md new file mode 100644 index 0000000..98a1ee9 --- /dev/null +++ b/exampleSite/content/archives.md @@ -0,0 +1,5 @@ +--- +date: 2019-05-28 +type: section +layout: "archives" +--- \ No newline at end of file diff --git a/exampleSite/content/posts/emoji-support.md b/exampleSite/content/posts/emoji-support.md new file mode 100755 index 0000000..dc9025b --- /dev/null +++ b/exampleSite/content/posts/emoji-support.md @@ -0,0 +1,30 @@ +--- +author: "Hugo Authors" +title: "Emoji Support" +date: "2019-12-03" +description: "Guide to emoji usage in Hugo" +tags: [ + "emoji", +] +--- +Emoji can be enabled in a Hugo project in a number of ways. + +The [`emojify`](https://gohugo.io/functions/emojify/) function can be called directly in templates or [Inline Shortcodes](https://gohugo.io/templates/shortcode-templates/#inline-shortcodes). + +To enable emoji globally, set `enableEmoji` to `true` in your siteβs [configuration](https://gohugo.io/getting-started/configuration/) and then you can type emoji shorthand codes directly in content files; e.g. + + +
π :see_no_evil:
π :hear_no_evil:
π :speak_no_evil:
Test
+ + +``` +#### Code block indented with four spaces + + + + + +Test
+ + + +#### Code block with Hugo's internal highlight shortcode +{{< highlight html >}} + + + + +Test
+ + +{{< /highlight >}} + +## List Types + +#### Ordered List + +1. First item +2. Second item +3. Third item + +#### Unordered List + +* List item +* Another item +* And another item + +#### Nested list + +* Item +1. First Sub-item +2. Second Sub-item + +## Other Elements β abbr, sub, sup, kbd, mark + +GIF is a bitmap image format. + +H2O + +Xn + Yn = Zn + +Press CTRL+ALT+Delete to end the session. + +Most salamanders are nocturnal, and hunt for insects, worms, and other small creatures. + diff --git a/exampleSite/content/posts/math-typesetting.mmark b/exampleSite/content/posts/math-typesetting.mmark new file mode 100755 index 0000000..471a858 --- /dev/null +++ b/exampleSite/content/posts/math-typesetting.mmark @@ -0,0 +1,38 @@ +--- +author: Hugo Authors +title: Math Typesetting +date: 2019-12-12 +description: A brief guide to setup KaTeX +markup: mmark +type: "post" +--- + +Mathematical notation in a Hugo project can be enabled by using third party JavaScript libraries. + +In this example we will be using [KaTeX](https://katex.org/) + +- Create a partial under `/layouts/partials/math.html` +- Within this partial reference the [Auto-render Extension](https://katex.org/docs/autorender.html) or host these scripts locally. +- Include the partial in your templates like so: + +``` +{{ if or .Params.math .Site.Params.math }} +{{ partial "math.html" . }} +{{ end }} +``` +- To enable KaTex globally set the parameter `math` to `true` in a project's configuration +- To enable KaTex on a per page basis include the parameter `math: true` in content files. + +**Note:** Use the online reference of [Supported TeX Functions](https://katex.org/docs/supported.html) + + +### Examples + +Inline math: $$ \varphi = \dfrac{1+\sqrt5}{2}= 1.6180339887β¦ $$ + +Block math: + +$$ + \varphi = 1+\frac{1} {1+\frac{1} {1+\frac{1} {1+\cdots} } } +$$ + diff --git a/exampleSite/content/posts/placeholder-text.md b/exampleSite/content/posts/placeholder-text.md new file mode 100755 index 0000000..16769e3 --- /dev/null +++ b/exampleSite/content/posts/placeholder-text.md @@ -0,0 +1,59 @@ +--- +author: "Hugo Authors" +title: "Placeholder Text" +date: "2019-12-17" +description: "Lorem Ipsum Dolor Si Amet" +tags: [ + "markdown", + "text", +] +type: "post" +--- + +Lorem est tota propiore conpellat pectoribus de pectora summo. +Redit teque digerit hominumque toris verebor lumina non cervice +subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc +caluere tempus inhospita parcite confusaque translucet patri vestro qui optatis +lumine cognoscere flos nubis! Fronde ipsamque patulos Dryopen deorum. + +1. Exierant elisi ambit vivere dedere +2. Duce pollice +3. Eris modo +4. Spargitque ferrea quos palude + +Rursus nulli murmur; hastile inridet ut ab gravi sententia! Nomine potitus +silentia flumen, sustinet placuit petis in dilapsa erat sunt. Atria +tractus malis. + +1. Comas hunc haec pietate fetum procerum dixit +2. Post torum vates letum Tiresia +3. Flumen querellas +4. Arcanaque montibus omnes +5. Quidem et + +# Vagus elidunt + + + +[The Van de Graaf Canon](https://en.wikipedia.org/wiki/Canons_of_page_construction#Van_de_Graaf_canon) + +## Mane refeci capiebant unda mulcebat + +Victa caducifer, malo vulnere contra +dicere aurato, ludit regale, voca! Retorsit colit est profanae esse virescere +furit nec; iaculi matertera et visa est, viribus. Divesque creatis, tecta novat collumque vulnus est, parvas. **Faces illo pepulere** tempus adest. Tendit flamma, ab opes virum sustinet, sidus sequendo urbis. + +Iubar proles corpore raptos vero auctor imperium; sed et huic: manus caeli +Lelegas tu lux. Verbis obstitit intus oblectamina fixis linguisque ausus sperare +Echionides cornuaque tenent clausit possit. Omnia putatur. Praeteritae refert +ausus; ferebant e primus lora nutat, vici quae mea ipse. Et iter nil spectatae +vulnus haerentia iuste et exercebat, sui et. + +Eurytus Hector, materna ipsumque ut Politen, nec, nate, ignari, vernum cohaesit sequitur. Vel **mitis temploque** vocatus, inque alis, *oculos nomen* non silvis corpore coniunx ne displicet illa. Crescunt non unus, vidit visa quantum inmiti flumina mortis facto sic: undique a alios vincula sunt iactata abdita! Suspenderat ego fuit tendit: luna, ante urbem +Propoetides **parte**. + +{{< css.inline >}} + +{{< /css.inline >}} \ No newline at end of file diff --git a/exampleSite/content/posts/rich-content.md b/exampleSite/content/posts/rich-content.md new file mode 100755 index 0000000..5419f70 --- /dev/null +++ b/exampleSite/content/posts/rich-content.md @@ -0,0 +1,43 @@ +--- +author: "Hugo Authors" +title: "Rich Content" +date: "2020-01-02" +description: "A brief description of Hugo Shortcodes" +tags: [ + "shortcodes", + "privacy", +] +type: "post" +--- + +Hugo ships with several [Built-in Shortcodes](https://gohugo.io/content-management/shortcodes/#use-hugo-s-built-in-shortcodes) for rich content, along with a [Privacy Config](https://gohugo.io/about/hugo-and-gdpr/) and a set of Simple Shortcodes that enable static and no-JS versions of various social media embeds. + +--- + +## Instagram Simple Shortcode + +{{< instagram_simple BGvuInzyFAe hidecaption >}} + +-Z%R3+)Q^itl1AHCfee{bFJO6PyN27jo8zkC{` z4hVM3b5moE9!8>gp+d}DCf iwXfgR0X6Y(>s49q+$S&CA;Tg> zpBPG5d0`Nn);fGfrM-5N^#>sbAreK;Nw~Zu?Iz0iI1cms 4m+q2I*TSeJ7e`9r5VerLF6SvYsTf3?`7tMCq#7;-`AxNv(2#3zPe$p z&|hUUGbspaZWgrMEiSjbz?6HyzLZ-ob&fQtrzZJnlTDr>;q*VxCcY?GFLkPlUCj%6 z?M5Z#I22kLdo7i~U$mW(JaQ}Of{2;97+{|raXQ* cSa_BD_^MINelYJZTl8;7<>FcuH~7?h za`+v#K!)>I2)#YkThAl#xL_YKo0|*LJcM&*XSbCJHF=anHH)}Do*l5Dhwln(zhEwl zztHYSul97Toj-@>08U9lA$ZgOpzc&)Xo$;)qIS+_(`Enc!}OcfgHWX%&O^K>u3fvY zvihu-*eDmyIgc-Sl3nLB4^DcrtdXT`!<><#9Lb{FQG$%2+al7^%s~}3YzD3;0z>J{ ziaB|fa}ay5kLF%|swhas3$ehKtwEfWL~mHjc=6DCS*G}8k88UKUP+>gQkUkDa&H~f ziDwvj<-Vl @7G%Cds`)JwbybcA)7m;YD?B<5`_oqnq3o!lTJVu=zq cvO6lS41b(y+d&F?8coP>!v0{V@auSK*Bp6`~W_ zp5I(+6pxc(mx@(zbt4~!OC4BS%Mq)hV-nnRQl%er`_U(Kl2Gf&_2 6Y7;;@J9V-tghL zQ7Z7q--#tQi(SWbtg O pEBHt_qTGQ(JLcvg_34uw+tS~7%6o5!arF(*)~*cF5?ksV`A`NWvp=>Nxv>VY z-#&}^9Lc?S-X^x$S7OGRT}C3sN+)REuKCQRbbu$b?`BM-I*Rsjg$D#J*W|sBR4(cb zV~9e>rs@G$L@^M|AxJWwURPWuxzf^^Y@NZNL^L_7Vdf0ED*&R3+Y&QBiFe%{Ak)!i zh|XT|vgFl^zhz$X{DdamF*{6>F -_-Pu3m~bAi3HlQ703r9ddn7R*Zl4RuCXgZA!HV zNUIP0F5y?tmpa33tHeBk%JNq=@wLnXiz!$=1=|>^?llj %3+``J}fc27x4f&?(2G#Ja6wy@7R1JnS7eTb2-{|^sQD_2nE}A%*QjJ%=ya0 zbaJ%YGSD{4_9sk=hVm0G36D#G06Kj%C6Ey9$8ejfSb1qycf8Q2=;N71oPnmWo_FYc zVNvHPo6PBR@%5h>m1mG;aZthKvEP-u7mzcb%M}_l&za@*Ss+{k3af^QZ@*CI2Bn&I zh4u3{d4C2iN&VGrOQX0}PdJ$=@hd4@QHBXpUzxYgaFFILiNzNlM~+RK=~FI2BHxR7 zTYK@?+RTzZ0GEz5l5BG7tMs& 5RxYp(NT$5wm=(FZo@iJ4c6 z4N{hU@dbwM5 6*RWRffg^(UOUK_D^xygo5>Eb0y}6j#yY#;$H>`(`cv;`kd)c z`7vJtEc`_tWY_H}78%)Ii)UwY!Kf_1)%2iPqT(%O_wA{Ed-krK(etyhnpiJio_YhB z>s&-Oa2-IFG7%F05+F_}1%*vKv&l9foBDnQ6xUO-)shqYfo>Q}H}4g6e}6`Usd>iW z(Wcw T8II!A4BQ2WG4kwdDW`{|IY5i!fb z#D0hMepiW3^S0h%9!f(`qv;%b^EsC1Q53^hVZuEe-B)4 ^bc^1>sSW!LKCab-8O>@`VgL&QJwyd~k^vw&vgj85m2l-Q zA3(-ms`86D 68~=Ek)+hg{3jNMk{8lH4o~)$LfwCo zaz8z+aY1EIIW#qRj1wY$*c)!GOYGF6zld<~4owO#EXC^CbI>2RM+3b!wE-l#s8Ih? zhE^_ 7#t;u66 ySvF%nwDtus=qbwZ48M{Zvj^_{`KN;5ie9 zSGzbZ`1vIBBO&yf2>mrtYf0$IGup*HxXX7GD?QazK+7k0_C4(j dC=BQvYT~#MNWI1neT_5NvJ0EoB&+SBqYR>TewN!?UH;w1 zP`KukYy R<~U0#Bx88nboK6__5PjGIg*3LwJHyIU*n( zQ}D_19hJ*n+@t#>=ut0QRZK|TUfz=JX2FdGzC<^hIdPwPf7}<|V@xy;T@d imdK}-Pva6 qK)9F0P;svj1Zg*l)y2#GB5o>=cB%2&FTC7D28~6go zJkAB#-sh8pjV!b%=oUMKm>~)D3al>Lzo06_EMi)8`7gJ39VsIu3-t=ikWGg(iTXxi zkrhbYOlg &o>q0vg=CjwR1V_|7q&YQ92>cA{h00QINzEG9TH*X zzPDy}mt_~gB`n-7!LYH%_LtkI5+OlC>2?F^%-dJFEVb`e3#OTzLI$uRKGyf#AL^{0P2r-e0nqlK ZuIWBM_tJ z`pW`e7W0-Odgc1g2C}4O<{{F?%T4%YKAw;&zXI3$bgbawee&&tL!ly1RWgNO%~95m zM1x%t_JG6NNKPMe)J`dP0TY=^ngv`{$|v~DCX&m{IAj-iu9%O^(g8wlWS d#`7-8@B8mIG6OGt#y0n!2K$(+l3F&>qlN_$XvYv z!!k=3c#$HN9TbkM7Y?PFJL&vNDFQZQuG`~3LPjmmh%xyE>+YK_QZYqQO#ueEVFzrn z*>^KP#H&-8rZY6k@-|FECBz)y%C90&M}K|k*-35nO*oHxlRq_|2Hksp(k64>_8^mD zHn@0wNKF; DrnLgmdxZ_|12 -)j96jT2$H@`N42% zSeW&iu(T&>oaYHdTlr@_>m0tZeEOHm)=$NQXcm2$J~Q-`XuK9OS4biMq2XA~f`J6G z$jv{lU2*9w#}AVeSW=6)1WavXSkdLx9>bMWx84=M<^;qFnN$0ne|s!?gOH{?vO&nW zjL^YOPpcCuBxg_r-m+CTTryiyyMir^WjctGB_kX%@F}+lm@^$BAiQI#QATd)0gT|4 zfimbz&1b#30*HQRAf50X{kFqi+IBo#R6a|ksEmM7PFS8TgeV}fc#y=leTEIk-HqDs zfn ZpcH@dOoWE8At+;BF(sJWW-0 zTd^e$?^jjTuW)aDPU5E@OU+cvKg{uUH*mZtD_Ku;P@}>g7xIe?tE#b-u8T+%87r-j z2I8Q{*}|0P+yzVKg>{Xm5^qtq)_j-vSpSVTc-crldh^mWJ4pN3CZ;kxrMA9eWK8Na z6HDq_U?$-zLD&|tg;T{u+;@9fYdsrATLjk8tuV3Ejq^Ksv! _U>9*m&9uTPqtb zRK`AAnaBf@7s~1$_V)*@&{p*8KvG2JXM6B5-&AiA%X_FS%Z?FEwD z#k3zgtw c|e_--terG4{xEg#gnW3&M N@&-KukuM`6!<34ql+&9;M%_fRab| z$d?mCiqoY{arXR0ILVS;J`r>Z>ykTJ%zClOyiWQe*r+|}k>q$KLcx{UnRG8$zx{Bm za#TJZ8TcaY!NB=h)0OvLHp@Gaj@yf&lujYWzhrQXT2rbg+asIK>Y6xH!sxl4NiyHt z3vi1NeJ1)Kd-o;V&(gK4i>52Br#hyYzN;cd2pLR<%p)*M61iKjG)7mUeiGI5ngQRn z6BqZkG|;*cCyXy7`l5%TJ2=_ztjbRh^X%b+4=-?ru5WC@Q|sI*y22ENet=SF($)K| zEO 5(2b@NyFUTf6mQ7{*-o%pj6U*^FiG`N#fmos8{ FZa52lBZI*!4a}W))f|5y@pKp)KZX1DN{{p?}`L(nklTB zg;pMh&gZ92iUf^@G{rSu0nOMv4}?snCPcFf#I^FIIy-2YWGRLng%vSv=n4JOY@7W7 zqe=<_SVq$+q={oOgD6Klvd{L2TEwhdxRrhHERk!s0iC?VMZDGidxU $n^C{^k-#W6f(g K(gS44BN6MG|}-@748sbVavqs!_N~1bf&eo4@@B3oz1L2U?eVU@(h@lh i{O7=6OXphNnq7Q3DxJp_T@~`d(cK%TI*20nO8X-)te$iD=k}_*HTqG^}pp!)dyG z$WOcJ@PgCBl;e7!(Q^C-df+qX>_kd(Lz98S1bcnt#vAY4%C&kpGL^{OR$ou}@yM3L zD}n9}3m(!HaN$OtJ^i?NvaRZ2e0{YZT=*WW4WNv_;)do6TvVQ}O!n|VeV~R-eQkfu zt50a*fv$|g&R!H94f>w@^j{!)J+`GM>sB@Oa3ZL|FTI9KtSoo-n4b3?CF0G(Q$5~@ zGX;55$NLp0B}vT%Spu(h^!m8)l#I_gEh4PP_5-cECr8)P^e #tN_}@ zRE8_x6SO#s?4ESKA$U}+m0|A_yQ)638d;z&g-LK)|EF)y p55!4^_nFHVku*j4<>i>wHWxL;(z(voz8n!&{WSAq68X*+K4Q?Fr`_@ z@;xf7H^VVMB&Q2``t>N}GD10^2tYhI+8R|nnZDza*sScD2cgN5U1Bh0yAeELr&6vH zIF=YbBPovmh2f+b_XQq4)>~C7JTkcemcEj_$s*|^GVO2~rf^Drrx)y$55CrVx^V{8 zU_6{PBXzLule}5n3t>yqhH&p734L*tgh?G)esDTy+r3z4B_MaqG3R~h60FUEgT1Fb z7cSwAnALPvqyL!ih3FT~&x6{;SRLxW6}d4cIY45{GdM0P6eI45*}$H1idm<%M;4?a ze({j-BI!W&o_$T57QCE`0ubBQ?@Engpd=r*A>|5(p0^95PD?FQv0X~qMW)G(9LfiI z-BgeqjDLj_zoFahd?j>LRpH@UwV2sOvBI-E9~lj2VPq~HRuCKvtBx{`n@e`#hK)QC z%OWjJNy}@~RMp>v?|Tcclk`7THXIu*o0~Q(a$_A8do@QVz_W=mu!m83)8?tlmG6qX zTVZ?icGHO4v7CNyOJjwCNaIDw^}+%xcukCxJozEsg+V 3qr=d1XQVnAK4wDW_%7- zUqSrRMkTip(cm9L?fPRI31Xe~3=u*^wmDl~(zBnMXIYIKg>Tl6?WmpwyGZVP^piiq z4{j|YRe=0p_K#tFdY<&PLt_zpFr8J7Vxhn@EIxe;iOD@}pa@@P;;D#JlE#X@Bz;`J zY{k%$@r7nTH}u1ZBvLfG;frZ9nKqvK{#t15grX#qzRgsPrpb$G3lkH(<#z4|oI9$m zW*XW{fzR97+DTh0o& GmofBji;Ow~_ttI^61@w?$3`G~9>!dOH)v4UdPi8?EzZ z8(NlX_8&$(@2OsDoj^D)q^mx4qm(O9ZmczVDPm8%!M;Yhjp@isn6Q+NkCF2$R=vOx zO?L<7ldgwR@Yhsw8{IY1o64Jo3H#wCboN$z7p;6Bw6}=Jg%>P=h$%$vG7;y+u`H&d zk)Q?1eDIH-{NI2ZRc6v2;ZB|AIKSuS*Yc#v8`fvZoYa5NN%8D(W3#g}x>WQ9W^}9` zbQEVLqQ1m&dOwr5AJ%8;qzbC6EM}aqvTC|~4yy$hxyzhPC*t+i9~L~fGqXE~ Y4gZ3gJ;nm3cTsKdL zN-Nll&9*T*rp|G?CxzafV{JKyT4La_&y}D%WDVir`>;bzk=hq4$tOy_Zi05UMe#mk z4Q_8@U|hm_y|9t|qN7pIaXho}Bz2Fsmg|FRXs>J@aK4{ {b@lpoCk}_o&v{7|ecWqb QJ~V&i48~FOz6kNwIR{#+8uRo7-og`+^$Y zW>bAj0(w$i!-Q7o=->1dH0iesc?;<_^PgY9gdfSEHfpljss^OSMy^{4UkCDWkG)kD zCawqlh6r=Qy>(g8ePTS86bGx+L!TM8-NN5`5JFN!oXf4(8^V1xQe!_;&dPskr+5yy z1>gjE#IZ{Sspdd#9_@I!S!gCKqE@CFIRUqPO>2u#CK2&{s~O#6&06%&x{ zlzb;{X71*uoop?3w`Adlvabb9X55U%OjyZLYo|YxHM0MkE!~tQgN-NpXFo0~WPi3| z#o^ =!rWgNe_wY?VS{pyKRy< zuSby{>YiVH7@!3nEkYt?VYal>ujUP?4R`k`V8I sg+I)xm_ zhLS-Nh|6Zh=VS`CPN7!~LPB<{tMM)%AqLRX__nWNFAm%cT%`D~_$vx0!kN7x5bm*J zTWJX=L5ESR )Cb zb+!HfA7$?u*3`DHe=D*iETsfcR5}PKQbd|`rHV8Wr56DKAqhxt0Yp$hniT0pQ0Y}5 z^bSFKhd?OOLJ7qXLJ93Zv-aL+yU$tYJ=c3(@dFq#=NK7tl;`<9_q}e)#qDxT|64fT z_f0e6?CA`JRJoA*Jo1n7;j~L^XvVs$zJHQV;jWj?X8~i5?2+!$&C9g;pnAIV&B6*F z;X%U7pz3-n%C|Df%UskT%E5X!GZylv3%7(Hu_*B=M8MZ|%!|zZLVsp6TYR{+BK`3F zL6^9=cPSf(DXT*C9_3B)%VZ(&`b)C8k>@nyVo-y8S(5$KW}lP{=K ur(vg<>a7Wrhr{T1BD zA(Gq`ADuq-vSoadP+{f29bfsHE`}Ix46#h1cuXhmwR6LYi7!Y6h7H46yBOzvNC>jD z%sza4t8q0e?6H4nkhqkQ*Fv#hS#sJ$q}=Ts!Sr0@v;kI^aI0hy7I6)46GKCRAQs9D zc(vY+k4&12R3~cn>hWrOyyefXG+VSzMd`&l>FcLS$Sf9=c3m(^ ZB- z>|~vNPmS1l)bwGF{D{vp`AZCLH;LVNMWeE>di?7g@$;!o>trgJ(ZmbkIhf~uQ>IrS zwc>f~;Van%J$gT=7_abs=>ad7UK5eC-GPf~HSH=X@>3mg=klA7F`8S=r97eS#X5%>`nAJ zV9Ky@)?gaXuR)40uGc}LPWd2hQ4|dWNNTRPbpr`z-gb7K26+R=lG0H*PW$IxGO29^ zJsFq!&Xa;Kn)+f2QD|x?d`OrGipFcI^xNsqj3+iq#Cr4TFB9fGf%(4jvFUhmpXkb` zeTkOo0)Eub?Jz7WE9)tiXancQ>n34jUQN+v{Km5n8dL6eo#C1qe9R?wzoMBo-pg%< z@?0%6OP3Sf1mJ)+gmLe_lC*4*mVDvkZh12Msl7bb$-PFgGlb%yZklz9IwC2@W-`XZ z >JT1b*% z!HJrOTi8NJRniLj5FRV#PMqD9+&o+M4F+_aXyahwi!DTly*_$cN75zQv?!GY55JJ2 z8MMk$6fy2zDl!oA*{vbB{0{MbG!ac#V!W9<=P`74Gdnu^-MLd~O%c!1xA?S_>8vGOvuMG0gnar~lcV3~{&v$TwkbX$ zH#w&PSG4l41hDtj0JeeZJHFci#v7v!!Wz|e0CW!FU4G!_{s^p_ijK*|pko?RCylB< z+|%xRcIK0<1I2b4 h5 Lsh~AQdOTj z>&Co}eMtji%3fUwawo$o&3eSli|NuPOwjeENI=yWeBa(wK~s{gt-Qzb{V{|``_l}M zxSa8^=i9|xn*Bj~W<3g0hZ?Wv49n7B;#ZPc`y$<*&$-*cAo^1}=puxJVCClA9x}Vj z!FbE`>}y)&xUFpo3|Yx_-dpvu^mhwYevgLzIz75_1kt{&f96uVyN3fPaIyG?$NAB^ zH}+wh5stEKzr$Rso1`sqCYNX1anf4mH|^ag*w(^-flx<`=il-~+i8Q^ju^XEVX<#s z3tHyWv%kAxM`b+R%LF_g+Ppve|FEcES1g7Vg2u|fPz9&YmXr$pmY|nbXIJRn;4gFd z(FA~KyDfG8NqR-*6I4ZndLB>O_zHsfmm&$SO1q8mV{}@P#C2GsSYDrun0ip$WTXlF zpAp_1I@)Yyew*}UX%~tXUC0NnhcB4UXS&Kj%ZpH}Xy*=qmi7USLcU>N7TEf1uPGbc z_{YMfNd|tJt;Qus5zr3?(d_p-t&f|`Ww>?v-9dQVSp{J4e;#6aDMM75Y4)%;3xAB; zk!>Z?I&(dx1!76 uX|et1 zUH|PT6ay@tk3RiO2Qj|HIJP+Xs97*R((?cKBlglN5(QkP`a=CkzpqBV$gBwwY(Q`G z&kJeaECraR-PJEq*?=lV&RBuIqwPZLyGtW)|F|@aj9{vgo@Fr?hoU}WdXr+~g|?GC z>|}B6^lM$b85$|#uytx?(<$WfA%0|`Bdo4>56~cpFT0np_sj?=Wtne~z$~P%kId#y zz|*8X9E@sR*JfY&W!TZHLVk#SmoU5FE=mg!QRqd;jVk4^tDEJQJ=*X0Qw021|Gu!L z+?|^wi*CYF@*7mj%-r=?nb2nzyZF~TngKtRkVC*~n0E$X!IhuM1DSI=9H}W<1D;5c zVH*E~Hcsc$$&3@j8$dxs)n3XViEp@<<~DA)_D%?Hu|DU&e}-3>Bau0x0Hd+{ma+at z)%vr64_EFClX6-)4*~k?PRfj3_z&w|ip$qNlJqV_fpYknyyCbt2}d(PwL&hAq`e{P zwmv#q GLE*k9xd}aAMi!w45gX0I>X7|=cazN$8d-kKbyMQ~r(2R4Bz*<=+tGbZ)P}uN! z3g#yTx3|Sz|Kiy!+TMQyB6_8F$FhlWGh;8Q;6P4T$h`?LHJ=%?-#c<9U&}bzuvNb6 zx5zYSfb=mBu#BAAIBw^a( hWO?5s{{F#nA84oZW5-9K5= z_D}AY-Jj-UcYQY|G5uN*N9zv|YUu35mJtF#{c8yMANGt;@}@qKnGW4h`ZK*fNck;t z_7~rHHX=d5c-)%xtJ1)Fm-e%T=o6BWMw 5n!lYRY&qS#A;lt5+d{z(X4WJ%B$I7rZsAPZt=Q zZn=RE{EpCb@l;f;SzgdDsyF2Q;NBRK48t9JpC2DN)}EJmKQGFzr@!0;_-to?iImDW zp@**1P8S$7nPSooEKSS4<#<=i14zi)e$$!ne3=N=iI>*ZP|t- n~_ZE)XmnoJ%Nq#KVAg<4cWBYf@y@Xqc&*slQHvmKO042xpw~X zNReQ7p9o-b@}UB_4uCUHa`3X;GedADZ+DTm@B4Gk{ZZ!KX5;kL@#+gCHETS8{KmuM z )eM{LAbEO;Z ^bSM4Mj}cG^6L$nvP76!=3W v6oZkDv2%LG1!h?x!SFd(U&He!PcKT`q(ZoX6zF%f`Ii&HPUY)_(RS zdk=l-q*GkVn5TE5%Jj_4TymzmseQ*J7H?UEI%-Z~&KFQ0qk?UXnM=j?jgFqJgt%a$ zh*~nZ_Iu{9^VCi-HEspl*Tg4(bRx#B2-UdKfMsf`F6JX3OCNJeIvR)PSnaF^dReee z?dE$hz34xhk#y0N>$ {gqPnJK2wDPK+2tnVf3Po9#~$3ZVSzJ-?`289XV zbKlUv$mJ$&7K?z~&$U5!CkE~m==-kk#Z>s?`y?36kR6HF6y2+lYwE`MCIqD6I&cf= zHSfollDREDTq-8iOZLQ%->ZcBP6#o%W9(T{cvM#^zeFL`PNwoG3shOXzLttO7QrA7 zB&|)*%$-fe5j-L;F=^xP_pp@)#);qA3W8a^bD>}J)sNO=&83mOL};YQQEI`&w$#cf zTB@_?xzL0?zOo+-s}WQizr|sCW_Gf!p8!uxTB#o>G8P|gQk@zRvdUq_7j#uVOFq-- z900VGIIGQHxBOu|5sv89-a{=}qDewO-&H2p>-|i8HY=^+v%uueSOP${QS0!MO@Igd z_ge1F7XWLD^v-{GRBc+1mRLG_9mzmG#r1kSt7h$cu!A-U-1mP8>*e&C6SY9)?jDD# z=B#MkzgN^PZ|`>>AL)uePO=*#^5?IdQ8C@Uo94gjv{v8MnGFEpv3>;9iCx$F^DYf+ zhJTzXyj^WARjo4{e8F4$)w{ieb{zX4_&jT&nbHlifxMjb 8CdNA!Iydn;FkAma@a+87lJe7x)(xWlCi>>Fu$kf;g1H9*_aB~4Hb7nXTiM|8# zoh=BRW}%+mTk%H~_6_*$m0L$z>{jH+7L7iP`$SR;irW$Y@(Zb(dksHSo#Lou>^5&N zFyqw8V!dhT=*GW0bK|+g gA$V-fw@4vBT$pv5v96L0zVDC` zaF*(TB&~cuJq4V<^$oR=1IH8be&FW=06Vx#QaM5sI^ZO2Z4+Xq_Bf@qQ0;0K=Ww|y z3y{ut2@ZJuWIPD#er3AP$!(%9YAVFbDuOOza;4VFOuua0z^D@wiF-Cnm|^DSuhY9# z0>kTiWxhh;0PUZzsQD=yziLQUF%@>#CF95>iMQRpw^w!VexwA4`J+$rhq3avH%Xf- z0r6GFbfCZd4aMmJDV?(_REh6|B=l|!G^;F)YCN+^tO&0qJucLb9D$4Jn_hqk8kA!S zAWU_XXyV3ppgUZ=(}WS`{TE7b*%S?Z1fFJ*KRsCNVWBRXa7=l>MYdSBB?SrRCiskD zzX*$q8zc{yVe io%9|VSg{?QicV~C;s#}^|6x6qA&<(aj^}B^|vvl}~gZHb+x2~f<0*7a` zF|-U(1CL@=!!=h}Jm7owY^kK$Af71Zl#4dn`;Q*JFz0!Y>LOiNUD6)G_Ze(Vd0r`3 z{X0nGKF=>u!$VPev$qCHH+kbf+*bd|9zvP%;Qq~NdhFRxn$ypoZgdwy&`SALjf5g) zb`DosoeJ#->`!Q2LiTp(MGJh}wf1PaL9fW4xR37^+R7G$9Mu1$#3|_0qCk>Lsd{C~ zra>GhUVmW}bUO;>o_IRrF*O4YPq14E`)26o#*4axQKdTypq99ED#t~XR+iVwGHAJ> zZ)!vDv|s0BC{cAP4b`vLr_@3Q8t5xuC#=PO7v~KJKa3xIRL@aQ3t$wU^lKHN8MTx; z(3nxhXCj!OTYK~|gkS?0G}L2*hYw7h^YVNG%36-LpyD o=m>q8!D9oO07X>;5$}Zw+o=d<&M%Hbm`;o(vObYGhWO)eORZKf7Sr=(0 zAI``WE}hB1ILE!6h;J6tA8TO+>iT+z{sLTPbAwDE=X~~FywCvfe2=)plBm8QN$|7@ z!l}h?K_2}}q956ceB%|+ EaR4)2C7TYI)&3~gvZKC zt}90nt7^Kr>=;ilL_>K-Egv>NV?-B;kY&nkL%(M#zUokh+vEF*H=kKfYh1I-cw>Kp z$`#SOKcB0Ox#EO6=1Qc;!vrULov1jg=?44$NV!q$Qyhh%#*JlX)`kuvskp2xit`H6 z+2DJ;_gUc90M2VICmQ$e>EqYH{}>O8*m=6Q>zracBpFDy&YA)@2gr2YwgYgo#6V zO_X=uuyGVAYa>iujEPX0aGtpCD=yJ@d%_$}IiTbLc@qL#EOS5-q0l0K$Plspl4I-r zho%iXR_zYh$z%49N5+|{d(hd*jeDxl qe z=WlhRpQ~t5vokqW1`Satuao285uzsgjABP_xN=p6k^a{O$TMmhk=vJ62JZj-xV!5l z30FQ9=AP~a%23PM=Xlece=fOhBnFO*AX!t*?j5#^y7eAZ@CPRwX85xMwO3FnIKZSW z _&uWW9-qm5yVaF?tdEPoKX5JV%7p&TQ>Kt}G=8Rgx|5T)5l+md=t z)8PJcobHEG#W%civ{ypZ{dVc!gfNgZw9-W@`>gZcyd^~Q@O_Suh1N-sx4UOvY~nZB z*)5sxp*HJW4$m{M>1CD5w1ZZBJ!X3dnPT8CA;&VeLmwy!xPuo$1sdtiQAIT5H#a@v zmbeaR6+t4<=N=+!Io|c9oQ>rP?C%+)L*FQuwxl(GC`awyugLCx;On_AFAaK7q>zUv zs%XT48rlWnsE!M zgVQ02YwRK+*_?=G=1RE&<@!z^F;+mes9x9}FsPQ>sv+BtKDLPU3iF+LB|J_n_MeK^ zzusCuQ16ju8|+MnOYFQKFmpdK!2rv49#sv{5os$MH;21|c>{FLcI({uE4J@jj53QN zF~_|!E2E(l9HTO$G+qSb6Svg9=bgQpt*Q6SrY6#zn$vH62&+{6T;!7NT7iqI51Ju< zmkiXmjg@1v^({+M{A!(1qkgN(hTvlh&^O7L1YBEdbwQ`et7ZGPuKF>3FDGGrP%Y}# zJ|NpEpVnZ_+QTa^%)rHTaY{$UthE@?*D!_fwnrNzGl~23QcS2R Jmw z@qQ+&%?TIe 616QPa6S(+^ {AKPz@ImNPB~iDX ZikCgU zc7>lCF|jjCY3Z5RspPzeKXucR-6@}w8Q<^LGHp~3LK)>q>P(`@pG1CCgO{kWE$Ji> zKjke$(uu`XgcQ8kVdV8}Oyr?$?4Keh&q|zw#A#G+e#bfRWa+n5k8_tu7V}?CQ)_?t zwoH6C@X;*|Z6ADIk<_wV&N(61g&eo2z=%I)G14jFY_rIyV6nQp-0nA;l9{cl_9Cii zl^UhBMmyRhw-3ggT2y4mA85MGLeTe7yNln7!V_xD(8UU`1q$Rgz10Zi2vg%iC*RVG zp~!J|C-=u!b5gqMJrdq)UU9QmMOT`gyijE^?)+pSvN!dyQ1ir26I0^ic9J_sNUxGG z?tAD~t5pqoFf7+%EZuE9(s#27tAApw)ALF-t@{xm7zNq!XdyI9O x3#GJ{2~J^xyw7Ej+&+qscpAIU(>?y0P71BF| JltWM d=e8Z7p8fX4}W8j}i`Kn-h?|Fc5Owjc5u05Vdj|{k6OE$*y z(11^m+al3?-TQQxEo^8}c4R^4%mSYO$h|@<1A43! Fahg9^Kry0DgM#=K^D9 zWb;r(*_6^bo*VNnYu^&$>ldK-ROlUCA-5Tr_niVQZ}Qzok8WNQJJPC%o3gK}bXfl7 zaA%%BTSi!Am1QBq?~(_{SXsVx0o4>YJJXqsrGBNFxn~*OyVsoYIM=I48=I^1lu%Fl z&z_q{{ptqS*m~Q&9sdk$zX|JZGuHQ25;0o~dW=U%UR{S}+t)2lb$sfq@g~I1MAGY` z9~WJQ_|7^#GXqfw!G1(>m#MQZ*h5(Q+*3zNY8z9zob&Zh+FhA0B`n?L!|=Wr_s?fR z?X*`qgtUm$hrD)^smG_nAifftul#Jv^)(Mh0nC7 mt1-#?8+N<_X^`1s0#KlsM(*?Lha+y)@96aKso#7xuo6 zo_#^1a~4iJEn{{-?r6iAg@Fz!rr;wpmckE37)TdC+>#p}Z#p|_lCal6M|}E@s`g7- zNmP%lT7FnWQ!FBOsCDpZZpGUd5#5GQi-^P)ILlQPvsepr8WmjPS`L|uxhFQ}g{g0x zG{Jk!r}Dek6<71
v5Q4&4Npe|=PGBsdvP|-W@)F?hUg6|AD=E0kE#gxsh)v8=G)gf3}{cmaPn*U z!%{A$Daf73-@^W%>p;+>lC~{-;i=o?ehJD$j~;$5CqLepKdNwFe80QYy)3EJo5-Kc zmcoMx&Y@nDznkW>I=Y)~o1S6j`D3J8g*xCwKWf%oPX6SL;z*sAl!W{(!cwZogV2+$ z=@@1QK;jCOKuOCF(o+B*oZs#!7^Cs3YPqz`9(1`xRe?`i*DP?%r{qs+nDEo|kW3kx zhYNOBG+0V3S#j?l4C$Em+r@&~Ragsyf+M>ttab6%TJ+~a>FInxitU#=y`Iv?d0OM& z+++s}g(}uB2-_h__%k1YE~MwkSWQmx-LO+PoBcT!7CUi=x|+6)@@_jD>=zwRKHX|c zYr3})JqEgT#aPi&6n{;AbG_iBfRgj#41;gVA=b8)>U^gR_)o=|pj-SX>*FAk=8$V< zikY+@D3>Djol-scnRb=al&lK#Z|S4kY1KX0Xj43$AYnyQ2uYnk8jP|DGY6%bhE|y@ zE MUYd25(=rOlIHY2cSrT{V<_}-87sQHh~T-YTjXLp>$UVf>A>Ev>eFtA zRDAHsY|&;m3nu?y9h2 f7 z3#TK;r9@WhnQWK6s_GgI=-qUS;ujlWu`RX2)EG5v<=4vXViruP6Y|kn!F@Aq(YDe{ zubFQF36StQv0imGG`U45%AU%8j`*7QeS%xAP`A}f#WuL>%u>s?)O@ukuC+jP0#Z5S zQ(1NjbJ}#9$<30HM!nE575OC0Ymds3>Ms`QeukEPlmf%Z2%R7><&qpt*wDkr73nb( zsSy^i8q9TGnG{Oi pLW$~U%zT8Xp5^Io{-IYOKI zbt{L c|PYb$6e~x51{D8N~=$JmPXUOar?a}#O~_mc!@ff z^Txi;;e5VOy0fK}oKJ`U;pyCRaGqQ|UbCCVlqFT&{Z!RE=W?XR!_UFA?6q`CGE4oN z$3Zfjyfm sGuDr(HHpX%{6M>;xn}>9XGDs={;g{#1BwU=h1hsYTGY2)o}g zl6+0+2ggOQjHgdnn^{9>Xng&|GH)s9f)zgCR@)vQ6h!mjtCO+3kRsXT= >{yq(bs4wGI>mfs^E>@3E%_0BJ5ULl-QX80rN=-p(D<6P%2)6G zx;fMJ#TLkP?;Sj=2j`14)pbJ6y@eJb9?@tG4eLEawre$33TB%UhT<^1p((kFg {R-tPgIYH1JSj(t2I-2M$fMJylt+>lH(``8E0EFTck|eZaq`wVckq%1}%fLpu zZChj)pGRGnpLZ?YZ|FadD=y-tIp)?YkNtHNb#@R1_; &h4A zPB-Ve@6*?HXjC0?vDQBkMTVb)!bug12~=-t#p~6J>5*MxZF7He)-)-O8(14}Cpv9f zUn=qOSU=dX=rFK+N!0+<91Epf6Ze|texcY*KsbCDbC=M4WPRDRGa|NT)#!zZsSk72 zczB&vOk?R}50Yt~iEBXi*Ap8;&xl526|2jv+k}g7$nxn$^tHChX=HmjW1+tlOrR^r z)c+EEziKi&xU6-~gs!%0F7rR4a8%^PrL!mKJ#2Xj|JL5cx;*nV7-qd@WaLv6lv-$T z^4^hdBeCu785wG76PAHsog!L5PK$uYp&aVcC5|8EH{SUZ9pj%~EnihX#s{A<0)*+E zu2!1E4=`+~{*5))kwp M})oqi7h0HO_mot?Jvm0{w6LEN;$zwDx|UmI$8* zO~>2Wa&}X#HER&VXBqc)-t7Du#VNWlkMJ9@m%S!@*v+f+OCv6`iIqrWc2jMka nnb54OjSA%6Ox}xB3{}6s(`tX3ufi}lWR!UIlVZdMqBnpJN zmYMuwo~Uq{(|c4Zl&cXEbzt 0g!T$)|Hv^?bIh6pt8_rB~&q)EetIkopww4;E9Sk z2pRPJaw+@5eXY+OZz3A8+A}iEPtDw)3)wCk(I1U{5xVxB#sxut0us7E`fQVH^}ZHu z$#Pr^@>+rFOgo=OJ_;5{PVe$gR*A#qGtUAm8YiZm?;F_#(YmH9?%fqgFBb&VOS0hq zU^_%ThrIx >+r%r2lJ4K Sbu*{30BNwEW9~Upn9FcXOt_$%U;e{F-FYxIHIyXvFlD{|0S=&FmHjf*=6B$ zB4?Qnx>D{kuA>trwvu!@|5 n9Wi2v;w(d3Y)n;}RiHVEI z4kxTiD;>=omeB76NfQ`%DC(>ptywqfx+;!t7Vbn9rPWf8+7(~NOGP5XsQ?yT1`5^e zx6qrYKTRsZNHLAhC!QK*>>N7CNnyOPj;Y7Q7xm$nu5KW8lMpd7$Yd%Ya{dX|{Ls*S zK6~K)g!e9!`f_1PEdqT5i AD;`)-#-YJUBYR>iamk?4?C54i~I@ z)_B;Wm$b6LtYR~R)HH<3i^&4vd-af{&C-8J3L2BOvziSunt57)%PFO!|AN+jLw!(9 zB&x?h%752y0@PlzX1a*z`F6F~5NvrQID(eH#46+ZQp%-ONAhLwFV1|Ljftk9_l7C5 z4SFyG<95RQ$;EGnhOf5gavYPTY~bEgK*W*KibhTGh~_a9UQutQ*d&GxQOlv(Z?>%( zE^{{x{?md3v7Iq;+na@aio1DamsGco6TMv4V5;H7`M1 @mx$U= z=TI`ID?69iB!6U!Umw#bkSJ6?`Tny%rD67?+d{Qs%)}HGwntH)Vj1mMHM20r&q9JU zQFD}_jCsAY->2YzXII}g7t@1Ud?zM1pLVUOFIeQ&kqiF0`LX$@Uy4;9;#0If{2zLW zza?b `!VP zpu)+&N2&hyT3ejJF!PA+-|RKmdntjqs`*>U`0uGNkH4;BCtqvn^#AAm1ICpVOvYi^ z|Iy69`QfuPFo0$?D`f8yaL;>c^D1BQ{NroXD>R5E$r9-mo7AXUK&L8h3m8@0Dl)3H zuXATMulIB^YJ_|3)bM^KnF6gz&mC&D{&&gXe|6g+fiwoZvti>0?fJ`gn@B2HdRX8; zA7BExLk-~I&IVMxuLV%BKEh6vY!fdcMyp9Y8tD+cR*NlGmz$^n_@>>mC|`b4_epCX zlid=S_*~@~KzUsqYWnjO5HNWGa3LwfQ IS)4Sm5*N4C`0z3 zj{knHS