summaryrefslogtreecommitdiffstats
path: root/exampleSite
diff options
context:
space:
mode:
authorSerghei Iakovlev <egrep@protonmail.ch>2022-07-09 10:56:46 +0200
committerSerghei Iakovlev <egrep@protonmail.ch>2022-07-09 10:56:46 +0200
commitd3d3f34281e231c256478eb383ad2f286b00a077 (patch)
tree01532e4d87e9daa2aeea1cd466e425b2b0f1eb8a /exampleSite
parent233233e97e9e023c90ceba136b11fe0f5fd7ddce (diff)
downloadgohugo-theme-ed-d3d3f34281e231c256478eb383ad2f286b00a077.tar.gz
Migrate config to yaml
Diffstat (limited to 'exampleSite')
-rw-r--r--exampleSite/config.toml292
-rw-r--r--exampleSite/config/_default/config.yaml323
-rw-r--r--exampleSite/content/documentation/index.md12
3 files changed, 329 insertions, 298 deletions
diff --git a/exampleSite/config.toml b/exampleSite/config.toml
deleted file mode 100644
index b7819ed..0000000
--- a/exampleSite/config.toml
+++ /dev/null
@@ -1,292 +0,0 @@
-# You may need to change this line for your real project.
-baseURL = 'https://gohugo-theme-ed.netlify.app/'
-
-languageCode = 'en-us'
-defaultContentLanguage = 'en'
-
-# Keep title short to prevent overflow.
-# There’s no official guidance on this, but 40 characters for
-# mobile and 60 for desktop is roughly the sweet spot.
-#
-# NB: Final title of shareable pages will be this plus the
-# title of the page. Eg. "Contacts - Ed."
-title = 'Ed.'
-
-# Use full path to theme's repository in case of using Hugo Modules.
-theme = 'github.com/sergeyklay/gohugo-theme-ed'
-
-# You may need to delete this line for your real project.
-resourceDir = '../resources'
-
-enableRobotsTXT = true
-
-# When using ref or relref to resolve page links and a link cannot
-# resolved, it will be logged with this log level.
-refLinksErrorLevel = 'WARNING'
-
-# kick out RSS, we'll use Atom and FEED bellow
-disableKinds = ['RSS']
-
-# Google Analytics Tracking ID.
-# Set `HUGO_ENV` environment variable or `site.Params.env` configuration
-# parameter to "production" to use Google Analytics.
-googleAnalytics = ''
-
-[minify]
- # Do not minify XML files to avoid CDATA escape issues
- disableXML = true
-
-[outputs]
- home = [ 'HTML', 'Atom', 'FEED', 'JSONFEED', 'JSON', 'MANIFEST', 'humanstxt' ]
- section = [ 'HTML', 'Atom', 'FEED', 'JSONFEED' ]
- page = [ 'HTML' ]
- taxonomy = [ 'HTML' ]
- term = [ 'HTML' ]
-
-# Atom feed.
-# For more see: https://validator.w3.org/feed/docs/atom.html#whatIsAtom
-[outputFormats.Atom]
- name = 'Atom'
- # The correct header Content-Type header for an Atom feed is
- # application/atom+xml. However, Chromium does not handle it
- # correctly (see https://code.google.com/p/chromium/issues/detail?id=104358).
- #
- # The most compatible header is 'text/xml; charset=utf-8', which
- # will cause the feed to be parsed correctly by most clients.
- # Note that you should be encoding your feed in UTF-8.
- mediaType = 'text/xml'
- # generated file = <baseName>.<mediaType.'text/xml'.suffixes[0]> = feeds/feed.atom.xml
- baseName = 'feeds/feed.atom'
- rel = 'alternate'
- isPlainText = false
- isHTML = false
- noUgly = true
- permalinkable = false
-
-# no collision with buildin RSS
-[outputFormats.FEED]
- name = 'Feed'
- mediaType = 'text/xml'
- baseName = 'feeds/feed.rss'
- rel = 'alternate'
- isPlainText = false
- isHTML = false
- noUgly = true
- permalinkable = false
-
-# For more see: https://www.jsonfeed.org/
-[outputFormats.JSONFEED]
- name = 'JsonFeed'
- mediaType = 'application/feed+json'
- baseName = 'feeds/feed'
- rel = 'alternate'
- isPlainText = true
- isHTML = false
- noUgly = false
-
-# The .webmanifest extension is specified in the Media type registration
-# section of the specification (the response of the manifest file should
-# return Content-Type: application/manifest+json).
-#
-# For more see: https://w3c.github.io/manifest/#media-type-registration=
-[outputFormats.MANIFEST]
- name = 'Manifest'
- mediaType = 'application/manifest+json'
- baseName = 'manifest'
- rel = 'manifest'
- isPlainText = true
- isHTML = false
- noUgly = false
- notAlternative = true
-
-# For more see: https://gohugo.io/templates/output-formats/
-[outputFormats.humanstxt]
- mediaType = 'text/plain'
- baseName = 'humans'
- rel = 'author'
- isPlainText = true
- isHTML = false
- noUgly = true
- permalinkable = false
- notAlternative = true
-
-[mediaTypes]
- [mediaTypes.'text/xml']
- suffixes = ['xml']
- [mediaTypes.'application/feed+json']
- suffixes = ['json']
- [mediaTypes.'application/manifest+json']
- suffixes = ['webmanifest']
-
-# Sitemap config
-[sitemap]
- changefreq = 'weekly'
- filename = 'sitemap.xml'
- priority = 0.5
-
-[author]
- name = 'John Doe'
- email = 'john@example.com'
- github = 'john_doe'
- twitter = 'john_doe'
- location = 'Kyiv, Ukraine'
-
-[languages]
- [languages.en]
- weight = 1
- languageDirection = 'ltr'
- languageName = 'English'
-
-[params]
- # Site description. Used in meta description
- description = 'Ed is a Hugo theme designed for textual editors based on minimal computing principles, and focused on legibility and flexibility.'
-
- # SEO keywords. Used in 'meta name="keywords"' tag.
- # May be overridden by .Keywords or .Tags in front matter.
- keywords = ['hugo', 'ed', 'hugo theme', 'minimal', 'responsive', 'clean']
-
- # A "copyright"-line to be added to RSS/Atom files.
- # "&copy;" and "{year}" will be replaced by © and the current year.
- copyright = 'Copyright &copy; 2019-{year} John Doe'
-
- # Color scheme. Options: red, orange, magenta, cyan, blue, brown
- colorScheme = ''
-
- # Used in site header
- tagline = 'a Hugo theme for minimal editions'
-
- # Custom footer text on left sidebar. Use HTMl if needed.
- # "&copy;" and "{year}" will be replaced by © and the current year.
- footer = 'Built with <a href="https://github.com/sergeyklay/gohugo-theme-ed" target="_blank" rel="noopener noreferrer">Ed</a>. Distributed under an MIT license.'
-
- # Sections to be displayed in the main page, RSS/Atom feeds as well as search index.
- mainSections = ['posts', 'dramas', 'narratives', 'poems']
-
- # Posts date format, for example: 2006-01-02
- dateFormat = ':date_long'
- dateFormatToc = '2006.01.02'
-
- # Show "Read more" button in list if true
- readmore = true
-
- # RSS/Atom feed size
- feedSize = 25
- recentPostsSize = 5
-
- [params.contact]
- # Forms Backend URL, used in contacts form
- formAction = 'https://submit-form.com/example'
-
- # Contact form email subject
- emailSubject = 'Contact form submission'
-
- # After successful submit, where should the user be redirected?
- thanksUrl = '/thanks'
-
- [params.assets]
- # Site icons, relative to ./static
-
- # favicon.ico for legacy browsers
- favicon = ''
-
- # A single SVG icon with a light/dark version for modern browsers
- svgicon = ''
-
- # 180×180 PNG image for Apple devices
- apple_touch_icon = ''
-
- # Logo image, relative to ./assets
- logo = '/img/open-graph-logo.png'
- disable_fingerprinting = false
-
- [params.seo]
- # Will be used in schema.org/Organization.
- # The site.Title will be used if empty.
- publisher = 'Serghei Iakovlev'
-
-[social]
- # Facebook Page Admin ID for Domain Insights
- facebook_admin = ''
-
- # Facebook Page ID
- facebook_id = ''
-
- # Twitter username for the website used in the card footer
- twitter = 'john_doe'
-
-# For more see https://gohugo.io/content-management/menus/
-[menu]
- [[menu.main]] # sections in the website sidebar
- identifier = 'home' # section id
- name = 'Home' # section display title
- url = '/' # path to the section
- weight = 1 # order of sections
- [[menu.main]]
- identifier = 'about'
- name = 'About'
- url = '/about/'
- weight = 2
- [[menu.main]]
- identifier = 'credits'
- name = 'Credits'
- url = '/credits/'
- weight = 3
- [[menu.main]]
- identifier = 'documentation'
- name = 'Documentation'
- url = '/documentation/'
- weight = 4
- [[menu.main]]
- identifier = 'search'
- name = 'Search'
- url = '/search/'
- weight = 5
- [[menu.main]]
- identifier = 'contact'
- name = 'Contact'
- url = '/contact/'
- weight = 6
- [[menu.main]]
- identifier = 'github'
- name = 'GitHub Project'
- url = 'https://github.com/sergeyklay/gohugo-theme-ed/'
- weight = 20
- [menu.main.params]
- external = true
-
- [[menu.feeds]]
- identifier = 'rss'
- name = 'RSS 2.0'
- url = '/feeds/feed.rss.xml'
- weight = 1
- [[menu.feeds]]
- identifier = 'atom'
- name = 'Atom'
- url = '/feeds/feed.atom.xml'
- weight = 2
- [[menu.feeds]]
- identifier = 'json'
- name = 'Json Feed'
- url = '/feeds/feed.json'
- weight = 3
-
-# For more see https://gohugo.io/getting-started/configuration-markup/
-[markup]
- defaultMarkdownHandler = 'goldmark'
-
- [markup.highlight]
- # Syntax highlight style.
- # For more see https://xyproto.github.io/splash/docs/
- style = 'emacs'
-
- [markup.goldmark]
- [markup.goldmark.parser]
- [markup.goldmark.parser.attribute]
- # Enable custom attribute support for blocks
- block = true
-
-# If enableGitInfo is true, it will override any lastmod dates in our
-# front matter. We should at least allow ourselves to manually override
-# this value in the front matter.
-[frontmatter]
- lastmod = ['lastmod', ':git', 'date', 'publishDate']
diff --git a/exampleSite/config/_default/config.yaml b/exampleSite/config/_default/config.yaml
new file mode 100644
index 0000000..44b37bf
--- /dev/null
+++ b/exampleSite/config/_default/config.yaml
@@ -0,0 +1,323 @@
+# You may need to change this line for your real project.
+baseURL: 'https://gohugo-theme-ed.netlify.app/'
+
+languageCode: en-us
+defaultContentLanguage: en
+
+# Keep title short to prevent overflow.
+# There’s no official guidance on this, but 40 characters for
+# mobile and 60 for desktop is roughly the sweet spot.
+#
+# NB: Final title of shareable pages will be this plus the
+# title of the page. Eg. "Contacts - Ed."
+title: Ed.
+
+# Use full path to theme's repository in case of using Hugo Modules.
+theme: github.com/sergeyklay/gohugo-theme-ed
+
+# You may need to delete this line for your real project.
+resourceDir: ../resources
+
+enableRobotsTXT: true
+
+# When using ref or relref to resolve page links and a link cannot
+# resolved, it will be logged with this log level.
+refLinksErrorLevel: WARNING
+
+# Kick out RSS, we'll use Atom and FEED bellow.
+disableKinds:
+ - RSS
+
+# Google Analytics Tracking ID.
+# Set `HUGO_ENV` environment variable or `site.Params.env` configuration
+# parameter to "production" to use Google Analytics.
+googleAnalytics: ''
+
+minify:
+ # Do not minify XML files to avoid CDATA escape issues
+ disableXML: true
+
+outputs:
+ home:
+ - HTML
+ - Atom
+ - FEED
+ - JSONFEED
+ - JSON
+ - MANIFEST
+ - humanstxt
+ section:
+ - HTML
+ - Atom
+ - FEED
+ - JSONFEED
+ page:
+ - HTML
+ taxonomy:
+ - HTML
+ term:
+ - HTML
+
+outputFormats:
+ # For more see: https://validator.w3.org/feed/docs/atom.html#whatIsAtom
+ Atom:
+ name: Atom
+ # The correct header Content-Type header for an Atom feed is
+ # application/atom+xml. However, Chromium does not handle it
+ # correctly (see https://code.google.com/p/chromium/issues/detail?id=104358).
+ #
+ # The most compatible header is 'text/xml; charset=utf-8', which
+ # will cause the feed to be parsed correctly by most clients.
+ # Note that you should be encoding your feed in UTF-8.
+ mediaType: text/xml
+ # generated file = <baseName>.<mediaType.'text/xml'.suffixes[0]> = feeds/feed.atom.xml
+ baseName: feeds/feed.atom
+ rel: alternate
+ isPlainText: false
+ isHTML: false
+ noUgly: true
+ permalinkable: false
+
+ FEED:
+ name: Feed
+ mediaType: text/xml
+ baseName: feeds/feed.rss
+ rel: alternate
+ isPlainText: false
+ isHTML: false
+ noUgly: true
+ permalinkable: false
+
+ # For more see: https://www.jsonfeed.org/
+ JSONFEED:
+ name: JsonFeed
+ mediaType: application/feed+json
+ baseName: feeds/feed
+ rel: alternate
+ isPlainText: true
+ isHTML: false
+ noUgly: false
+
+ MANIFEST:
+ # The .webmanifest extension is specified in the Media type registration
+ # section of the specification (the response of the manifest file should
+ # return Content-Type: application/manifest+json).
+ #
+ # For more see: https://w3c.github.io/manifest/#media-type-registration=
+ name: Manifest
+ mediaType: application/manifest+json
+ baseName: manifest
+ rel: manifest
+ isPlainText: true
+ isHTML: false
+ noUgly: false
+ notAlternative: true
+
+ # For more see: https://gohugo.io/templates/output-formats/
+ humanstxt:
+ mediaType: text/plain
+ baseName: humans
+ rel: author
+ isPlainText: true
+ isHTML: false
+ noUgly: true
+ permalinkable: false
+ notAlternative: true
+
+mediaTypes:
+ text/xml:
+ suffixes:
+ - xml
+ application/feed+json:
+ suffixes:
+ - json
+ application/manifest+json:
+ suffixes:
+ - webmanifest
+
+# Sitemap config
+sitemap:
+ changefreq: weekly
+ filename: sitemap.xml
+ priority: 0.5
+
+author:
+ name: John Doe
+ email: john@example.com
+ github: john_doe
+ twitter: john_doe
+ location: 'Kyiv, Ukraine'
+
+languages:
+ en:
+ weight: 1
+ languageDirection: ltr
+ languageName: English
+
+params:
+ # Site description. Used in meta description
+ description: >-
+ Ed is a Hugo theme designed for textual editors based on minimal computing
+ principles, and focused on legibility and flexibility.
+
+ # SEO keywords. Used in 'meta name="keywords"' tag.
+ # May be overridden by .Keywords or .Tags in front matter.
+ keywords:
+ - hugo
+ - ed
+ - hugo theme
+ - minimal
+ - responsive
+ - clean
+
+ # A "copyright"-line to be added to RSS/Atom files.
+ # "&copy;" and "{year}" will be replaced by © and the current year.
+ copyright: 'Copyright &copy; 2019-{year} John Doe'
+
+ # Color scheme. Options: red, orange, magenta, cyan, blue, brown
+ colorScheme: ''
+
+ # Used in site header
+ tagline: a Hugo theme for minimal editions
+
+ # Custom footer text on left sidebar. Use HTMl if needed.
+ # "&copy;" and "{year}" will be replaced by © and the current year.
+ footer: >-
+ Built with <a href="https://github.com/sergeyklay/gohugo-theme-ed"
+ target="_blank" rel="noopener noreferrer">Ed</a>. Distributed under an MIT
+ license.
+
+ # Sections to be displayed in the main page, RSS/Atom feeds as well as search index.
+ mainSections:
+ - posts
+ - dramas
+ - narratives
+ - poems
+
+ # Posts date format, for example: 2006-01-02
+ dateFormat: ':date_long'
+ dateFormatToc: 2006.01.02
+
+ # Show "Read more" button in list if true
+ readmore: true
+
+ # RSS/Atom feed size
+ feedSize: 25
+
+ recentPostsSize: 5
+
+ contact:
+ # Forms Backend URL, used in contacts form
+ formAction: 'https://submit-form.com/example'
+
+ # Contact form email subject
+ emailSubject: Contact form submission
+
+ # Where should the user be redirected after successful form submit?
+ thanksUrl: /thanks
+
+ # Site icons, relative to ./static
+ assets:
+ # favicon.ico for legacy browsers
+ favicon: ''
+
+ # A single SVG icon with a light/dark version for modern browsers
+ svgicon: ''
+
+ # 180×180 PNG image for Apple devices
+ apple_touch_icon: ''
+
+ # Logo image, relative to ./assets
+ logo: /img/open-graph-logo.png
+ disable_fingerprinting: false
+ seo:
+ # Will be used in schema.org/Organization.
+ # The site.Title will be used if empty.
+ publisher: Serghei Iakovlev
+
+social:
+ # Facebook Page Admin ID for Domain Insights
+ facebook_admin: ''
+
+ # Facebook Page ID
+ facebook_id: ''
+
+ # Twitter username for the website
+ twitter: john_doe
+
+# For more see https://gohugo.io/content-management/menus/
+menu:
+ main: # sections in the website sidebar
+ - identifier: home # section id
+ name: Home # section display title
+ url: / # path to the section
+ weight: 1 # order of sections
+
+ - identifier: about
+ name: About
+ url: /about/
+ weight: 2
+
+ - identifier: credits
+ name: Credits
+ url: /credits/
+ weight: 3
+
+ - identifier: documentation
+ name: Documentation
+ url: /documentation/
+ weight: 4
+
+ - identifier: search
+ name: Search
+ url: /search/
+ weight: 5
+
+ - identifier: contact
+ name: Contact
+ url: /contact/
+ weight: 6
+
+ - identifier: github
+ name: GitHub Project
+ url: 'https://github.com/sergeyklay/gohugo-theme-ed/'
+ weight: 20
+ params:
+ external: true
+
+ feeds:
+ - identifier: rss
+ name: RSS 2.0
+ url: /feeds/feed.rss.xml
+ weight: 1
+ - identifier: atom
+ name: Atom
+ url: /feeds/feed.atom.xml
+ weight: 2
+ - identifier: json
+ name: Json Feed
+ url: /feeds/feed.json
+ weight: 3
+
+# For more see https://gohugo.io/getting-started/configuration-markup/
+markup:
+ defaultMarkdownHandler: goldmark
+ highlight:
+ # Syntax highlight style.
+ # For more see https://xyproto.github.io/splash/docs/
+ style: emacs
+ goldmark:
+ parser:
+ attribute:
+ # Enable custom attribute support for blocks
+ block: true
+
+# If enableGitInfo is true, it will override any lastmod dates in our
+# front matter. We should at least allow ourselves to manually override
+# this value in the front matter.
+frontmatter:
+ lastmod:
+ - lastmod
+ - ':git'
+ - date
+ - publishDate
diff --git a/exampleSite/content/documentation/index.md b/exampleSite/content/documentation/index.md
index 4989b86..344dc91 100644
--- a/exampleSite/content/documentation/index.md
+++ b/exampleSite/content/documentation/index.md
@@ -32,16 +32,16 @@ If you don't get an error, you're good to go. Using the `cd` command on your ter
$ hugo mod init github.com/<your_user>/<your_project>
~~~
-Take a look inside the [`exampleSite`](https://github.com/sergeyklay/gohugo-theme-ed/tree/master/exampleSite) folder of this theme. You'll find a file called [`config.toml`](https://github.com/sergeyklay/gohugo-theme-ed/blob/master/exampleSite/config.toml). To use it, copy the [`config.toml`](https://github.com/sergeyklay/gohugo-theme-ed/blob/master/exampleSite/config.toml) in the root folder of your Hugo site. Feel free to change the strings in this theme.
+Take a look inside the [`exampleSite`](https://github.com/sergeyklay/gohugo-theme-ed/tree/master/exampleSite) folder of this theme. You'll find a folder called [`config`](https://github.com/sergeyklay/gohugo-theme-ed/blob/master/exampleSite/config). Copy the [`config`](https://github.com/sergeyklay/gohugo-theme-ed/blob/master/exampleSite/config) folder in the project root of your Hugo site. Check the contents of the `config` folder and configure it.
You will need to delete the following line: `resourceDir = '../resources'`, because it's necessary only for theme developers.
-After that, import the theme adding the following lines to `config.yaml`:
+After that, import the theme adding the following lines to `config/_default/config.yaml`:
-~~~ toml
-[module]
-[[module.imports]]
- path = 'github.com/sergeyklay/gohugo-theme-ed'
+~~~ yaml
+module:
+ imports:
+ - path: github.com/sergeyklay/gohugo-theme-ed
~~~
Finally, install Hugo Modules using the following command (remember you can copy and paste):