Initial site working

This commit is contained in:
thepenguin 2023-03-04 13:39:16 +01:00
parent 23899b7a8a
commit c58929ad4d
No known key found for this signature in database
GPG Key ID: F258C8C10D060D5E
131 changed files with 3737 additions and 0 deletions

6
.gitmodules vendored Normal file
View File

@ -0,0 +1,6 @@
[submodule "themes/ananke"]
path = themes/ananke
url = https://github.com/theNewDynamic/gohugo-theme-ananke
[submodule "themes/hugo-classic"]
path = themes/hugo-classic
url = git@github.com:goodroot/hugo-classic.git

6
archetypes/default.md Normal file
View File

@ -0,0 +1,6 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

4
archetypes/default.org Normal file
View File

@ -0,0 +1,4 @@
#+title: "{{ replace .Name "-" " " | title }}"
#+date: {{ .Date }}
#+draft: true
#+tags[]:

44
config.toml Normal file
View File

@ -0,0 +1,44 @@
baseurl = "/"
enableEmoji = true
footnotereturnlinkcontents = "↩"
googleAnalytics = ""
ignoreFiles = ["\\.Rmd$", "_files$", "_cache$"]
languageCode = "en-us"
theme = "hugo-classic"
title = "acorneroftheweb"
[markup.goldmark.renderer]
unsafe = true
[markup.highlight]
anchorLineNos = false
codeFences = true
guessSyntax = false
hl_Lines = ""
lineAnchors = ""
lineNoStart = 1
lineNos = false
lineNumbersInTable = true
noClasses = true
style = "dracula"
tabWidth = 4
[permalinks]
post = "/post/:year/:month/:day/:slug/"
[[menu.main]]
name = "Categories"
url = "/categories/"
weight = 1
[[menu.main]]
name = "Tags"
url = "/tags/"
weight = 2
[[menu.feed]]
name = "Subscribe"
url = "/index.xml"
[params]
custom_css = ["css/theme-override.css"]
description = "Credit to the designer of the theme [goodroot](https://github.com/goodroot/hugo-classic)"
footer = "Open-Source | [Git](https://git.acorneroftheweb.com/pingu/blog)"

9
content/_index.md Normal file
View File

@ -0,0 +1,9 @@
---
title: Home
description: "Nor Führ, or Pingu or any other penguin related name's, blog about anything and everything."
---
## Welcome to this little corner of the web. :purple_heart:
---
## Musings

6
content/_index.org Normal file
View File

@ -0,0 +1,6 @@
#+title: Home
#+description: "The personal writings Nor Führ, also known as Pingu and other penguin related names."
* Welcome to this little corner of the web.
** Musings

View File

@ -0,0 +1 @@
footer { font-size: 90%; }

34
themes/ananke/.gitignore vendored Normal file
View File

@ -0,0 +1,34 @@
# OS
.DS_Store
Thumbs.db
# IDEs
.buildpath
.project
.settings/
.build/
.idea/
public/
nbproject/
# Vagrant
.vagrant/
# FE Setup
.bin/node_modules/
/node_modules/
src/node_modules/
exampleSite/node_modules/
src/npm-debug.log.*
npm-debug.log
/npm-debug.log*
/dist/
/src/client.config.json
/styleguide/
/docs/
/junit.xml
partials/structure/stylesheet.html
# Hugo
.hugo_build.lock

169
themes/ananke/CHANGELOG.md Normal file
View File

@ -0,0 +1,169 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
## [v2.6.1](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.6.0...v2.6.1) - 2020-06-25
### Commits
- Updated minimum theme to .55 [`df4c78a`](https://github.com/theNewDynamic/gohugo-theme-ananke/commit/df4c78adb2ed004c3780f7a76254e9756dd024b5)
## [v2.6.0](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/2.6.0...v2.6.0) - 2020-06-23
### Merged
- Update spanish translations [`#304`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/304)
- Add automatic cover image support [`#303`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/303)
## [2.6.0](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.5.5...2.6.0) - 2020-06-17
### Merged
- Add translation for taxonomy page [`#299`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/299)
- Site logo [`#284`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/284)
- Add head partial [`#285`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/285)
- Long urls or links extend beyond content and overlap sidebar [`#259`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/259)
- Use relative URL for favicon [`#251`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/251)
- Fix relURL for custom_css [`#252`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/252)
- Fixed a typo in form-contact.html [`#266`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/266)
- adding Bulgarian translation [`#267`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/267)
- Use | relLangURL for the base url in the site-navigation [`#277`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/277)
- RSS svg icon [`#282`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/282)
- Updated Windows instructions in README.md [`#276`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/276)
- Replace another 2 .URL occurrences with .Permalink [`#275`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/275)
- Add alternative method for running prod to the readme [`#273`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/273)
- Swap the page title and site title in page <title> elements [`#272`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/272)
- Add the post_content_classes param for changing post content font [`#260`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/260)
- Add sharing links for the posts [`#255`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/255)
- Safari Reader View lacks content [`#254`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/254)
- Add Keybase social icon [`#248`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/248)
- Add StackOverflow social [`#243`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/243)
- Fix to take care of multiple author list, or for setting the [`#221`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/221)
- Fix Slack icon size [`#237`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/237)
- Correct the original translation [`#241`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/241)
## [v2.5.6](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.6.1...v2.5.6) - 2019-12-30
### Merged
- Use Hugo's built in Site Config for copyright according to PR #199 [`#240`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/240)
- Add italian translation [`#239`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/239)
## [v2.5.5](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/2.5.1...v2.5.5) - 2019-11-15
### Merged
- Remove stray grave accent [`#231`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/231)
- Add Slack to social options [`#236`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/236)
- Fix URL for menus [`#230`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/230)
- Fix word count heading typo in README.md [`#222`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/222)
- Add auto-changelog [`#228`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/228)
- Fix stackbit issues [`#226`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/226)
- Add Stackbit Configuration [`#223`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/223)
- Replace {{ .URL }} with {{ .Permalink }} [`#216`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/216)
- Adds an author to blog posts. [`#209`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/209)
- Fixes #212. [`#213`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/213)
- Add ukrainian translation [`#214`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/214)
- Add swedish translation [`#208`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/208)
- Deprecation messages fixes. [`#196`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/196)
- Fix README instructions [`#204`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/204)
- Use git submodules [`#183`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/183)
- Remove Google News meta tags [`#197`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/197)
### Fixed
- Fix URL for menus (#230) [`#229`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/229)
- Add auto-changelog (#228) [`#227`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/227) [`#227`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/227)
- Fix stackbit issues (#226) [`#224`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/224)
- Add Stackbit Configuration (#223) [`#200`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/200)
- Fixes #212. (#213) [`#212`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/212)
- Deprecation messages fixes. (#196) [`#180`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/180)
## 2.5.1 - 2019-08-12
### Merged
- remove deprecated meta tags for old Windows Mobile and BlackBerry [`#191`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/191)
- localization for form-contact shortcode [`#185`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/185)
- Fix min_version [`#189`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/189)
- Add portuguese translation [`#179`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/179)
- Add commento [`#178`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/178)
- feat: add RU translation [`#177`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/177)
- Spanish Translation [`#175`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/175)
- Dutch translations. [`#171`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/171)
- Correcting issue with cached i18n menu [`#174`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/174)
- Create zh.toml [`#170`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/170)
- Fix TOC header [`#168`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/168)
- Optimisation "partialCached" [`#165`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/165)
- Add a link to "mastodon" [`#159`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/159)
- Create fr.toml [`#157`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/157)
- add i18n translation support [`#156`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/156)
- Support hiding the featured image header text. [`#155`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/155)
- enable localization/modification of "Recent" string [`#154`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/154)
- add basic support for post translations [`#144`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/144)
- Keep article padding throughout widths [`#152`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/152)
- Improve semantic structure of pages [`#151`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/151)
- Improve social link accessibility [`#147`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/147)
- Add explicit path to image example [`#146`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/146)
- Open social media links in new tab and add Medium icon [`#143`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/143)
- Make cover dimming class customisable. [`#140`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/140)
- Removed hardcoded theme sample hero image. This will allow the user to "blank" out the hero default set in the config. The if statement for blank was unreachable. [`#133`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/133)
- Use relative url function for custom CSS files [`#132`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/132)
- Add Gitlab to social icons [`#131`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/131)
- Add div to wrap social icons [`#128`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/128)
- Fix asset paths when baseURL has sub-folder [`#103`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/103)
- Add inheritance for social links. [`#107`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/107)
- Issue 98 [`#101`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/101)
- Replace Asset References with a data file instead of paths [`#96`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/96)
- Pre-2.0 Enhancements [`#94`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/94)
- Don't duplicate site title in home page TITLE tag [`#78`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/78)
- Fix pagination [`#76`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/76)
- #68|Parmeterize number of recent posts in index.html [`#69`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/69)
- Fix typo in single.html [`#67`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/67)
- Fixed line breaks in code (resolves budparr/gohugo-theme-ananke#56). [`#57`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/57)
- Favicons [`#54`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/54)
- indent fix [`#45`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/45)
- Social icon updates [`#51`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/51)
- Add GitHub social icon [`#48`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/48)
- Make Hero image work out-of-the box [`#40`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/40)
- Removed excess o in Facebook [`#34`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/34)
- Fixes #31 [`#32`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/32)
- Bp/fix now function Fixes #29 [`#30`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/30)
- fix clunky construction on home page to get section name [`#25`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/25)
- fix clunky construction on home page to get section name [`#24`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/24)
- fix clunky construction on home page to get section name [`#17`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/17)
- tweak hero default behavior [`#16`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/16)
- improve terms template [`#15`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/15)
- improve image handling for edge cases Fixes #11 [`#14`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/14)
- Improve featured image handling Ref #11 + minor homepage impvs [`#12`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/12)
- Dev changes [`#10`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/10)
- pull in dev changes [`#9`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/9)
- keeping things in order [`#8`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/8)
- Improve home page posts [`#7`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/7)
- make form email comment make more sense. Ref #5 [`#6`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/6)
- use a cleaner way to include language code [`#3`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/3)
- update from DEV [`#2`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/2)
- add taxonomy templates [`#1`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/1)
### Fixed
- Add blockquote styling [`#169`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/169)
- Keep article padding throughout widths (#152) [`#130`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/130)
- Update readme for formspree change [`#150`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/150)
- Improve semantic structure of pages (#151) [`#149`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/149)
- Add global background color class to footer [`#135`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/135)
- Add div to wrap social icons (#128) [`#127`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/127)
- Fix article padding on mobile [`#115`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/115)
- Make asset paths absolute [`#97`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/97)
- Fix linkedin icon to match the other social icons [`#70`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/70)
- Be smarter about linking to posts on home page. [`#50`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/50)
- Add body_classes parameter to body [`#43`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/43)
- Fixes #31 (#32) [`#31`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/31)
- Bp/fix now function Fixes #29 (#30) [`#29`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/29)
- Merge pull request #14 from budparr/dev [`#11`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/11)
- improve image handling for edge cases Fixes #11 [`#11`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/11)

20
themes/ananke/LICENSE.md Normal file
View File

@ -0,0 +1,20 @@
The MIT License (MIT)
Copyright (c) 2016 Bud Parr
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.

370
themes/ananke/README.md Normal file
View File

@ -0,0 +1,370 @@
# Ananke, A theme for [Hugo](https://gohugo.io/), a framework for building websites.
The intent of this theme is to provide a solid starting place for Hugo sites with basic features and include best practices for performance, accessibility, and rapid development.
![screenshot](https://raw.githubusercontent.com/budparr/gohugo-theme-ananke/master/images/screenshot.png)
[DEMO](https://gohugo-ananke-theme-demo.netlify.com/)
Features
- Responsive
- Accessible
- Contact form
- Custom Robots.txt (changes values based on environment)
- Internal templates for meta data, google analytics, and DISQUS or COMMENTO comments
- RSS Discovery
- Table of Contents (must declare `toc: true` in post parameter)
- Stackbit configuration ([Stackbit](https://www.stackbit.com))
Also includes examples of Hugo Features or Functions:
- Pagination (internal template)
- Taxonomies
- Archetypes
- Custom shortcode
- Related content
- Hugo built-in menu
- i18n
- `with`
- `HUGO_ENV`
- `first`
- `after`
- `sort`
- Site LanguageCode
- `where`
- Content Views
- Partials
- Template layouts (type "post" uses a special list template, single template, and a content view)
- Tags
- `len`
- Conditionals
- `ge` (greater than or equal to)
- `.Site.Params.mainSections` to avoid hard-coding "blog," etc. [[release note](https://github.com/gohugoio/hugo/blob/66ec6305f6cb450ddf9c489854146bac02f7dca1/docs/content/meta/release-notes.md#enhancements)]
This theme uses the "Tachyons" CSS library. This will allow you to manipulate the design of the theme by changing class names in HTML without touching the original CSS files. For more information see the [Tachyons website](https://tachyons.io/).
## Installation
### As a Hugo Module (recommended)
> ⚠️ If you installed a [Hugo binary](https://gohugo.io/getting-started/installing/#binary-cross-platform), you may not have Go installed on your machine. To check if Go is installed:
> ```
> $ go version
> ```
> Go modules were considered production ready in v1.14. [Download Go](https://golang.org/dl/).
1. From your project's root directory, initiate the hugo module system if you haven't already:
```
$ hugo mod init github.com/<your_user>/<your_project>
```
2. Add the theme's repo to your `config.toml`:
```toml
theme = ["github.com/theNewDynamic/gohugo-theme-ananke"]
```
### As Git Submodule
Inside the folder of your Hugo site run:
```
$ git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
```
For more information read the official [setup guide](//gohugo.io/overview/installing/) of Hugo.
## Getting started
After installing the theme successfully it requires a just a few more steps to get your site running.
### The config file
Take a look inside the [`exampleSite`](https://github.com/theNewDynamic/gohugo-theme-ananke/tree/master/exampleSite) folder of this theme. You'll find a file called [`config.toml`](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/exampleSite/config.toml). To use it, copy the [`config.toml`](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/exampleSite/config.toml) in the root folder of your Hugo site. Feel free to change the strings in this theme.
You may need to delete the line: `themesDir = "../.."`
### Add comments
To enable comments, add following to your config file:
- DISQUS: `disqusShortname = YOURSHORTNAME`
- COMMENTO:
```
[params]
commentoEnable = true
```
### Change the hero background
For any page or post you can add a featured image by including the local path in front matter (see content in the `exampleSite/content/_readme.md` file for examples): `featured_image: '/images/gohugo-default-sample-hero-image.jpg'`
#### Featured image as Page Resources
If user is using [Page Resources](https://gohugo.io/content-management/page-resources/), the theme will try and match the `featured_image` from with a page resource of type `image` and use its relative permalink. If no `featured_image` is set, the theme will look for a Page Resource of type `image` whose filepath incudes either `cover` or `feature`
#### Other hero settings
If you would like to hide the header text on the featured image on a page, set `omit_header_text` to `true`. See `exampleSite/content/contact.md` for an example.
You don't need an image though. The default background color is black, but you can change the color, by changing the default color class in the config.toml file. Choose a background color from any on the [Tachyons](https://tachyons.io/docs/themes/skins/) library site, and preface it with "bg-"
example: `background_color_class = "bg-blue"` or `background_color_class = "bg-gray"`
### Activate the contact form
This theme includes a shortcode for a contact form that you can add to any page (there is an example on the contact page in the exampleSite folder). One option is to use [formspree.io](//formspree.io/) as proxy to send the actual email. Each month, visitors can send you up to one thousand emails without incurring extra charges. Visit the Formspree site to get the "action" link and add it to your shortcode like this:
```
{{< form-contact action="https://formspree.io/your@email.com" >}}
```
### Read more link
The homepage and other areas of the site use a `read more` link on the element. You can customize the copy of this link to make it more descriptive with the parameter `read_more_copy` available as a site and front matter parameter.
```
# config.yaml
# Globally for all pages:
params:
read_more_copy: Read more about this entry
# Just for french
languages:
fr:
name: Français
weight: 2
params:
read_more_copy: En savoir plus à ce sujet
```
Using front matter and cascade, this can be customized for a whole section, or just for one page.
```
# content/posts/tower-bridge-london.md
title: The Tower Bridge of London
read_more_copy: Read more about this bridge
```
### Social Follow + Share
The theme automatically adds "Follow" link icons to the header and footer and "Share" link icons to pages unless `disable_share` parameter is set to true either on the site level (site params) or page level (front matter). Each built-in services sports a label, an icon and a color.
In order to register a service to be used, user must add an `ananke_socials` parameter to its project configuration file and list them through it in the desired order. Each entry must bear a
- name*: It matches the built-in service reference (Ex: twitter, github)
- url*: The url of the handle's profile on the service (Ex: https://twitter.com/theNewDynamic, https://github.com/
theNewDynamic)
- rel: (default: `noopener`) Controls the `rel` attribute of the "follow" link. Useful for Mastodon verification which requires a `rel="me"` on the link.
```yaml
params:
ananke_socials:
- name: twitter
url: https://twitter.com/theNewDynamic
- name: github
url: https://github.com/theNewDynamic
- name: mastodon
url: https://social.example.com/@username
rel: me noopener
```
If user needs to overwrite default `color` and `label` of the service, they simply need to append the following to the entry:
- label: The displayed name of the service to be used to popuplate `[title]` attributes and read-only. (Ex: Twitter, GitHub)
- color: Used for styling purposes. (Ex: '#1da1f2', '#6cc644')
```yaml
params:
ananke_socials:
- name: twitter
url: https://twitter.com/theNewDynamic
label: TND Twitter
- name: github
url: https://github.com/theNewDynamic
label: TND GitHub Account
color: '#ff6800'
```
#### Limit Follow or Share
If a user needs to control Share and Follow of a service, for example enabling "Share on Facebook" without having a Facebook Page to "follow", they can set `follow: false` one the registered service.
```yaml
params:
ananke_socials:
- name: facebook
label: Facebook
follow: false
- name: twitter
url: https://twitter.com/theNewDynamic
label: TND Twitter
```
#### Social Icons Customization
On top of easily customizing the built-in services' label and color, user can overwrite their icon by adding an svg file at `/assets/ananke/socials` with a filename matching the service's name.
For example, in order to use your own GitHub icon, simply add an svg file at `/assets/ananke/socials/github.svg`
#### Built-in Services
Here is the list of built-in services. Those marked with an `*` are also part of the "Share" module.
- twitter*
- instagram
- youtube
- github
- gitlab
- keybase
- linkedin*
- medium
- mastodon
- slack
- stackoverflow
- facebook*
- rss
#### Complement
In order to add an unkown service (absent from the list above), you simply need to add all three settings to `ananke_socials`: name, url, label, color, and optionally add an icon file matching the `name` to the `assets/ananke/socials` directory. In the absence of an icon, the theme will print the service's label.
### Content indexing
If the theme is ran in [production](#production), pages will be indexed by search engines. To prevent indexing on some given pages, add `private: true` to its Front Matter.
### Update font or body classes
The theme is set, by default, to use a near-white background color and the "Avenir" or serif typeface. You can change these in your config file with the `body_classes` parameter, like this:
```
[params]
body_classes = "avenir bg-near-white"
```
which will give you a body class like this:
```
<body class="avenir bg-near-white">
```
note: The `body_classes` parameter will not change the font used in post content. To do this, you must use the `post_content_classes` parameter.
You can find a list of available typefaces [here](https://github.com/tachyons-css/tachyons/blob/v4.7.0/src/_font-family.css).
And a list of background colors [here](https://github.com/tachyons-css/tachyons/blob/v4.7.0/src/_skins.css#L96).
_n.b. in future versions we will likely separate the typeface and other body classes._
### CSS
Ananke stylesheet is built with Hugo Pipes's [Asset Bundling](https://gohugo.io/hugo-pipes/bundling/#readout) alone to maximize compatibiliy. The theme simply bundles its several files into one minified and fingerprinted (in production) CSS file.
Ananke uses [Tachyon.io](https://tachyons.io/) utility class library.
#### Custom CSS
WARNING: Pending resolution of this [discussion](https://github.com/theNewDynamic/gohugo-theme-ananke/discussions/452#discussioncomment-1865301), Custom CSS only works with Hugo Extended
In order to complement the default CSS with your own, you can add custom css files to the project.
1. Just add a `assets/ananke/css` directory to your project and add the file(s) in it.
2. Register the files using the `custom_css` key in your site's parameter. The path referenced in the parameter should be relative to the `assets/ananke/css` folder.
The css files will be added in their registered order to final `main.css` file.
For example, if your css files are `assets/ananke/css/custom.css` and `assets/ananke/special.css` then add the following to the config file:
```
[params]
custom_css = ["custom.css","special.css"]
```
__IMPORTANT__: Files registered through the `custom_css` array, while unlimited in number, must be of the same type (Ex: all `scss` or all `css`)
__Note on retrocompatibiliy for custom css__: If the files registered through the `custom_css` setting are not found in `assets/ananke/css` the theme will expect them to live at the given path relative to the static directory and load them as <link> requests.
### Show Reading Time and Word Count
If you add a key of `show_reading_time` true to either the Config Params, a page or section's front matter, articles will show the reading time and word count.
### Adding Scripts to the Page Head
Some scripts need to be added within the page head. To add your own scripts to the page head, simply insert them into the `head-additions.html` partial located in the `layouts/partials` folder.
### Logo
You can replace the title of your site in the top left corner of each page with your own logo. To do that put your own logo into the `static` directory of your website, and add the `site_logo` parameter to the site params in your config file. For example:
```
[params]
site_logo = "img/logo.svg"
```
### Set Content Font Color
You can set the font color of the main content both globally and on individual pages:
Globally:
Set the `text_color` param in the `config.toml` file.
```
[params]
text_color = "green"
```
Individual Page (prioritized over global):
Set the `text_color` param in a page's markdown file front matter.
note: The value of `text_color` must be a valid tachyons color class. A list can be found [here](https://tachyons.io/docs/themes/skins/).
### Localize date format
Dates of blog posts and single pages are rendered with the default date format commonly used in the USA and Canada. It is possible to specify a different format.
```
[params]
date_format = "2. January 2006"
```
With hugo 0.87.0 and above, you can also use predefined layout, like `:date_full`, and it will output localized dates or times.
See hugo's documentation of the [`time.Format` function](https://gohugo.io/functions/dateformat/) for more details.
### Nearly finished
In order to see your site in action, run Hugo's built-in local server.
`$ hugo server`
Now enter [`localhost:1313`](http://localhost:1313/) in the address bar of your browser.
## Production
To run in production (e.g. to have Google Analytics show up), run `HUGO_ENV=production` before your build command. For example:
```
HUGO_ENV=production hugo
```
Note: The above command will not work on Windows. If you are running a Windows OS, use the below command:
```
set HUGO_ENV=production
hugo
```
## Contributing
If you find a bug or have an idea for a feature, feel free to use the [issue tracker](https://github.com/theNewDynamic/gohugo-theme-ananke/issues) to let me know.
TODO:
- fix hard-coded link to [section](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/layouts/index.html#L32)

View File

@ -0,0 +1,7 @@
---
title: "{{ replace .File.ContentBaseName "-" " " | title }}"
date: {{ .Date }}
tags: []
featured_image: ""
description: ""
---

View File

@ -0,0 +1,24 @@
pre, .pre {
overflow-x: auto;
overflow-y: hidden;
overflow: scroll;
}
pre code {
display: block;
padding: 1.5em 1.5em;
white-space: pre;
font-size: .875rem;
line-height: 2;
}
pre {
background-color: #222;
color: #ddd;
white-space: pre;
hyphens: none;
position: relative;
}

View File

@ -0,0 +1,38 @@
/* pagination.html: https://github.com/spf13/hugo/blob/master/tpl/tplimpl/template_embedded.go#L117 */
.pagination {
margin: 3rem 0;
}
.pagination li {
display: inline-block;
margin-right: .375rem;
font-size: .875rem;
margin-bottom: 2.5em;
}
[dir="rtl"] .pagination li {
margin-left: .375rem;
margin-right: 0;
}
.pagination li a {
padding: .5rem .625rem;
background-color: white;
color: #333;
border: 1px solid #ddd;
border-radius: 3px;
text-decoration: none;
}
.pagination li.disabled {
display: none;
}
.pagination li.active a,
.pagination li.active a:link,
.pagination li.active a:active,
.pagination li.active a:visited {
background-color: #ddd;
}
#TableOfContents ul li {
margin-bottom: 1em;
}

View File

@ -0,0 +1,21 @@
.ananke-socials a{
display: inline-block;
vertical-align: middle;
color: #BABABA;
fill: currentColor;
}
.ananke-socials a .icon svg{
width: 32px;
height: 32px;
}
.ananke-socials a:hover {
color: rgb(107, 114, 128);
}
.new-window {
opacity: 0;
display: inline-block;
vertical-align: top;
}
.link-transition:hover .new-window{
opacity: 1;
}

View File

@ -0,0 +1,20 @@
/* Put your custom styles here and run `npm start` from the "src" directory on */
#TableOfContents ul li {
margin-bottom: 1em;
}
.lh-copy blockquote {
display: block;
font-size: .875em;
margin-left: 2rem;
margin-top: 2rem;
margin-bottom: 2rem;
border-left: 4px solid #ccc;
padding-left: 1rem;
}
.nested-links a{
overflow-wrap: break-word;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M28.765,50.32h6.744V33.998h4.499l0.596-5.624h-5.095 l0.007-2.816c0-1.466,0.14-2.253,2.244-2.253h2.812V17.68h-4.5c-5.405,0-7.307,2.729-7.307,7.317v3.377h-3.369v5.625h3.369V50.32z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>

After

Width:  |  Height:  |  Size: 502 B

View File

@ -0,0 +1,3 @@
<svg style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
<path d="M256,32C132.3,32,32,134.8,32,261.7c0,101.5,64.2,187.5,153.2,217.9c11.2,2.1,15.3-5,15.3-11.1 c0-5.5-0.2-19.9-0.3-39.1c-62.3,13.9-75.5-30.8-75.5-30.8c-10.2-26.5-24.9-33.6-24.9-33.6c-20.3-14.3,1.5-14,1.5-14 c22.5,1.6,34.3,23.7,34.3,23.7c20,35.1,52.4,25,65.2,19.1c2-14.8,7.8-25,14.2-30.7c-49.7-5.8-102-25.5-102-113.5 c0-25.1,8.7-45.6,23-61.6c-2.3-5.8-10-29.2,2.2-60.8c0,0,18.8-6.2,61.6,23.5c17.9-5.1,37-7.6,56.1-7.7c19,0.1,38.2,2.6,56.1,7.7 c42.8-29.7,61.5-23.5,61.5-23.5c12.2,31.6,4.5,55,2.2,60.8c14.3,16.1,23,36.6,23,61.6c0,88.2-52.4,107.6-102.3,113.3 c8,7.1,15.2,21.1,15.2,42.5c0,30.7-0.3,55.5-0.3,63c0,6.1,4,13.3,15.4,11C415.9,449.1,480,363.1,480,261.7 C480,134.8,379.7,32,256,32z"/>
</svg>

After

Width:  |  Height:  |  Size: 900 B

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="M29.782 199.732L256 493.714 8.074 309.699c-6.856-5.142-9.712-13.996-7.141-21.993l28.849-87.974zm75.405-174.806c-3.142-8.854-15.709-8.854-18.851 0L29.782 199.732h131.961L105.187 24.926zm56.556 174.806L256 493.714l94.257-293.982H161.743zm349.324 87.974l-28.849-87.974L256 493.714l247.926-184.015c6.855-5.142 9.711-13.996 7.141-21.993zm-85.404-262.78c-3.142-8.854-15.709-8.854-18.851 0l-56.555 174.806h131.961L425.663 24.926z"></path></svg>

After

Width:  |  Height:  |  Size: 588 B

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.271,26.578v-0.006c0.502,0,1.005,0.01,1.508-0.002 c0.646-0.017,1.172-0.57,1.172-1.217c0-0.963,0-1.927,0-2.89c0-0.691-0.547-1.24-1.236-1.241c-0.961,0-1.922-0.001-2.883,0 c-0.688,0.001-1.236,0.552-1.236,1.243c-0.001,0.955-0.004,1.91,0.003,2.865c0.001,0.143,0.028,0.291,0.073,0.426 c0.173,0.508,0.639,0.82,1.209,0.823C41.344,26.579,41.808,26.578,42.271,26.578z M33,27.817c-3.384-0.002-6.135,2.721-6.182,6.089 c-0.049,3.46,2.72,6.201,6.04,6.272c3.454,0.074,6.248-2.686,6.321-6.043C39.254,30.675,36.462,27.815,33,27.817z M21.046,31.116 v0.082c0,4.515-0.001,9.03,0,13.545c0,0.649,0.562,1.208,1.212,1.208c7.16,0.001,14.319,0.001,21.479,0 c0.656,0,1.215-0.557,1.215-1.212c0.001-4.509,0-9.02,0-13.528v-0.094h-2.912c0.411,1.313,0.537,2.651,0.376,4.014 c-0.161,1.363-0.601,2.631-1.316,3.803s-1.644,2.145-2.779,2.918c-2.944,2.006-6.821,2.182-9.946,0.428 c-1.579-0.885-2.819-2.12-3.685-3.713c-1.289-2.373-1.495-4.865-0.739-7.451C22.983,31.116,22.021,31.116,21.046,31.116z M45.205,49.255c0.159-0.026,0.318-0.049,0.475-0.083c1.246-0.265,2.264-1.304,2.508-2.557c0.025-0.137,0.045-0.273,0.067-0.409 V21.794c-0.021-0.133-0.04-0.268-0.065-0.401c-0.268-1.367-1.396-2.428-2.78-2.618c-0.058-0.007-0.113-0.02-0.17-0.03H20.761 c-0.147,0.027-0.296,0.047-0.441,0.08c-1.352,0.308-2.352,1.396-2.545,2.766c-0.008,0.057-0.02,0.114-0.029,0.171V46.24 c0.028,0.154,0.05,0.311,0.085,0.465c0.299,1.322,1.427,2.347,2.77,2.52c0.064,0.008,0.13,0.021,0.195,0.03H45.205z M33,64 C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -0,0 +1,3 @@
<svg style="enable-background:new 0 0 65 65;" version="1.1" viewBox="0 0 65 65" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path d="M50.837,48.137V36.425c0-6.275-3.35-9.195-7.816-9.195 c-3.604,0-5.219,1.983-6.119,3.374V27.71h-6.79c0.09,1.917,0,20.427,0,20.427h6.79V36.729c0-0.609,0.044-1.219,0.224-1.655 c0.49-1.22,1.607-2.483,3.482-2.483c2.458,0,3.44,1.873,3.44,4.618v10.929H50.837z M22.959,24.922c2.367,0,3.842-1.57,3.842-3.531 c-0.044-2.003-1.475-3.528-3.797-3.528s-3.841,1.524-3.841,3.528c0,1.961,1.474,3.531,3.753,3.531H22.959z M34,64 C17.432,64,4,50.568,4,34C4,17.431,17.432,4,34,4s30,13.431,30,30C64,50.568,50.568,64,34,64z M26.354,48.137V27.71h-6.789v20.427 H26.354z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
</svg>

After

Width:  |  Height:  |  Size: 798 B

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="M 61.731833,16.783448 C 60.855064,10.336694 55.17491,5.2562169 48.441526,4.2717554 47.305526,4.1054038 43.001372,3.5 33.030833,3.5 h -0.07446 C 22.983141,3.5 20.843449,4.1054038 19.707449,4.2717554 13.161526,5.2289477 7.1836569,9.7940169 5.7332999,16.317063 c -0.6976035,3.212462 -0.7720515,6.774 -0.6424569,10.041 0.1847407,4.685077 0.2205861,9.361923 0.6507292,14.027923 0.2973693,3.099385 0.8161231,6.174077 1.552377,9.201 1.3786615,5.590462 6.9594998,10.242769 12.4272688,12.140846 5.854077,1.979385 12.149615,2.307923 18.181846,0.949 0.663539,-0.152692 1.319846,-0.33 1.968693,-0.531769 1.464153,-0.460846 3.182,-0.976308 4.444846,-1.881692 0.01731,-0.01269 0.03154,-0.02908 0.04154,-0.048 0.01,-0.01885 0.01562,-0.03977 0.01631,-0.06108 v -4.521385 c -3.08e-4,-0.01992 -0.0051,-0.03954 -0.014,-0.05738 -0.009,-0.01785 -0.02185,-0.03354 -0.03777,-0.04577 -0.01585,-0.01231 -0.03431,-0.02092 -0.05392,-0.02531 -0.01969,-0.0043 -0.04008,-0.0042 -0.05969,2.3e-4 -3.864769,0.913077 -7.825154,1.370769 -11.798615,1.363539 -6.838154,0 -8.677308,-3.209693 -9.204,-4.546 -0.423308,-1.154846 -0.692154,-2.359462 -0.799615,-3.583308 -0.0011,-0.02054 0.0028,-0.04108 0.01115,-0.05992 0.0084,-0.01877 0.02123,-0.03538 0.03731,-0.04839 0.01615,-0.013 0.03515,-0.02208 0.05546,-0.02646 0.02031,-0.0045 0.04138,-0.004 0.06154,0.0012 3.800385,0.906846 7.696154,1.364538 11.605615,1.363538 0.940231,0 1.877693,0 2.818,-0.02454 3.931923,-0.109077 8.076154,-0.308154 11.944693,-1.055385 0.09654,-0.01908 0.193,-0.03546 0.275769,-0.06 6.101923,-1.159 11.908846,-4.796846 12.498923,-14.008846 0.02208,-0.362692 0.07723,-3.798769 0.07723,-4.175077 0.0028,-1.279 0.416384,-9.072846 -0.06069,-13.861538 z m -9.391461,22.98623 H 45.924141 V 24.225525 c 0,-3.272462 -1.378692,-4.941385 -4.182923,-4.941385 -3.082692,0 -4.626769,1.974385 -4.626769,5.874 v 8.508385 H 30.736757 V 25.15814 c 0,-3.899615 -1.546847,-5.874 -4.629539,-5.874 -2.787692,0 -4.180154,1.668923 -4.182923,4.941385 V 39.769678 H 15.513526 V 23.753755 c 0,-3.272461 0.844692,-5.87223 2.534,-7.799384 1.742615,-1.922539 4.028461,-2.909693 6.865769,-2.909693 3.283923,0 5.765538,1.248923 7.419923,3.744231 l 1.596539,2.650692 1.59923,-2.650692 c 1.654385,-2.495308 4.136,-3.744231 7.414462,-3.744231 2.834538,0 5.120308,0.987154 6.868461,2.909693 1.689385,1.925307 2.534,4.525077 2.534,7.799384 z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -0,0 +1,3 @@
<svg style="enable-background:new 0 0 170 170;" version="1.1" viewBox="0 0 170 170" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
<path d="M46.5340803,65.2157554 C46.6968378,63.6076572 46.0836,62.018231 44.8828198,60.93592 L32.6512605,46.2010582 L32.6512605,44 L70.6302521,44 L99.9859944,108.380952 L125.794585,44 L162,44 L162,46.2010582 L151.542017,56.2281011 C150.640424,56.9153477 150.193188,58.0448862 150.380019,59.1628454 L150.380019,132.837155 C150.193188,133.955114 150.640424,135.084652 151.542017,135.771899 L161.755369,145.798942 L161.755369,148 L110.38282,148 L110.38282,145.798942 L120.963119,135.527337 C122.002801,134.487948 122.002801,134.182246 122.002801,132.592593 L122.002801,73.0417402 L92.585901,147.755438 L88.6106443,147.755438 L54.3622782,73.0417402 L54.3622782,123.115814 C54.0767278,125.221069 54.7759199,127.3406 56.2581699,128.863022 L70.0186741,145.55438 L70.0186741,147.755438 L31,147.755438 L31,145.55438 L44.7605042,128.863022 C46.2319621,127.338076 46.8903838,125.204485 46.5340803,123.115814 L46.5340803,65.2157554 Z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<circle cx="6.18" cy="17.82" r="2.18"/>
<path id="scale" d="M4 4.44v2.83c7.03 0 12.73 5.7 12.73 12.73h2.83c0-8.59-6.97-15.56-15.56-15.56zm0 5.66v2.83c3.9 0 7.07 3.17 7.07 7.07h2.83c0-5.47-4.43-9.9-9.9-9.9z"/>
</svg>

After

Width:  |  Height:  |  Size: 286 B

View File

@ -0,0 +1,27 @@
<svg style="enable-background:new 65 65 150 135;" version="1.1" viewBox="65 65 150 135" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<style type="text/css">
.st0{fill:#BABABA;}
</style>
<g>
<g>
<path class="st0" d="M99.4,151.2c0,7.1-5.8,12.9-12.9,12.9s-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h12.9V151.2z"/>
<path class="st0" d="M105.9,151.2c0-7.1,5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v32.3c0,7.1-5.8,12.9-12.9,12.9
s-12.9-5.8-12.9-12.9C105.9,183.5,105.9,151.2,105.9,151.2z"/>
</g>
<g>
<path class="st0" d="M118.8,99.4c-7.1,0-12.9-5.8-12.9-12.9s5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v12.9H118.8z"/>
<path class="st0" d="M118.8,105.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9H86.5c-7.1,0-12.9-5.8-12.9-12.9
s5.8-12.9,12.9-12.9C86.5,105.9,118.8,105.9,118.8,105.9z"/>
</g>
<g>
<path class="st0" d="M170.6,118.8c0-7.1,5.8-12.9,12.9-12.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9h-12.9V118.8z"/>
<path class="st0" d="M164.1,118.8c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9V86.5c0-7.1,5.8-12.9,12.9-12.9
c7.1,0,12.9,5.8,12.9,12.9V118.8z"/>
</g>
<g>
<path class="st0" d="M151.2,170.6c7.1,0,12.9,5.8,12.9,12.9c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9v-12.9H151.2z"/>
<path class="st0" d="M151.2,164.1c-7.1,0-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h32.3c7.1,0,12.9,5.8,12.9,12.9
c0,7.1-5.8,12.9-12.9,12.9H151.2z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,8 @@
<svg
style="enable-background:new 0 0 67 67;"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
>
<path d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm.869 5.903l3.114 4.567-.975.665-3.115-4.567.976-.665zm-2.812 2.585l4.84 2.838-.6 1.017-4.842-2.838.602-1.017zm-1.276 2.724l5.413 1.521-.291 1.077-5.428-1.458.306-1.14zm-.588 2.461l5.687.569-.103 1.12-5.691-.513.107-1.176zm-.169 2.16h5.835v1.167h-5.835v-1.167zm7.976 3.167h-10v-6h1v5h8v-5h1v6zm.195-8.602l-.945-5.446 1.162-.202.947 5.446-1.164.202z"/>
</svg>

After

Width:  |  Height:  |  Size: 567 B

View File

@ -0,0 +1,3 @@
<svg style="enable-background:new 0 0 32 32;" version="1.1" viewBox="0 0 32 32" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path d="m 15.433,1.91 c 7.726455,0 14,6.265147 14,14 0,7.726455 -6.265147,14 -14,14 -7.7264547,0 -14,-6.265147 -14,-14 0,-7.7264547 6.265147,-14 14,-14 z m 3.031794,6.2483503 c 0.260348,2.2003597 1.486502,3.5104977 3.611277,3.6448707 v 2.469107 c -1.234553,0.117576 -2.317936,-0.285543 -3.577684,-1.041392 v 4.619076 c 0,5.878824 -6.407918,7.709658 -8.9778045,3.5021 -1.6544691,-2.70426 -0.6382724,-7.466107 4.6694665,-7.65087 v 2.611877 c -0.40312,0.06719 -0.831434,0.167967 -1.226155,0.30234 -1.184163,0.394721 -1.847631,1.15057 -1.662868,2.469106 0.361128,2.527895 4.997001,3.275345 4.610678,-1.662867 V 8.1667487 h 2.561488 z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
</svg>

After

Width:  |  Height:  |  Size: 868 B

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M37.167,22.283c-2.619,0.953-4.274,3.411-4.086,6.101 l0.063,1.038l-1.048-0.127c-3.813-0.487-7.145-2.139-9.974-4.915l-1.383-1.377l-0.356,1.017c-0.754,2.267-0.272,4.661,1.299,6.271 c0.838,0.89,0.649,1.017-0.796,0.487c-0.503-0.169-0.943-0.296-0.985-0.233c-0.146,0.149,0.356,2.076,0.754,2.839 c0.545,1.06,1.655,2.097,2.871,2.712l1.027,0.487l-1.215,0.021c-1.173,0-1.215,0.021-1.089,0.467 c0.419,1.377,2.074,2.839,3.918,3.475l1.299,0.444l-1.131,0.678c-1.676,0.976-3.646,1.526-5.616,1.568 C19.775,43.256,19,43.341,19,43.405c0,0.211,2.557,1.397,4.044,1.864c4.463,1.377,9.765,0.783,13.746-1.568 c2.829-1.673,5.657-5,6.978-8.221c0.713-1.716,1.425-4.851,1.425-6.354c0-0.975,0.063-1.102,1.236-2.267 c0.692-0.678,1.341-1.419,1.467-1.631c0.21-0.403,0.188-0.403-0.88-0.043c-1.781,0.636-2.033,0.551-1.152-0.402 c0.649-0.678,1.425-1.907,1.425-2.267c0-0.063-0.314,0.042-0.671,0.233c-0.377,0.212-1.215,0.53-1.844,0.72l-1.131,0.361l-1.027-0.7 c-0.566-0.381-1.361-0.805-1.781-0.932C39.766,21.902,38.131,21.944,37.167,22.283z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4 s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1 @@
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.527,41.34c-0.278,0-0.478,0.078-0.6,0.244 c-0.121,0.156-0.18,0.424-0.18,0.796v0.896h1.543V42.38c0-0.372-0.062-0.64-0.185-0.796C42.989,41.418,42.792,41.34,42.527,41.34z M36.509,41.309c0.234,0,0.417,0.076,0.544,0.23c0.123,0.155,0.185,0.383,0.185,0.682v4.584c0,0.286-0.053,0.487-0.153,0.611 c-0.1,0.127-0.256,0.189-0.47,0.189c-0.148,0-0.287-0.033-0.421-0.096c-0.135-0.062-0.274-0.171-0.415-0.313v-5.531 c0.119-0.122,0.239-0.213,0.36-0.271C36.26,41.335,36.383,41.309,36.509,41.309z M41.748,44.658v1.672 c0,0.468,0.057,0.792,0.17,0.974c0.118,0.181,0.313,0.269,0.592,0.269c0.289,0,0.491-0.076,0.606-0.229 c0.114-0.153,0.175-0.489,0.175-1.013v-0.405h1.795v0.456c0,0.911-0.217,1.596-0.657,2.059c-0.435,0.459-1.089,0.687-1.958,0.687 c-0.781,0-1.398-0.242-1.847-0.731c-0.448-0.486-0.676-1.157-0.676-2.014v-3.986c0-0.768,0.249-1.398,0.742-1.882 c0.493-0.484,1.128-0.727,1.911-0.727c0.799,0,1.413,0.225,1.843,0.674c0.429,0.448,0.642,1.093,0.642,1.935v2.264H41.748z M38.623,48.495c-0.271,0.336-0.669,0.501-1.187,0.501c-0.343,0-0.646-0.062-0.912-0.192c-0.267-0.129-0.519-0.327-0.746-0.601 v0.681h-1.764V36.852h1.764v3.875c0.237-0.27,0.485-0.478,0.748-0.616c0.267-0.143,0.534-0.212,0.805-0.212 c0.554,0,0.975,0.189,1.265,0.565c0.294,0.379,0.438,0.933,0.438,1.66v4.926C39.034,47.678,38.897,48.159,38.623,48.495z M30.958,48.884v-0.976c-0.325,0.361-0.658,0.636-1.009,0.822c-0.349,0.191-0.686,0.282-1.014,0.282 c-0.405,0-0.705-0.129-0.913-0.396c-0.201-0.266-0.305-0.658-0.305-1.189v-7.422h1.744v6.809c0,0.211,0.037,0.362,0.107,0.457 c0.077,0.095,0.196,0.141,0.358,0.141c0.128,0,0.292-0.062,0.488-0.188c0.197-0.125,0.375-0.283,0.542-0.475v-6.744h1.744v8.878 H30.958z M24.916,38.6v10.284h-1.968V38.6h-2.034v-1.748h6.036V38.6H24.916z M32.994,32.978c0-0.001,12.08,0.018,13.514,1.45 c1.439,1.435,1.455,8.514,1.455,8.555c0,0-0.012,7.117-1.455,8.556C45.074,52.969,32.994,53,32.994,53s-12.079-0.031-13.516-1.462 c-1.438-1.435-1.441-8.502-1.441-8.556c0-0.041,0.004-7.12,1.441-8.555C20.916,32.996,32.994,32.977,32.994,32.978z M42.52,29.255 h-1.966v-1.08c-0.358,0.397-0.736,0.703-1.13,0.909c-0.392,0.208-0.771,0.312-1.14,0.312c-0.458,0-0.797-0.146-1.027-0.437 c-0.229-0.291-0.345-0.727-0.345-1.311v-8.172h1.962v7.497c0,0.231,0.045,0.399,0.127,0.502c0.08,0.104,0.216,0.156,0.399,0.156 c0.143,0,0.327-0.069,0.548-0.206c0.22-0.137,0.423-0.312,0.605-0.527v-7.422h1.966V29.255z M31.847,27.588 c0.139,0.147,0.339,0.219,0.6,0.219c0.266,0,0.476-0.075,0.634-0.223c0.157-0.152,0.235-0.358,0.235-0.618v-5.327 c0-0.214-0.08-0.387-0.241-0.519c-0.16-0.131-0.37-0.196-0.628-0.196c-0.241,0-0.435,0.065-0.586,0.196 c-0.148,0.132-0.225,0.305-0.225,0.519v5.327C31.636,27.233,31.708,27.439,31.847,27.588z M30.408,19.903 c0.528-0.449,1.241-0.674,2.132-0.674c0.812,0,1.48,0.237,2.001,0.711c0.517,0.473,0.777,1.083,0.777,1.828v5.051 c0,0.836-0.255,1.491-0.762,1.968c-0.513,0.476-1.212,0.714-2.106,0.714c-0.858,0-1.547-0.246-2.064-0.736 c-0.513-0.492-0.772-1.152-0.772-1.983v-5.068C29.613,20.954,29.877,20.351,30.408,19.903z M24.262,16h-2.229l2.634,8.003v5.252 h2.213v-5.5L29.454,16h-2.25l-1.366,5.298h-0.139L24.262,16z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30 S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -0,0 +1,3 @@
module:
hugoVersion:
min: "0.84.0"

View File

@ -0,0 +1,41 @@
title = "Notre-Dame de Paris"
baseURL = "https://gohugo-theme-ananke.pages.dev"
languageCode = "en-us"
theme = ["github.com/theNewDynamic/gohugo-theme-ananke"]
resourceDir = "../resources"
DefaultContentLanguage = "en"
SectionPagesMenu = "main"
Paginate = 3 # this is set low for demonstrating with dummy content. Set to a higher number
googleAnalytics = ""
enableRobotsTXT = true
[languages]
[languages.en]
title = "Ananke"
weight = 1
contentDir = "content/en"
# languageDirection = 'rtl' for Right-To-Left languages
[languages.fr]
title = "Ananke Fr"
weight = 2
contentDir = "content/fr"
[sitemap]
changefreq = "monthly"
priority = 0.5
filename = "sitemap.xml"
[params]
text_color = ""
author = ""
favicon = ""
site_logo = ""
description = "The last theme you'll ever need. Maybe."
# choose a background color from any on this page: https://tachyons.io/docs/themes/skins/ and preface it with "bg-"
background_color_class = "bg-black"
recent_posts_number = 3
[[params.ananke_socials]]
name = "twitter"
url = "https://twitter.com/GoHugoIO"

View File

@ -0,0 +1,10 @@
---
title: "Ananke: a Hugo Theme"
description: "The last theme you'll ever need. Maybe."
# 1. To ensure Netlify triggers a build on our exampleSite instance, we need to change a file in the exampleSite directory.
theme_version: '2.8.2'
cascade:
featured_image: '/images/gohugo-default-sample-hero-image.jpg'
---
Welcome to my blog with some of my work in progress. I've been working on this book idea. You can read some of the chapters below.

View File

@ -0,0 +1,11 @@
---
title: "About"
description: "A few years ago, while visiting or, rather, rummaging about Notre-Dame, the author of this book found, in an obscure nook of one of the towers, the following word, engraved by hand upon the wall: —ANANKE."
featured_image: '/images/Victor_Hugo-Hunchback.jpg'
menu:
main:
weight: 1
---
{{< figure src="/images/Victor_Hugo-Hunchback.jpg" title="Illustration from Victor Hugo et son temps (1881)" >}}
_The Hunchback of Notre-Dame_ (French: _Notre-Dame de Paris_) is a French Romantic/Gothic novel by Victor Hugo, published in 1831. The original French title refers to Notre Dame Cathedral, on which the story is centered. English translator Frederic Shoberl named the novel The Hunchback of Notre Dame in 1833 because at the time, Gothic novels were more popular than Romance novels in England. The story is set in Paris, France in the Late Middle Ages, during the reign of Louis XI.

View File

@ -0,0 +1,14 @@
---
title: Contact
featured_image: ''
omit_header_text: true
description: We'd love to hear from you
type: page
menu: main
---
This is an example of a custom shortcode that you can put right into your content. You will need to add a form action to the shortcode to make it work. Check out [Formspree](https://formspree.io/) for a simple, free form service.
{{< form-contact action="https://example.com" >}}

View File

@ -0,0 +1,5 @@
---
title: "Articles"
date: 2017-03-02T12:00:00-05:00
---
Articles are paginated with only three posts here for example. You can set the number of entries to show on this page with the "pagination" setting in the config file.

View File

@ -0,0 +1,81 @@
---
date: 2017-04-09T10:58:08-04:00
description: "The Grand Hall"
featured_image: "/images/Pope-Edouard-de-Beaumont-1844.jpg"
tags: ["scene"]
title: "Chapter I: The Grand Hall"
---
Three hundred and forty-eight years, six months, and nineteen days ago
to-day, the Parisians awoke to the sound of all the bells in the triple
circuit of the city, the university, and the town ringing a full peal.
The sixth of January, 1482, is not, however, a day of which history has
preserved the memory. There was nothing notable in the event which thus
set the bells and the bourgeois of Paris in a ferment from early morning.
It was neither an assault by the Picards nor the Burgundians, nor a hunt
led along in procession, nor a revolt of scholars in the town of Laas, nor
an entry of “our much dread lord, monsieur the king,” nor even a pretty
hanging of male and female thieves by the courts of Paris. Neither was it
the arrival, so frequent in the fifteenth century, of some plumed and
bedizened embassy. It was barely two days since the last cavalcade of that
nature, that of the Flemish ambassadors charged with concluding the
marriage between the dauphin and Marguerite of Flanders, had made its
entry into Paris, to the great annoyance of M. le Cardinal de Bourbon,
who, for the sake of pleasing the king, had been obliged to assume an
amiable mien towards this whole rustic rabble of Flemish burgomasters, and
to regale them at his Hôtel de Bourbon, with a very “pretty morality,
allegorical satire, and farce,” while a driving rain drenched the
magnificent tapestries at his door.
What put the “whole population of Paris in commotion,” as Jehan de Troyes
expresses it, on the sixth of January, was the double solemnity, united
from time immemorial, of the Epiphany and the Feast of Fools.
On that day, there was to be a bonfire on the Place de Grève, a maypole at
the Chapelle de Braque, and a mystery at the Palais de Justice. It had
been cried, to the sound of the trumpet, the preceding evening at all the
cross roads, by the provosts men, clad in handsome, short, sleeveless
coats of violet camelot, with large white crosses upon their breasts.
So the crowd of citizens, male and female, having closed their houses and
shops, thronged from every direction, at early morn, towards some one of
the three spots designated.
Each had made his choice; one, the bonfire; another, the maypole; another,
the mystery play. It must be stated, in honor of the good sense of the
loungers of Paris, that the greater part of this crowd directed their
steps towards the bonfire, which was quite in season, or towards the
mystery play, which was to be presented in the grand hall of the Palais de
Justice (the courts of law), which was well roofed and walled; and that
the curious left the poor, scantily flowered maypole to shiver all alone
beneath the sky of January, in the cemetery of the Chapel of Braque.
The populace thronged the avenues of the law courts in particular, because
they knew that the Flemish ambassadors, who had arrived two days
previously, intended to be present at the representation of the mystery,
and at the election of the Pope of the Fools, which was also to take place
in the grand hall.
It was no easy matter on that day, to force ones way into that grand
hall, although it was then reputed to be the largest covered enclosure in
the world (it is true that Sauval had not yet measured the grand hall of
the Château of Montargis). The palace place, encumbered with people,
offered to the curious gazers at the windows the aspect of a sea; into
which five or six streets, like so many mouths of rivers, discharged every
moment fresh floods of heads. The waves of this crowd, augmented
incessantly, dashed against the angles of the houses which projected here
and there, like so many promontories, into the irregular basin of the
place. In the centre of the lofty Gothic* façade of the palace, the grand
staircase, incessantly ascended and descended by a double current, which,
after parting on the intermediate landing-place, flowed in broad waves
along its lateral slopes,—the grand staircase, I say, trickled
incessantly into the place, like a cascade into a lake. The cries, the
laughter, the trampling of those thousands of feet, produced a great noise
and a great clamor. From time to time, this noise and clamor redoubled;
the current which drove the crowd towards the grand staircase flowed
backwards, became troubled, formed whirlpools. This was produced by the
buffet of an archer, or the horse of one of the provosts sergeants, which
kicked to restore order; an admirable tradition which the provostship has
bequeathed to the constablery, the constablery to the _maréchaussée_,
the _maréchaussée_ to our _gendarmeri_ of Paris.

View File

@ -0,0 +1,90 @@
---
date: 2017-04-10T11:00:59-04:00
description: "Pierre Gringoire"
featured_image: ""
tags: []
title: "Chapter II: Pierre Gringoire"
---
Nevertheless, as be harangued them, the satisfaction and admiration
unanimously excited by his costume were dissipated by his words; and when
he reached that untoward conclusion: “As soon as his illustrious eminence,
the cardinal, arrives, we will begin,” his voice was drowned in a thunder
of hooting.
“Begin instantly! The mystery! the mystery immediately!” shrieked the
people. And above all the voices, that of Johannes de Molendino was
audible, piercing the uproar like the fifes derisive serenade: “Commence
instantly!” yelped the scholar.
“Down with Jupiter and the Cardinal de Bourbon!” vociferated Robin
Poussepain and the other clerks perched in the window.
“The morality this very instant!” repeated the crowd; “this very instant!
the sack and the rope for the comedians, and the cardinal!”
Poor Jupiter, haggard, frightened, pale beneath his rouge, dropped his
thunderbolt, took his cap in his hand; then he bowed and trembled and
stammered: “His eminence—the ambassadors—Madame Marguerite of
Flanders—.” He did not know what to say. In truth, he was afraid of
being hung.
Hung by the populace for waiting, hung by the cardinal for not having
waited, he saw between the two dilemmas only an abyss; that is to say, a
gallows.
Luckily, some one came to rescue him from his embarrassment, and assume
the responsibility.
An individual who was standing beyond the railing, in the free space
around the marble table, and whom no one had yet caught sight of, since
his long, thin body was completely sheltered from every visual ray by the
diameter of the pillar against which he was leaning; this individual, we
say, tall, gaunt, pallid, blond, still young, although already wrinkled
about the brow and cheeks, with brilliant eyes and a smiling mouth, clad
in garments of black serge, worn and shining with age, approached the
marble table, and made a sign to the poor sufferer. But the other was so
confused that he did not see him. The new comer advanced another step.
“Jupiter,” said he, “my dear Jupiter!”
The other did not hear.
At last, the tall blond, driven out of patience, shrieked almost in his
face,—
“Michel Giborne!”
“Who calls me?” said Jupiter, as though awakened with a start.
“I,” replied the person clad in black.
“Ah!” said Jupiter.
“Begin at once,” went on the other. “Satisfy the populace; I undertake to
appease the bailiff, who will appease monsieur the cardinal.”
Jupiter breathed once more.
“Messeigneurs the bourgeois,” he cried, at the top of his lungs to the
crowd, which continued to hoot him, “we are going to begin at once.”
“_Evoe Jupiter! Plaudite cives_! All hail, Jupiter! Applaud,
citizens!” shouted the scholars.
“Noel! Noel! good, good,” shouted the people.
The hand clapping was deafening, and Jupiter had already withdrawn under
his tapestry, while the hall still trembled with acclamations.
In the meanwhile, the personage who had so magically turned the tempest
into dead calm, as our old and dear Corneille puts it, had modestly
retreated to the half-shadow of his pillar, and would, no doubt, have
remained invisible there, motionless, and mute as before, had he not been
plucked by the sleeve by two young women, who, standing in the front row
of the spectators, had noticed his colloquy with Michel Giborne-Jupiter.
“Master,” said one of them, making him a sign to approach. “Hold your
tongue, my dear Liénarde,” said her neighbor, pretty, fresh, and very
brave, in consequence of being dressed up in her best attire. “He is not a
clerk, he is a layman; you must not say master to him, but messire.”

View File

@ -0,0 +1,100 @@
---
date: 2017-04-11T11:13:32-04:00
description: "Monsieur the Cardinal"
featured_image: ""
tags: []
title: "Chapter III: Monsieur the Cardinal"
---
Poor Gringoire! the din of all the great double petards of the Saint-Jean,
the discharge of twenty arquebuses on supports, the detonation of that
famous serpentine of the Tower of Billy, which, during the siege of Paris,
on Sunday, the twenty-sixth of September, 1465, killed seven Burgundians
at one blow, the explosion of all the powder stored at the gate of the
Temple, would have rent his ears less rudely at that solemn and dramatic
moment, than these few words, which fell from the lips of the usher, “His
eminence, Monseigneur the Cardinal de Bourbon.”
It is not that Pierre Gringoire either feared or disdained monsieur the
cardinal. He had neither the weakness nor the audacity for that. A true
eclectic, as it would be expressed nowadays, Gringoire was one of those
firm and lofty, moderate and calm spirits, which always know how to bear
themselves amid all circumstances (_stare in dimidio rerum_), and who
are full of reason and of liberal philosophy, while still setting store by
cardinals. A rare, precious, and never interrupted race of philosophers to
whom wisdom, like another Ariadne, seems to have given a clew of thread
which they have been walking along unwinding since the beginning of the
world, through the labyrinth of human affairs. One finds them in all ages,
ever the same; that is to say, always according to all times. And, without
reckoning our Pierre Gringoire, who may represent them in the fifteenth
century if we succeed in bestowing upon him the distinction which he
deserves, it certainly was their spirit which animated Father du Breul,
when he wrote, in the sixteenth, these naively sublime words, worthy of
all centuries: “I am a Parisian by nation, and a Parrhisian in language,
for _parrhisia_ in Greek signifies liberty of speech; of which I have
made use even towards messeigneurs the cardinals, uncle and brother to
Monsieur the Prince de Conty, always with respect to their greatness, and
without offending any one of their suite, which is much to say.”
There was then neither hatred for the cardinal, nor disdain for his
presence, in the disagreeable impression produced upon Pierre Gringoire.
Quite the contrary; our poet had too much good sense and too threadbare a
coat, not to attach particular importance to having the numerous allusions
in his prologue, and, in particular, the glorification of the dauphin, son
of the Lion of France, fall upon the most eminent ear. But it is not
interest which predominates in the noble nature of poets. I suppose that
the entity of the poet may be represented by the number ten; it is certain
that a chemist on analyzing and pharmacopolizing it, as Rabelais says,
would find it composed of one part interest to nine parts of self-esteem.
Now, at the moment when the door had opened to admit the cardinal, the
nine parts of self-esteem in Gringoire, swollen and expanded by the breath
of popular admiration, were in a state of prodigious augmentation, beneath
which disappeared, as though stifled, that imperceptible molecule of which
we have just remarked upon in the constitution of poets; a precious
ingredient, by the way, a ballast of reality and humanity, without which
they would not touch the earth. Gringoire enjoyed seeing, feeling,
fingering, so to speak an entire assembly (of knaves, it is true, but what
matters that?) stupefied, petrified, and as though asphyxiated in the
presence of the incommensurable tirades which welled up every instant from
all parts of his bridal song. I affirm that he shared the general
beatitude, and that, quite the reverse of La Fontaine, who, at the
presentation of his comedy of the “Florentine,” asked, “Who is the
ill-bred lout who made that rhapsody?” Gringoire would gladly have
inquired of his neighbor, “Whose masterpiece is this?”
The reader can now judge of the effect produced upon him by the abrupt and
unseasonable arrival of the cardinal.
That which he had to fear was only too fully realized. The entrance of his
eminence upset the audience. All heads turned towards the gallery. It was
no longer possible to hear ones self. “The cardinal! The cardinal!”
repeated all mouths. The unhappy prologue stopped short for the second
time.
The cardinal halted for a moment on the threshold of the estrade. While he
was sending a rather indifferent glance around the audience, the tumult
redoubled. Each person wished to get a better view of him. Each man vied
with the other in thrusting his head over his neighbors shoulder.
He was, in fact, an exalted personage, the sight of whom was well worth
any other comedy. Charles, Cardinal de Bourbon, Archbishop and Comte of
Lyon, Primate of the Gauls, was allied both to Louis XI., through his
brother, Pierre, Seigneur de Beaujeu, who had married the kings eldest
daughter, and to Charles the Bold through his mother, Agnes of Burgundy.
Now, the dominating trait, the peculiar and distinctive trait of the
character of the Primate of the Gauls, was the spirit of the courtier, and
devotion to the powers that be. The reader can form an idea of the
numberless embarrassments which this double relationship had caused him,
and of all the temporal reefs among which his spiritual bark had been
forced to tack, in order not to suffer shipwreck on either Louis or
Charles, that Scylla and that Charybdis which had devoured the Duc de
Nemours and the Constable de Saint-Pol. Thanks to Heavens mercy, he had
made the voyage successfully, and had reached home without hindrance. But
although he was in port, and precisely because he was in port, he never
recalled without disquiet the varied haps of his political career, so long
uneasy and laborious. Thus, he was in the habit of saying that the year
1476 had been “white and black” for him—meaning thereby, that in the
course of that year he had lost his mother, the Duchesse de la
Bourbonnais, and his cousin, the Duke of Burgundy, and that one grief had
consoled him for the other.

View File

@ -0,0 +1,86 @@
---
date: 2017-04-12T11:14:48-04:00
description: "Master Jacques Coppenole"
featured_image: ""
tags: ["scene"]
title: "Chapter IV: Master Jacques Coppenole"
---
While the pensioner of Ghent and his eminence were exchanging very low
bows and a few words in voices still lower, a man of lofty stature, with a
large face and broad shoulders, presented himself, in order to enter
abreast with Guillaume Rym; one would have pronounced him a bull-dog by
the side of a fox. His felt doublet and leather jerkin made a spot on the
velvet and silk which surrounded him. Presuming that he was some groom who
had stolen in, the usher stopped him.
“Hold, my friend, you cannot pass!”
The man in the leather jerkin shouldered him aside.
“What does this knave want with me?” said he, in stentorian tones, which
rendered the entire hall attentive to this strange colloquy. “Dont you
see that I am one of them?”
“Your name?” demanded the usher.
“Jacques Coppenole.”
“Your titles?”
“Hosier at the sign of the Three Little Chains, of Ghent.”
The usher recoiled. One might bring ones self to announce aldermen and
burgomasters, but a hosier was too much. The cardinal was on thorns. All
the people were staring and listening. For two days his eminence had been
exerting his utmost efforts to lick these Flemish bears into shape, and to
render them a little more presentable to the public, and this freak was
startling. But Guillaume Rym, with his polished smile, approached the
usher.
“Announce Master Jacques Coppenole, clerk of the aldermen of the city of
Ghent,” he whispered, very low.
“Usher,” interposed the cardinal, aloud, “announce Master Jacques
Coppenole, clerk of the aldermen of the illustrious city of Ghent.”
This was a mistake. Guillaume Rym alone might have conjured away the
difficulty, but Coppenole had heard the cardinal.
“No, cross of God?” he exclaimed, in his voice of thunder, “Jacques
Coppenole, hosier. Do you hear, usher? Nothing more, nothing less. Cross
of God! hosier; thats fine enough. Monsieur the Archduke has more than
once sought his _gant_\* in my hose.”
_* Got the first idea of a timing._
Laughter and applause burst forth. A jest is always understood in Paris,
and, consequently, always applauded.
Let us add that Coppenole was of the people, and that the auditors which
surrounded him were also of the people. Thus the communication between him
and them had been prompt, electric, and, so to speak, on a level. The
haughty air of the Flemish hosier, by humiliating the courtiers, had
touched in all these plebeian souls that latent sentiment of dignity still
vague and indistinct in the fifteenth century.
This hosier was an equal, who had just held his own before monsieur the
cardinal. A very sweet reflection to poor fellows habituated to respect
and obedience towards the underlings of the sergeants of the bailiff of
Sainte-Geneviève, the cardinals train-bearer.
Coppenole proudly saluted his eminence, who returned the salute of the
all-powerful bourgeois feared by Louis XI. Then, while Guillaume Rym, a
“sage and malicious man,” as Philippe de Comines puts it, watched them
both with a smile of raillery and superiority, each sought his place, the
cardinal quite abashed and troubled, Coppenole tranquil and haughty, and
thinking, no doubt, that his title of hosier was as good as any other,
after all, and that Marie of Burgundy, mother to that Marguerite whom
Coppenole was to-day bestowing in marriage, would have been less afraid of
the cardinal than of the hosier; for it is not a cardinal who would have
stirred up a revolt among the men of Ghent against the favorites of the
daughter of Charles the Bold; it is not a cardinal who could have
fortified the populace with a word against her tears and prayers, when the
Maid of Flanders came to supplicate her people in their behalf, even at
the very foot of the scaffold; while the hosier had only to raise his
leather elbow, in order to cause to fall your two heads, most illustrious
seigneurs, Guy dHymbercourt and Chancellor Guillaume Hugonet.

View File

@ -0,0 +1,17 @@
---
date: 2017-04-13T11:15:58-04:00
description: "Quasimodo"
featured_image: ""
tags: []
title: "Chapter V: Quasimodo"
---
In the twinkling of an eye, all was ready to execute Coppenoles idea. Bourgeois, scholars and law clerks all set to work. The little chapel situated opposite the marble table was selected for the scene of the grinning match. A pane broken in the pretty rose window above the door, left free a circle of stone through which it was agreed that the competitors should thrust their heads. In order to reach it, it was only necessary to mount upon a couple of hogsheads, which had been produced from I know not where, and perched one upon the other, after a fashion. It was settled that each candidate, man or woman (for it was possible to choose a female pope), should, for the sake of leaving the impression of his grimace fresh and complete, cover his face and remain concealed in the chapel until the moment of his appearance. In less than an instant, the chapel was crowded with competitors, upon whom the door was then closed.
Coppenole, from his post, ordered all, directed all, arranged all. During the uproar, the cardinal, no less abashed than Gringoire, had retired with all his suite, under the pretext of business and vespers, without the crowd which his arrival had so deeply stirred being in the least moved by his departure. Guillaume Rym was the only one who noticed his eminences discomfiture. The attention of the populace, like the sun, pursued its revolution; having set out from one end of the hall, and halted for a space in the middle, it had now reached the other end. The marble table, the brocaded gallery had each had their day; it was now the turn of the chapel of Louis XI. Henceforth, the field was open to all folly. There was no one there now, but the Flemings and the rabble.
The grimaces began. The first face which appeared at the aperture, with eyelids turned up to the reds, a mouth open like a maw, and a brow wrinkled like our hussar boots of the Empire, evoked such an inextinguishable peal of laughter that Homer would have taken all these louts for gods. Nevertheless, the grand hall was anything but Olympus, and Gringoires poor Jupiter knew it better than any one else. A second and third grimace followed, then another and another; and the laughter and transports of delight went on increasing. There was in this spectacle, a peculiar power of intoxication and fascination, of which it would be difficult to convey to the reader of our day and our salons any idea.
Let the reader picture to himself a series of visages presenting successively all geometrical forms, from the triangle to the trapezium, from the cone to the polyhedron; all human expressions, from wrath to lewdness; all ages, from the wrinkles of the new-born babe to the wrinkles of the aged and dying; all religious phantasmagories, from Faun to Beelzebub; all animal profiles, from the maw to the beak, from the jowl to the muzzle. Let the reader imagine all these grotesque figures of the Pont Neuf, those nightmares petrified beneath the hand of Germain Pilon, assuming life and breath, and coming in turn to stare you in the face with burning eyes; all the masks of the Carnival of Venice passing in succession before your glass,—in a word, a human kaleidoscope.
The orgy grew more and more Flemish. Teniers could have given but a very imperfect idea of it. Let the reader picture to himself in bacchanal form, Salvator Rosas battle. There were no longer either scholars or ambassadors or bourgeois or men or women; there was no longer any Clopin Trouillefou, nor Gilles Lecornu, nor Marie Quatrelivres, nor Robin Poussepain. All was universal license. The grand hall was no longer anything but a vast furnace of effrontry and joviality, where every mouth was a cry, every individual a posture; everything shouted and howled. The strange visages which came, in turn, to gnash their teeth in the rose window, were like so many brands cast into the brazier; and from the whole of this effervescing crowd, there escaped, as from a furnace, a sharp, piercing, stinging noise, hissing like the wings of a gnat.

View File

@ -0,0 +1,99 @@
---
date: 2017-04-14T11:25:05-04:00
description: "Esmeralda"
featured_image: "/images/esmeralda.jpg"
tags: []
title: "Chapter VI: Esmeralda"
disable_share: false
---
We are delighted to be able to inform the reader, that during the whole of
this scene, Gringoire and his piece had stood firm. His actors, spurred on
by him, had not ceased to spout his comedy, and he had not ceased to
listen to it. He had made up his mind about the tumult, and was determined
to proceed to the end, not giving up the hope of a return of attention on
the part of the public. This gleam of hope acquired fresh life, when he
saw Quasimodo, Coppenole, and the deafening escort of the pope of the
procession of fools quit the hall amid great uproar. The throng rushed
eagerly after them. “Good,” he said to himself, “there go all the
mischief-makers.” Unfortunately, all the mischief-makers constituted the
entire audience. In the twinkling of an eye, the grand hall was empty.
To tell the truth, a few spectators still remained, some scattered, others
in groups around the pillars, women, old men, or children, who had had
enough of the uproar and tumult. Some scholars were still perched astride
of the window-sills, engaged in gazing into the Place.
“Well,” thought Gringoire, “here are still as many as are required to hear
the end of my mystery. They are few in number, but it is a choice
audience, a lettered audience.”
An instant later, a symphony which had been intended to produce the
greatest effect on the arrival of the Virgin, was lacking. Gringoire
perceived that his music had been carried off by the procession of the
Pope of the Fools. “Skip it,” said he, stoically.
He approached a group of bourgeois, who seemed to him to be discussing his
piece. This is the fragment of conversation which he caught,—
“You know, Master Cheneteau, the Hôtel de Navarre, which belonged to
Monsieur de Nemours?”
“Yes, opposite the Chapelle de Braque.”
“Well, the treasury has just let it to Guillaume Alixandre, historian, for
six hivres, eight sols, parisian, a year.”
“How rents are going up!”
“Come,” said Gringoire to himself, with a sigh, “the others are
listening.”
“Comrades,” suddenly shouted one of the young scamps from the window, “La
Esmeralda! La Esmeralda in the Place!”
This word produced a magical effect. Every one who was left in the hall
flew to the windows, climbing the walls in order to see, and repeating,
“La Esmeralda! La Esmeralda?” At the same time, a great sound of applause
was heard from without.
“Whats the meaning of this, of the Esmeralda?” said Gringoire, wringing
his hands in despair. “Ah, good heavens! it seems to be the turn of the
windows now.”
He returned towards the marble table, and saw that the representation had
been interrupted. It was precisely at the instant when Jupiter should have
appeared with his thunder. But Jupiter was standing motionless at the foot
of the stage.
“Michel Giborne!” cried the irritated poet, “what are you doing there? Is
that your part? Come up!”
“Alas!” said Jupiter, “a scholar has just seized the ladder.”
Gringoire looked. It was but too true. All communication between his plot
and its solution was intercepted.
“The rascal,” he murmured. “And why did he take that ladder?”
“In order to go and see the Esmeralda,” replied Jupiter piteously. “He
said, Come, heres a ladder thats of no use! and he took it.”
This was the last blow. Gringoire received it with resignation.
“May the devil fly away with you!” he said to the comedian, “and if I get
my pay, you shall receive yours.”
Then he beat a retreat, with drooping head, but the last in the field,
like a general who has fought well.
And as he descended the winding stairs of the courts: “A fine rabble of
asses and dolts these Parisians!” he muttered between his teeth; “they
come to hear a mystery and dont listen to it at all! They are engrossed
by every one, by Chopin Trouillefou, by the cardinal, by Coppenole, by
Quasimodo, by the devil! but by Madame the Virgin Mary, not at all. If I
had known, Id have given you Virgin Mary; you ninnies! And I! to come to
see faces and behold only backs! to be a poet, and to reap the success of
an apothecary! It is true that Homerus begged through the Greek towns, and
that Naso died in exile among the Muscovites. But may the devil flay me if
I understand what they mean with their Esmeralda! What is that word, in
the first place?—tis Egyptian!”

View File

@ -0,0 +1,8 @@
---
title: "Ananke: Un thème pour Hugo"
description: "Le dernier thème dont vous aurez besoin. Peut-être"
cascade:
featured_image: '/images/gohugo-default-sample-hero-image.jpg'
---
Bienvenue sur mon blog à propos de mon travail du moment. Je travaille sur une idée de livre. Vous pouvez lire quelques chapitres plus bas.

View File

@ -0,0 +1,15 @@
---
title: Contact
featured_image: ''
omit_header_text: true
description: Laissez-nous un message!
type: page
menu: main
---
Ceci est la page de contact en Français.
This is an example of a custom shortcode that you can put right into your content. You will need to add a form action to the shortcode to make it work. Check out [Formspree](https://formspree.io/) for a simple, free form service.
{{< form-contact action="https://example.com" >}}

View File

@ -0,0 +1,5 @@
---
title: "Articles"
date: 2017-03-02T12:00:00-05:00
---
Exemple de liste d'article français.

View File

@ -0,0 +1,13 @@
---
date: 2017-04-09T10:58:08-04:00
description: "La grande halle"
featured_image: "/images/Pope-Edouard-de-Beaumont-1844.jpg"
tags: ["scene"]
title: "Chapitre I: La grande halle"
---
Généralement, on utilise un texte en faux latin (le texte ne veut rien dire, il a été modifié), le Lorem ipsum ou Lipsum, qui permet donc de faire office de texte d'attente. L'avantage de le mettre en latin est que l'opérateur sait au premier coup d'oeil que la page contenant ces lignes n'est pas valide, et surtout l'attention du client n'est pas dérangée par le contenu, il demeure concentré seulement sur l'aspect graphique.
Ce texte a pour autre avantage d'utiliser des mots de longueur variable, essayant de simuler une occupation normale. La méthode simpliste consistant à copier-coller un court texte plusieurs fois (« ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ») a l'inconvénient de ne pas permettre une juste appréciation typographique du résultat final.
Il circule des centaines de versions différentes du Lorem ipsum, mais ce texte aurait originellement été tiré de l'ouvrage de Cicéron, De Finibus Bonorum et Malorum (Liber Primus, 32), texte populaire à cette époque, dont l'une des premières phrases est : « Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit... » (« Il n'existe personne qui aime la souffrance pour elle-même, ni qui la recherche ni qui la veuille pour ce qu'elle est... »).

View File

@ -0,0 +1,7 @@
module github.com/theNewDynamic/gohugo-theme-ananke/exampleSite
go 1.14
require github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220421182344-c49009b823de // indirect
replace github.com/theNewDynamic/gohugo-theme-ananke => ../

View File

@ -0,0 +1,6 @@
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829 h1:dxXpDsAqswhvn8pPOC993d217NX/ZbIUSkWz1/awi4s=
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829/go.mod h1:bgj7bjD98mZSR/KOYKuF5lcIgEmTnJ763rZH4EseLv4=
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220421182344-c49009b823de h1:GFOZLfcGsunzwxK9UPAlWyPE1WwQPF/7KLbUyOv27us=
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220421182344-c49009b823de/go.mod h1:yY14BLqqh5G61rO81YcJKMHY1rClY5iIiUK+K2JKSUM=
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220506133956-dd7cded81d83 h1:WzT6TQM/IWBuR0xuCKxfWyuQUxZRHOgzU3+RoVX88Xs=
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220506133956-dd7cded81d83/go.mod h1:yY14BLqqh5G61rO81YcJKMHY1rClY5iIiUK+K2JKSUM=

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

3
themes/ananke/go.mod Normal file
View File

@ -0,0 +1,3 @@
module github.com/theNewDynamic/gohugo-theme-ananke
go 1.14

View File

@ -0,0 +1,38 @@
[more]
other = "Още"
[allTitle]
other = "Всички {{.Title }}"
[recentTitle]
other = "Последни {{.Title }}"
[readMore]
other = "виж още"
[whatsInThis]
other = "Съдържание {{ .Type }}"
[related]
other = "Подобни"
[yourName]
other = "Вашето име"
[emailAddress]
other = "Адрес на елекронна поща"
[message]
other = "Съобщение"
[emailRequiredNote]
other = "Задължително е да предоставите адрес на електронна поща."
[send]
other = "Изпрати"
[taxonomyPageList]
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} страница"

View File

@ -0,0 +1,46 @@
[more]
other = "Més"
[allTitle]
other = "Tots els {{.Title }}"
[recentTitle]
other = "{{.Title }} recents"
[readMore]
other = "Llegir més"
[by]
other = "Per"
[whatsInThis]
other = "Qué hi ha en aquest {{ .Type }}"
[related]
other = "Relacionat"
[yourName]
other = "El teu nom"
[emailAddress]
other = "Adreça de correu electrònic"
[message]
other = "Missatge"
[emailRequiredNote]
other = "És necesari una adreça de correu electrònic."
[send]
other = "Enviar"
[taxonomyPageList]
other = "A continuació trobarà les pàgines associades al terme taxonòmic “{{ .Title }}”"
[readingTime]
one = "Lectura en un minut"
other = "Lectura en {{ .Count }} minuts"
[wordCount]
one = "Una paraula"
other = "{{ .Count }} paraules"

View File

@ -0,0 +1,49 @@
[more]
other = "Mehr"
[allTitle]
other = "Alle {{.Title }}"
[recentTitle]
other = "Neueste {{.Title }}"
[readMore]
other = "weiterlesen"
[by]
other = "Von"
[whatsInThis]
other = "Was ist in dieser {{ .Type }}"
[related]
other = "Ähnliches"
[yourName]
other = "Dein Name"
[emailAddress]
other = "Email Adresse"
[message]
other = "Nachricht"
[emailRequiredNote]
other = "Eine Email Adresse wird benötigt."
[send]
other = "Senden"
[taxonomyPageList]
other = "Beiträge zum Thema “{{ .Title }}”"
[readingTime]
one = "Eine Minute"
other = "{{ .Count }} Minuten"
[wordCount]
one = "Ein Wort"
other = "{{ .Count }} Wörter"
[pageTitle]
other = "{{ .Name }} Seite"

View File

@ -0,0 +1,49 @@
[more]
other = "More"
[allTitle]
other = "All {{.Title }}"
[recentTitle]
other = "Recent {{.Title }}"
[readMore]
other = "read more"
[by]
other = "By"
[whatsInThis]
other = "What's in this {{ .Type }}"
[related]
other = "Related"
[yourName]
other = "Your Name"
[emailAddress]
other = "Email Address"
[message]
other = "Message"
[emailRequiredNote]
other = "An email address is required."
[send]
other = "Send"
[taxonomyPageList]
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
[readingTime]
one = "One minute read"
other = "{{ .Count }} minutes read"
[wordCount]
one = "One word"
other = "{{ .Count }} words"
[pageTitle]
other = "{{ .Name }} page"

View File

@ -0,0 +1,49 @@
[more]
other = "Más"
[allTitle]
other = "Todos los {{.Title }}"
[recentTitle]
other = "{{.Title }} recientes"
[readMore]
other = "Leer más"
[by]
other = "Por"
[whatsInThis]
other = "Qué hay en este {{ .Type }}"
[related]
other = "Relacionado"
[yourName]
other = "Tu nombre"
[emailAddress]
other = "Dirección de correo electrónico"
[message]
other = "Mensaje"
[emailRequiredNote]
other = "Se requiere una dirección de correo electrónico."
[send]
other = "Enviar"
[taxonomyPageList]
other = "A continuación encontrará las páginas asociadas a “{{ .Title }}”"
[readingTime]
one = "Lectura en un minuto"
other = "Lectura en {{ .Count }} minutos"
[wordCount]
one = "Una palabra"
other = "{{ .Count }} palabras"
[pageTitle]
other = "{{ .Name }} pagina"

View File

@ -0,0 +1,46 @@
[more]
other = "Lisää"
[allTitle]
other = "Kaikki kirjoitukset"
[recentTitle]
other = "Viimeisimmät kirjoitukset"
[readMore]
other = "lue lisää"
[whatsInThis]
other = "Sisältö"
[related]
other = "Samankaltaisia kirjoituksia"
[yourName]
other = "sinun nimesi"
[emailAddress]
other = "sähköpostiosoite"
[message]
other = "viesti"
[emailRequiredNote]
other = "Sähköpostiosoite on pakollinen tieto."
[send]
other = "Lähetä"
[taxonomyPageList]
other = "Alla ovat sivut, jotka liittyvät hakusanaasi: “{{ .Title }}”"
[readingTime]
one = "Minuutin lukuaika"
other = "{{ .Count }} minuutin lukuaika"
[wordCount]
one = "Yksi sana"
other = "{{ .Count }} sanaa"
[pageTitle]
other = "{{ .Name }} sivu"

View File

@ -0,0 +1,49 @@
[more]
other = "Plus"
[allTitle]
other = "Tous les {{.Title }}"
[recentTitle]
other = "{{.Title }} récents"
[readMore]
other = "lire plus"
[by]
other = "Par"
[whatsInThis]
other = "Ce qui est dans {{ .Type }}"
[related]
other = "Lié"
[yourName]
other = "Votre nom"
[emailAddress]
other = "Adresse e-mail"
[message]
other = "Message"
[emailRequiredNote]
other = "Une adresse e-mail est requise."
[send]
other = "Envoyer"
[taxonomyPageList]
other = "Ci-dessous se trouvent les pages utilisant le terme taxonomique “{{ .Title }}”"
[readingTime]
one = "Une minute de lecture"
other = "{{ .Count }} minutes de lecture"
[wordCount]
one = "Un mot"
other = "{{ .Count }} mots"
[pageTitle]
other = "{{ .Name }} page"

View File

@ -0,0 +1,49 @@
[more]
other = "עוד"
[allTitle]
other = "כל ה{{.Title }}"
[recentTitle]
other = "לאחרונה ב{{.Title }}"
[readMore]
other = "קראו עוד"
[by]
other = "מאת"
[whatsInThis]
other = "מה בתוך {{ .Type }}"
[related]
other = "קשור"
[yourName]
other = "שמך"
[emailAddress]
other = "כתובת דואר אלקטרוני"
[message]
other = "הודעה"
[emailRequiredNote]
other = "יש להזין כתובת דואר אלקטרוני."
[send]
other = "שליחה"
[taxonomyPageList]
other = "כאן תמצאו את העמודים אשר משתמשים בטקסונומיה “{{ .Title }}”"
[readingTime]
one = "דקת קריאה"
other = "{{ .Count }} דקות קריאה"
[wordCount]
one = "מילה אחת"
other = "{{ .Count }} מילים"
[pageTitle]
other = "עמוד {{ .Name }}"

View File

@ -0,0 +1,35 @@
[more]
other = "अधिक"
[allTitle]
other = "सब {{.Title }}"
[recentTitle]
other = "हाल में {{.Title }}"
[readMore]
other = "और पढ़ें"
[whatsInThis]
other = "इस में क्या है {{ .Type }}"
[related]
other = "संबंधित"
[yourName]
other = "तुम्हारा नाम"
[emailAddress]
other = "ईमेल पता"
[message]
other = "संदेश"
[emailRequiredNote]
other = "एक ईमेल पता की आवश्यकता है।"
[send]
other = "भेजना"
[taxonomyPageList]
other = "नीचे आपको ऐसे पेज मिलेंगे जो वर्गीकरण शब्द का उपयोग करते हैं “{{ .Title }}”"

View File

@ -0,0 +1,38 @@
[more]
other = "Több"
[allTitle]
other = "További {{.Title }}"
[recentTitle]
other = "Friss {{.Title }}"
[readMore]
other = "Részletek"
[whatsInThis]
other = "{{ .Type }}"
[related]
other = "Ajánlott cikkek"
[yourName]
other = "Név"
[emailAddress]
other = "E-mail cím"
[message]
other = "Üzenet"
[emailRequiredNote]
other = "E-mail cím megadása kötelező."
[send]
other = "Küldés"
[taxonomyPageList]
other = "Ezen a lapon a(z) {{ .Title }} kategóriába tartozó cikkeket találod"
[pageTitle]
other = "{{ .Name }} oldal"

View File

@ -0,0 +1,41 @@
[more]
other = "Altro"
[allTitle]
other = "Tutti {{.Title }}"
[recentTitle]
other = "Recenti {{.Title }}"
[readMore]
other = "leggi di più"
[by]
other = "Da"
[whatsInThis]
other = "Cosa c'è in {{ .Type }}"
[related]
other = "Correlati"
[yourName]
other = "Il tuo nome"
[emailAddress]
other = "Indirizzo email"
[message]
other = "Messaggio"
[emailRequiredNote]
other = "Indirizzo email obbligatorio."
[send]
other = "Invia"
[taxonomyPageList]
other = "Di seguito troverai le pagine che utilizzano il termine “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} pagina"

View File

@ -0,0 +1,46 @@
[more]
other = "他の記事も確認する"
[allTitle]
other = "全ての {{.Title }}"
[recentTitle]
other = "最近の {{.Title }}"
[readMore]
other = "もっと読む"
[whatsInThis]
other = "この記事の概要"
[related]
other = "関連"
[yourName]
other = "あなたの名前"
[emailAddress]
other = "Eメール"
[message]
other = "内容"
[emailRequiredNote]
other = "メールアドレスは必須です"
[send]
other = "送信する"
[taxonomyPageList]
other = "以下に、次の分類用語を使用するページがあります “{{ .Title }}”"
[readingTime]
one = "1 分で読めます"
other = "{{ .Count }} 分で読めます"
[wordCount]
one = "1 文字"
other = "{{ .Count }} 文字"
[pageTitle]
other = "{{ .Name }} ページ"

View File

@ -0,0 +1,38 @@
[more]
other = "Meer"
[allTitle]
other = "Alle {{.Title }}"
[recentTitle]
other = "Recente {{.Title }}"
[readMore]
other = "meer lezen"
[whatsInThis]
other = "Inhoud van deze {{ .Type }}"
[related]
other = "Gerelateerd"
[yourName]
other = "Uw naam"
[emailAddress]
other = "E-mail adres"
[message]
other = "Boodschap"
[emailRequiredNote]
other = "Een e-mailadres is vereist."
[send]
other = "Stuur"
[taxonomyPageList]
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} pagina"

View File

@ -0,0 +1,41 @@
[more]
other = "Mer"
[allTitle]
other = "Alle {{.Title }}"
[recentTitle]
other = "Nyeste {{.Title }}"
[readMore]
other = "Les mer"
[by]
other = "Av"
[whatsInThis]
other = "Innhold av {{ .Type }}"
[related]
other = "Relaterte"
[yourName]
other = "Ditt navn"
[emailAddress]
other = "E-postadresse"
[message]
other = "beskjed"
[emailRequiredNote]
other = "E-postadresse er påkrevd"
[send]
other = "Sende"
[taxonomyPageList]
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} side"

View File

@ -0,0 +1,49 @@
[more]
other = "Więcej"
[allTitle]
other = "Wszystkie {{.Title }}"
[recentTitle]
other = "Ostatnie {{.Title }}"
[readMore]
other = "czytaj całość"
[by]
other = "autor"
[whatsInThis]
other = "Co jest w tym {{ .Type }}"
[related]
other = "Powiązane"
[yourName]
other = "Twoje Imię"
[emailAddress]
other = "Adres Email"
[message]
other = "Wiadomość"
[emailRequiredNote]
other = "Adres email jest wymagany"
[send]
other = "Wyślij"
[taxonomyPageList]
other = "Poniżej znajdziesz strony należące do kategorii “{{ .Title }}”"
[readingTime]
one = "Jedna minuta czytania"
other = "{{ .Count }} minut czytania"
[wordCount]
one = "Jedno słowo"
other = "{{ .Count }} słów"
[pageTitle]
other = "{{ .Name }} strona"

View File

@ -0,0 +1,41 @@
[more]
other = "Mais"
[allTitle]
other = "Todo o {{.Title }}"
[recentTitle]
other = "{{.Title }} Recentes"
[readMore]
other = "Leia mais"
[by]
other = "por"
[whatsInThis]
other = "O que há neste {{ .Type }}"
[related]
other = "Relacionado"
[yourName]
other = "O teu nome"
[emailAddress]
other = "Endereço de e-mail"
[message]
other = "Mensagem"
[emailRequiredNote]
other = "É necessário um endereço de e-mail."
[send]
other = "Enviar"
[taxonomyPageList]
other = "Abaixo você encontrará as páginas que utilizam o termo de taxonomia “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} página"

View File

@ -0,0 +1,38 @@
[more]
other = "Ещё"
[allTitle]
other = "Все {{.Title }}"
[recentTitle]
other = "Недавние {{.Title }}"
[readMore]
other = "читать дальше"
[whatsInThis]
other = "Содержание {{ .Type }}"
[related]
other = "Схожие"
[yourName]
other = "Ваше имя"
[emailAddress]
other = "Адрес электронной почты"
[message]
other = "Сообщение"
[emailRequiredNote]
other = "Требуется адрес электронной почты."
[send]
other = "Отправить"
[taxonomyPageList]
other = "Ниже вы найдете страницы, на которых используется термин таксономии “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} страница"

View File

@ -0,0 +1,38 @@
[more]
other = "Mer"
[allTitle]
other = "Alla {{.Title }}"
[recentTitle]
other = "Senaste {{.Title }}"
[readMore]
other = "läs mer"
[whatsInThis]
other = "Innehåll i {{ .Type }}"
[related]
other = "Relaterad"
[yourName]
other = "Ditt namn"
[emailAddress]
other = "E-postadress"
[message]
other = "Meddelande"
[emailRequiredNote]
other = "En e-postadress krävs."
[send]
other = "Skicka"
[taxonomyPageList]
other = "Nedan hittar du alla sidor som är taggade “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} sida"

View File

@ -0,0 +1,38 @@
[more]
other = "Daha fazla"
[allTitle]
other = "Tüm {{.Title }}"
[recentTitle]
other = "Güncel {{.Title }}"
[readMore]
other = "daha fazla oku"
[whatsInThis]
other = "Bu {{ .Type }} ne içeriyor"
[related]
other = "İlişkili"
[yourName]
other = "İsminiz"
[emailAddress]
other = "E-posta Adresi"
[message]
other = "Mesaj"
[emailRequiredNote]
other = "E-posta adresi zorunludur."
[send]
other = "Gönder"
[taxonomyPageList]
other = "Aşağıda, “{{ .Title }}” sınıflandırma terimini kullanan sayfaları bulacaksınız."
[pageTitle]
other = "{{ .Name }} sayfa"

View File

@ -0,0 +1,38 @@
[more]
other = "Ще"
[allTitle]
other = "Усі {{.Title }}"
[recentTitle]
other = "Нещодавні {{.Title }}"
[readMore]
other = "читати далі"
[whatsInThis]
other = "Зміст {{ .Type }}"
[related]
other = "Подібні"
[yourName]
other = "Ваше ім'я"
[emailAddress]
other = "Електронна пошта"
[message]
other = "Повідомлення"
[emailRequiredNote]
other = "Електронна пошта обов'язкова"
[send]
other = "Надіслати"
[taxonomyPageList]
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
[pageTitle]
other = "{{ .Name }} сторінки"

View File

@ -0,0 +1,38 @@
[more]
other = "更多"
[allTitle]
other = "所有 {{.Title }}"
[recentTitle]
other = "最近 {{.Title }}"
[readMore]
other = "繼續閱讀"
[whatsInThis]
other = "這個{{ .Type }}中有"
[related]
other = "相關內容"
[yourName]
other = "你的名字"
[emailAddress]
other = "Email"
[message]
other = "訊息"
[emailRequiredNote]
other = "必須填寫 Email"
[send]
other = "送出"
[taxonomyPageList]
other = "標籤為 “{{ .Title }}” 的頁面如下"
[pageTitle]
other = "{{ .Name }} 頁"

View File

@ -0,0 +1,38 @@
[more]
other = "更多"
[allTitle]
other = "所有 {{.Title }}"
[recentTitle]
other = "最近 {{.Title }}"
[readMore]
other = "继续阅读"
[whatsInThis]
other = "这个{{ .Type }}中有"
[related]
other = "相关內容"
[yourName]
other = "你的名字"
[emailAddress]
other = "电邮地址"
[message]
other = "信息"
[emailRequiredNote]
other = "需要电子邮件地址。"
[send]
other = "发送"
[taxonomyPageList]
other = "标签为“{{ .Title }}”的页面如下"
[pageTitle]
other = "{{ .Name }} 页"

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 KiB

BIN
themes/ananke/images/tn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

View File

@ -0,0 +1,8 @@
{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
{{ define "main" }}
<article class="center cf pv5 measure-wide-l">
<h1>
This is not the page you were looking for
</h1>
</article>
{{ end }}

View File

@ -0,0 +1,53 @@
<!DOCTYPE html>
<html lang="{{ site.LanguageCode | default site.Language.Lang }}" {{- with partialCached "func/GetLanguageDirection" "GetLanguageDirection" }} dir="{{ . }}" {{- end }}>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
{{/* NOTE: the Site's title, and if there is a page title, that is set too */}}
<title>{{ block "title" . }}{{ with .Params.Title }}{{ . }} | {{ end }}{{ .Site.Title }}{{ end }}</title>
<meta name="viewport" content="width=device-width,minimum-scale=1">
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }}">
{{ hugo.Generator }}
{{/* NOTE: For Production make sure you add `HUGO_ENV="production"` before your build command */}}
{{ $production := eq (getenv "HUGO_ENV") "production" | or (eq site.Params.env "production") }}
{{ $public := not .Params.private }}
{{ if and $production $public }}
<meta name="robots" content="index, follow">
{{ else }}
<meta name="robots" content="noindex, nofollow">
{{ end }}
{{ partial "site-style.html" . }}
{{ partial "site-scripts.html" . }}
{{ block "favicon" . }}
{{ partialCached "site-favicon.html" . }}
{{ end }}
{{ if .OutputFormats.Get "RSS" }}
{{ with .OutputFormats.Get "RSS" }}
<link href="{{ .RelPermalink }}" rel="alternate" type="application/rss+xml" title="{{ $.Site.Title }}" />
<link href="{{ .RelPermalink }}" rel="feed" type="application/rss+xml" title="{{ $.Site.Title }}" />
{{ end }}
{{ end }}
{{/* NOTE: These Hugo Internal Templates can be found starting at https://github.com/gohugoio/hugo/tree/master/tpl/tplimpl/embedded/templates */}}
{{- template "_internal/opengraph.html" . -}}
{{- template "_internal/schema.html" . -}}
{{- template "_internal/twitter_cards.html" . -}}
{{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }}
{{ template "_internal/google_analytics.html" . }}
{{ end }}
{{ block "head" . }}{{ partial "head-additions.html" . }}{{ end }}
</head>
<body class="ma0 {{ $.Param "body_classes" | default "avenir bg-near-white"}}{{ with getenv "HUGO_ENV" }} {{ . }}{{ end }}">
{{ block "header" . }}{{ partial "site-header.html" .}}{{ end }}
<main class="pb7" role="main">
{{ block "main" . }}{{ end }}
</main>
{{ block "footer" . }}{{ partialCached "site-footer.html" . }}{{ end }}
</body>
</html>

View File

@ -0,0 +1,3 @@
{{- if eq .Lang "de" "en" "es" "fr" "it" "no" "pt" -}}
{{- i18n "by" -}}
{{ end -}}

View File

@ -0,0 +1,15 @@
{{ define "main" }}
<article class="pa3 pa4-ns nested-copy-line-height">
<section class="cf ph3 ph5-l pv3 pv4-l f4 tc-l center measure-wide lh-copy {{ $.Param "text_color" | default "mid-gray" }}">
{{- .Content -}}
</section>
<section class="flex-ns flex-wrap justify-around mt5">
{{ range .Paginator.Pages }}
<div class="relative w-100 w-30-l mb4 bg-white">
{{ .Render "summary" }}
</div>
{{ end }}
</section>
{{- template "_internal/pagination.html" . -}}
</article>
{{ end }}

View File

@ -0,0 +1,68 @@
{{ define "header" }}
{{/* We can override any block in the baseof file be defining it in the template */}}
{{ partial "page-header.html" . }}
{{ end }}
{{ define "main" }}
{{ $section := .Site.GetPage "section" .Section }}
<article class="flex-l flex-wrap justify-between mw8 center ph3">
<header class="mt4 w-100">
<aside class="instapaper_ignoref b helvetica tracked">
{{/*
CurrentSection allows us to use the section title instead of inferring from the folder.
https://gohugo.io/variables/page/#section-variables-and-methods
*/}}
{{with .CurrentSection.Title }}{{. | upper }}{{end}}
</aside>
{{ partial "social-share.html" . }}
<h1 class="f1 athelas mt3 mb1">
{{- .Title -}}
</h1>
{{ with .Params.author | default .Site.Params.author }}
<p class="tracked">
{{ $.Render "by" }} <strong>
{{- if reflect.IsSlice . -}}
{{ delimit . ", " | markdownify }}
{{- else -}}
{{ . | markdownify }}
{{- end -}}
</strong>
</p>
{{ end }}
{{/* Hugo uses Go's date formatting is set by example. Here are two formats */}}
{{ if not .Date.IsZero }}
<time class="f6 mv4 dib tracked" {{ printf `datetime="%s"` (.Date.Format "2006-01-02T15:04:05Z07:00") | safeHTMLAttr }}>
{{- .Date | time.Format (default "January 2, 2006" .Site.Params.date_format) -}}
</time>
{{end}}
{{/*
Show "reading time" and "word count" but only if one of the following are true:
1) A global config `params` value is set `show_reading_time = true`
2) A section front matter value is set `show_reading_time = true`
3) A page front matter value is set `show_reading_time = true`
*/}}
{{ if (or (eq (.Param "show_reading_time") true) (eq $section.Params.show_reading_time true) )}}
<span class="f6 mv4 dib tracked"> - {{ i18n "readingTime" .ReadingTime }} </span>
<span class="f6 mv4 dib tracked"> - {{ i18n "wordCount" .WordCount }} </span>
{{ end }}
</header>
<div class="nested-copy-line-height lh-copy {{ $.Param "post_content_classes" | default "serif"}} f4 nested-links {{ $.Param "text_color" | default "mid-gray" }} {{ cond (eq $.Site.Language.LanguageDirection "rtl") "pl4-l" "pr4-l" }} w-two-thirds-l">
{{- .Content -}}
{{- partial "tags.html" . -}}
<div class="mt6 instapaper_ignoref">
{{ if .Site.DisqusShortname }}
{{ template "_internal/disqus.html" . }}
{{ end }}
{{ if .Site.Params.commentoEnable }}
{{- partial "commento.html" . -}}
{{ end }}
</div>
</div>
<aside class="w-30-l mt6-l">
{{- partial "menu-contextual.html" . -}}
</aside>
</article>
{{ end }}

View File

@ -0,0 +1,28 @@
{{ $featured_image := partial "func/GetFeaturedImage.html" . }}
<article class="bb b--black-10">
<div class="db pv4 ph3 ph0-l no-underline dark-gray">
<div class="flex flex-column flex-row-ns">
{{ if $featured_image }}
{{/* Trimming the slash and adding absURL make sure the image works no matter where our site lives */}}
<div class="{{ cond (eq $.Site.Language.LanguageDirection "rtl") "pl3-ns" "pr3-ns" }} mb4 mb0-ns w-100 w-40-ns">
<a href="{{.RelPermalink}}" class="db grow">
<img src="{{ $featured_image }}" class="img" alt="image from {{ .Title }}">
</a>
</div>
{{ end }}
<div class="blah w-100{{ if $featured_image }} w-60-ns {{ cond (eq $.Site.Language.LanguageDirection "rtl") "pr3-ns" "pl3-ns" }}{{ end }}">
<h1 class="f3 fw1 athelas mt0 lh-title">
<a href="{{.RelPermalink}}" class="color-inherit dim link">
{{ .Title }}
</a>
</h1>
<div class="f6 f5-l lh-copy nested-copy-line-height nested-links">
{{ .Summary }}
</div>
<a href="{{.RelPermalink}}" class="ba b--moon-gray bg-light-gray br2 color-inherit dib f7 hover-bg-moon-gray link mt2 ph2 pv1">{{ $.Param "read_more_copy" | default (i18n "readMore") }}</a>
{{/* TODO: add author
<p class="f6 lh-copy mv0">By {{ .Author }}</p> */}}
</div>
</div>
</div>
</article>

View File

@ -0,0 +1,13 @@
<div class="relative w-100 mb4 bg-white nested-copy-line-height">
<div class="bg-white mb3 pa4 gray overflow-hidden">
{{with .CurrentSection.Title }}<span class="f6 db">{{ . }}</span>{{end}}
<h1 class="f3 near-black">
<a href="{{ .RelPermalink }}" class="link black dim">
{{ .Title }}
</a>
</h1>
<div class="nested-links f5 lh-copy nested-copy-line-height">
{{ .Summary }}
</div>
</div>
</div>

View File

@ -0,0 +1,16 @@
{{ define "main" }}
<article class="cf pa3 pa4-m pa4-l">
<div class="measure-wide-l center f4 lh-copy nested-copy-line-height nested-links {{ $.Param "text_color" | default "mid-gray" }}">
<p>{{ i18n "taxonomyPageList" . }}</p>
</div>
</article>
<div class="mw8 center">
<section class="flex-ns flex-wrap justify-around mt5">
{{ range .Pages }}
<div class="relative w-100 mb4 bg-white">
{{ .Render "summary" }}
</div>
{{ end }}
</section>
</div>
{{ end }}

View File

@ -0,0 +1,22 @@
{{ define "main" }}
{{ $data := .Data }}
<article class="cf pa3 pa4-m pa4-l">
<div class="measure-wide-l center f4 lh-copy nested-copy-line-height nested-links {{ $.Param "text_color" | default "mid-gray" }}">
{{ .Content }}
</div>
</article>
<div class="mw8 center">
<section class="ph4">
{{ range $term := .Data.Pages }}
<h2 class="f1">
<a href="{{ $term.RelPermalink }}" class="link blue hover-black">
{{ $.Data.Singular | humanize }}: {{ $term.LinkTitle }}
</a>
</h2>
{{ range $term.Pages }}
{{ .Render "summary" }}
{{ end }}
{{ end }}
</section>
</div>
{{ end }}

View File

@ -0,0 +1,55 @@
{{ define "main" }}
<article class="cf ph3 ph5-l pv3 pv4-l f4 tc-l center measure-wide lh-copy {{ $.Param "text_color" | default "mid-gray" }}">
{{ .Content }}
</article>
{{/* Define a section to pull recent posts from. For Hugo 0.20 this will default to the section with the most number of pages. */}}
{{ $mainSections := .Site.Params.mainSections | default (slice "post") }}
{{/* Create a variable with that section to use in multiple places. */}}
{{ $section := where .Site.RegularPages "Section" "in" $mainSections }}
{{/* Check to see if the section is defined for ranging through it */}}
{{ $section_count := len $section }}
{{ if ge $section_count 1 }}
{{/* Derive the section name */}}
{{ $section_name := index (.Site.Params.mainSections) 0 }}
<div class="pa3 pa4-ns w-100 w-70-ns center">
{{/* Use $section_name to get the section title. Use "with" to only show it if it exists */}}
{{ with .Site.GetPage "section" $section_name }}
<h1 class="flex-none">
{{ $.Param "recent_copy" | default (i18n "recentTitle" .) }}
</h1>
{{ end }}
{{ $n_posts := $.Param "recent_posts_number" | default 3 }}
<section class="w-100 mw8">
{{/* Range through the first $n_posts items of the section */}}
{{ range (first $n_posts $section) }}
<div class="relative w-100 mb4">
{{ .Render "summary-with-image" }}
</div>
{{ end }}
</section>
{{ if ge $section_count (add $n_posts 1) }}
<section class="w-100">
<h1 class="f3">{{ i18n "more" }}</h1>
{{/* Now, range through the next four after the initial $n_posts items. Nest the requirements, "after" then "first" on the outside */}}
{{ range (first 4 (after $n_posts $section)) }}
<h2 class="f5 fw4 mb4 dib {{ cond (eq $.Site.Language.LanguageDirection "rtl") "ml3" "mr3" }}">
<a href="{{ .RelPermalink }}" class="link black dim">
{{ .Title }}
</a>
</h2>
{{ end }}
{{/* As above, Use $section_name to get the section title, and URL. Use "with" to only show it if it exists */}}
{{ with .Site.GetPage "section" $section_name }}
<a href="{{ .RelPermalink }}" class="link db f6 pa2 br3 bg-mid-gray white dim w4 tc">{{ i18n "allTitle" . }}</a>
{{ end }}
</section>
{{ end }}
</div>
{{ end }}
{{ end }}

View File

@ -0,0 +1,15 @@
{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
{{ define "main" }}
<div class="flex-l mt2 mw8 center">
<article class="center cf pv5 ph3 ph4-ns mw7">
<header>
<h1 class="f1">
{{ .Title }}
</h1>
</header>
<div class="nested-copy-line-height lh-copy f4 nested-links {{ $.Param "text_color" | default "mid-gray" }}">
{{ .Content }}
</div>
</article>
</div>
{{ end }}

View File

@ -0,0 +1,2 @@
<div id="commento"></div>
<script defer src="https://cdn.commento.io/js/commento.js"></script>

View File

@ -0,0 +1,41 @@
{{/*
GetFeaturedImage
This partial gets the url for featured image for a given page.
If a featured_image was set in the page's front matter, then that will be used.
If not set, this will search page resources to find an image that contains the word
"cover", and if found, returns the path to that resource.
If no featured_image was set, and there's no "cover" image in page resources, then
this partial returns an empty string (which evaluates to false).
@return RelPermalink to featured image, or an empty string if not found.
*/}}
{{/* Declare a new string variable, $linkToCover */}}
{{ $linkToCover := "" }}
{{ $matches := "feature,cover" }}
{{/* Use the value from front matter if present */}}
{{ with .Params.featured_image }}
{{/* This is the default case, the image lives in the static directory.
In which case we'll use the static dir */}}
{{ $linkToCover = trim . "/" | absURL }}
{{/* If we find a Page Resource matching the exact value, we use it instead. */}}
{{ with $.Resources.GetMatch . }}
{{ $linkToCover = .RelPermalink }}
{{ end }}
{{/* Find the first image with 'cover' in the name in this page bundle. */}}
{{ else }}
{{ with .Resources.ByType "image" }}
{{ with .GetMatch (printf "**{%s}*" $matches) }}
{{ $linkToCover = .RelPermalink }}
{{ end }}
{{ end }}
{{ end }}
{{/* return either a permalink, or an empty string. Note that partials can only have a single
return statement, so this needs to be at the end of the partial (and not in the if block) */}}
{{ return $linkToCover }}

View File

@ -0,0 +1,7 @@
{{ $dir := "" }}
{{ if ge hugo.Version "0.67.1" }}
{{ with site.Language.LanguageDirection }}
{{ $dir = . }}
{{ end }}
{{ end }}
{{ return $dir }}

View File

@ -0,0 +1,45 @@
{{/*
socials/Get
Returns the list of services registered by the user complemented by the built-in service default data if found.
@author @regisphilibert
@context Any (.)
@access public
@returns Slice of Maps
- String (.name)
String (.url)
String (.label)
String (.color)?
Bool (.share)?
@uses
- partial
@example - Go Template
{{ with partialCached "socials/Get" context context }}
{{ something = . }}
{{ end }}
*/}}
{{ $socials := slice }}
{{ with partial "func/socials/GetRegisteredServices" "GetRegisteredServices" }}
{{ range . }}
{{ $service := . }}
{{/* We fetch the default data and add it to service map if found */}}
{{ with partialCached "func/socials/GetServiceData" .name .name }}
{{ $service = merge . $service }}
{{ end }}
{{/* We fetch the icon and add it to service map fi found */}}
{{ with partialCached "func/socials/GetServiceIcon" .name .name }}
{{ $service = $service | merge (dict "icon" . ) }}
{{ end }}
{{/* In case no label is provided (on a non-built-in service) we add the .name as label to the service map */}}
{{ with .label }}{{ else }}
{{ $service = $service | merge (dict "label" $service.name ) }}
{{ end }}
{{ $socials = $socials | append $service }}
{{ end }}
{{ end }}
{{ return $socials }}

View File

@ -0,0 +1,73 @@
{{/*
GetBuiltInServicesData
Returns a map whose keys stores the map of defaults data for any built-in service.
We use a key to easily grab the data with `index $that github`
@author @regisphilibert
@context Any (.)
@access public
@returns Map
## Contributors can add a built-in service
1. Adding it to the following map with the following format:
```yaml
# [...]
shinyandnew:
label: Shiny And New
color: '#cccccc'
```
2. Edit README file with new service https://github.com/theNewDynamic/gohugo-theme-ananke/tree/422-improve-socials#built-in-services
*/}}
{{ return (`
facebook:
share: true
label: Facebook
color: '#3b5998'
twitter:
share: true
label: Twitter
color: '#1da1f2'
instagram:
label: Instagram
color: '#e1306c'
youtube:
label: YouTube
color: '#cd201f'
github:
label: GitHub
color: '#6cc644'
gitlab:
label: GitLab
color: '#FC6D26'
keybase:
label: Keybase
color: '#3d76ff'
linkedin:
share: true
label: LinkedIn
color: '#0077b5'
medium:
label: Medium
color: '#0077b5'
mastodon:
label: Mastodon
color: '#6364FF'
slack:
label: Slack
color: '#E01E5A'
stackoverflow:
label: Stack Overflow
color: '#f48024'
rss:
label: RSS
color: '#ff6f1a'
tiktok:
label: TikTok
color: '#fe2c55'
` | transform.Unmarshal) }}

View File

@ -0,0 +1,45 @@
{{/*
socials/GetRegisteredServices
Retrieves the list of user registered services.
Support legacy settings (root of params with service name as key)
@author @regisphilibert
@context Any (.)
@access private
@returns Slice of Maps
- String (.name)
String (.url)
String (.label)?
String (.color)?
*/}}
{{ $registered_services := slice }}
{{/* We first look for legacy settings that lives at the root of the site.Params as such (github: https://github.com/
theNewDynamic) and them to the list with key as .name and value as .url */}}
{{ $user_using_legacy := false }}
{{ $legacy_api_services := slice "facebook" "twitter" "instagram" "youtube" "github" "gitlab" "keybase" "linkedin" "medium" "mastodon" "slack" "stackoverflow" "rss" }}
{{ range $name := $legacy_api_services }}
{{ with $url := index site.Params . }}
{{/* If we can find a parameter matching the key with a set value, we add it with proper name and url */}}
{{/* We also note that user is using legacy for potential potential deprecation warnings */}}
{{ $user_using_legacy = true }}
{{ $registered_services = $registered_services | append (dict "name" $name "url" $url) }}
{{ end }}
{{ end }}
{{/* Then we go through the current way of registering services as per referenced in README */}}
{{ with site.Params.ananke_socials }}
{{ range $service := . }}
{{/* Only if the service has a .name, we add it all its keys to the slice of registered services */}}
{{ with .name }}
{{ $registered_services = $registered_services | append $service }}
{{ end }}
{{ end }}
{{ end }}
{{ return $registered_services }}

View File

@ -0,0 +1,27 @@
{{/*
socials/GetServiceDefaults
Returns the defaults of any given service as stored in GetBuildInServicesDefaults
@author @regisphilibert
@context String (.)
@access private
@returns Map
- String (.label)
String (.color)
@uses
- func/socials/GetBuiltInServicesDefaults
*/}}
{{ $service_data := dict }}
{{ with partialCached "func/socials/GetBuiltInServicesDefaults" "socials/GetBuiltInServicesDefaults" }}
{{/* If the passed context string (held in $) is found as a key of the map returned by the above returning partial
We store it in the returning variable */}}
{{ with index . $ }}
{{ $service_data = . }}
{{ end }}
{{ end }}
{{ return $service_data }}

View File

@ -0,0 +1,21 @@
{{/*
GetServiceIcon
User can overwrite/complement in assets/ananke/socials/{service_name}.svg
@author @regisphilibert
@context String (.)
@access private
@return String of safe HTML
@example - Go Template
{{ $icon := partialCached "tnd-socials/private/GetIcon" $icon $icon }}
*/}}
{{ $icon := "" }}
{{ with resources.Get (printf "ananke/socials/%s.svg" $) }}
{{ $icon = .Content | safeHTML }}
{{ end }}
{{ return $icon }}

View File

@ -0,0 +1,78 @@
{{/*
style/GetMainCSS
Process the main css stylesheet and return as resource
@author @regisphilibert
@context Any (.)
@returns Resource
@uses
- func/style/GetResource
*/}}
{{ $main_style := dict }}
{{/* We prepare a slice of resources to be concatenated as one */}}
{{ $assets_to_concat := slice }}
{{/* We add locale css files to the slice in the proper order */}}
{{ range slice "_tachyons.css" "_code.css" "_hugo-internal-templates.css" "_social-icons.css" "_styles.css" }}
{{ with partialCached "func/style/GetResource" . . }}
{{ $assets_to_concat = $assets_to_concat | append . }}
{{ end }}
{{ end }}
{{ with partialCached "func/socials/Get" "socials/Get" }}
{{ $socials_rules := slice }}
{{ range $service := . }}
{{ with .color }}
{{ $rule := printf `
.ananke-socials a.%s:hover {
color: %s
}` $service.name $service.color }}
{{ $socials_rules = $socials_rules | append $rule }}
{{ end }}
{{ end }}
{{ with $socials_rules }}
{{ $socials_rules = delimit . "" }}
{{ $socials_css := $socials_rules | resources.FromString "ananke/css/generated_socials.css" }}
{{ $assets_to_concat = $assets_to_concat | append $socials_css }}
{{ end }}
{{ end }}
{{/* We look for any custom css files registered by the user under `site.params.custom_css and if found in the theme's
css asset directory we (unless condition below) add to aforementioned slice */}}
{{ with site.Params.custom_css }}
{{ range . }}
{{ with partialCached "func/style/GetResource" . . }}
{{ if eq .MediaType.SubType "x-scss" "x-sass" "scss" "sass" }}
{{ if hugo.IsExtended }}
{{/* as we cannot concatenate styles of different types, we sass/scss to be transformed to css beforehand */}}
{{ $assets_to_concat = $assets_to_concat | append (. | resources.ToCSS) }}
{{ else }}
{{ partial "func/warn" (printf "Processing of stylesheet %s of type %s has been skipped. You need Hugo Extended to process such files." .Name .MediaType.SubType) }}
{{ end }}
{{ else }}
{{ $assets_to_concat = $assets_to_concat | append . }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ with $assets_to_concat }}
{{/* We proceed to concatenate the $assets_to_concat */}}
{{ $style := . | resources.Concat "ananke/css/main.css" }}
{{/* We then use toCSS to add sourceMap and minify */}}
{{ $options := dict "enableSourceMap" true "precision" 6 }}
{{ $style = $style | resources.ToCSS $options | minify }}
{{/* We fingerprint in production for cache busting purposes */}}
{{ if eq (getenv "HUGO_ENV") "production" }}
{{ $style = $style | fingerprint }}
{{ end }}
{{/* We're ready to set returning variable with resulting resource */}}
{{ $main_style = $style }}
{{ end }}
{{ return $main_style }}

View File

@ -0,0 +1,19 @@
{{/*
style/GetResource
Get a style asset stored at `/assets/ananke/css`
@author @regisphilibert
@context String (.)
@access private
@returns Resource
*/}}
{{ $resource := dict }}
{{ with resources.Get (print "/ananke/css/" .) }}
{{ $resource = . }}
{{ end }}
{{ return $resource }}

Some files were not shown because too many files have changed in this diff Show More