All notable changes to this project will be documented in this file.
0.5.3-BETA - 06 oct 2021
- Fix top/bottom bar behavior when scrolling (#520)
0.5.2-BETA - 08 sep 2021
- Fix gitalk (really does not work on previous version) (#504 and #507) (thank you @duval1024)
- Replace Google+ with Linkedin as default in exampleSite (#489) (thank you @stiliajohny)
- Fix i18n files (missing keys or wrong key names) and aria-label translation (#479 and #503)
- Add Finnish lang (#500) (thank you @ronjakoi)
- Support gallery title with spaces (#292)
- Properly handle relative URLs (#333) (thank you @sascha-wolf)
- Fix small visual bug on Firefox (#322)
- Remove dom element
<div class="post-actions-wrap>
ifshowActions: false
(#413)
0.5.1-BETA - 27 aug 2021
- Fix fancybox gallery since upgrade to 3.x.x (#490)
- Fix
clearReading
options that was only applied to typeposts
. Now apply to any types ofmainSections
(#492) - Fix merriweather font that only load latin subset, missing other subsets like vietnamese. (#493)
0.5.0-BETA - 14 aug 2021
Theme activities were pretty low since 2019. I maintain the theme on my free time and in 2019 I became a dad. You may (or not) understand that it was hard for me to find time to maintain the project.
I recently find a great motiviation to re-maintain with more frequent updates and releases! Some big changes will comes to try to use latest Hugo's improvements and features. The goal is to release the
1.0.0
for the end of this year.
I'd like to thank every existing contributors. And not only people that pushing code. During that period, I've seen some people trying to help other people on issue! I really appreciate.
If you'd like to start helping you can firstly look on that list of labelled issues good first issue, ideal for contribution, help wanted
- Synch from Hexo Tranquilpeak theme 3.1.0 (#287)
- Check https://github.com/LouisBarranqueiro/hexo-theme-tranquilpeak/releases to get more informations
- Notables changes:
- Update Font Awesome to v5
- Accessibility: add
aria-label
HTML attribute to links - Close about page when clicking on its background
- Add Gitalk comment component
- Revamp sidebar translation in order to use
transform3d
which is way more efficiant in term of performance (#364) - De-hardcode main section as recommended in Hugo documentation (#444)
- Create a new shortcode
{{< toc >}}
to replace previous HTML comment<!-- toc -->
that does not work anymore with latest Hugo's markdown engine (#395) - Update every 3rd party dependencies (except MathJax*):
- highlight.js
9.12.0
->11.1.0
- jQuery
2.2.4
->3.6.0
- jQuery fancybox
2.1.4
->3.5.7
- prism
1.8.3
->1.24.1
- font-awesome
4.7.0
->5.15.3
- highlight.js
- Add touch event support for closing sidebar when opened (#475)
* I'm not using Math's stuffs at all, so it's hard for me to check no-regression. That why I'm looking for some help by creating a new post that expose Math feature. See issue #478. ↩
Hugo Tranquilpeak now uses Font Awesome v5. In this new version, Font Awesome has separated web fonts in 3 categories: regular, solid and brands. Because of that, you now have to update your icons in the sidebar configuration and sharing options in the theme configuration to tell Font Awesome in which web fonts your icons are:
- fa: for regular and solid icon
- fas: for solid icon only
- far: for regular icon only
- fab: for brand icons
Some icon names have also changed, so if at the end of the process, some icons are not displayed, make sure they still exist here: Font Awesome v5 - icons
Here is an example to help you upgrade to the new version:
Before (config.toml
):
# ------------
# Sidebar menu
# ------------
[[menu.main]]
weight = 1
identifier = "home"
name = "Home"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-home\"></i>"
url = "/"
[[menu.main]]
weight = 2
identifier = "categories"
name = "Categories"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-bookmark\"></i>"
url = "/categories"
[[menu.main]]
weight = 3
identifier = "tags"
name = "Tags"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-tags\"></i>"
url = "/tags"
[[menu.main]]
weight = 4
identifier = "archives"
name = "Archives"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-archive\"></i>"
url = "/archives"
[[menu.main]]
weight = 5
identifier = "about"
name = "About"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-question\"></i>"
url = "/#about"
[[menu.links]]
weight = 1
identifier = "github"
name = "GitHub"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-github\"></i>"
url = "https://github.com/kakawait"
[[menu.links]]
weight = 2
identifier = "stackoverflow"
name = "Stack Overflow"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-stack-overflow\"></i>"
url = "https://stackoverflow.com/users/636472/kakawait"
[[menu.misc]]
weight = 1
identifier = "rss"
name = "RSS"
pre = "<i class=\"sidebar-button-icon fa fa-lg fa-rss\"></i>"
url = "/index.xml"
[params]
# Sharing options
# Comment and uncomment to enable or disable sharing options
# If you wanna add a sharing option, read user documentation :
# Tranquilpeak configuration > Theme configuration > sharing-options
[[params.sharingOptions]]
name = "Facebook"
icon = "fa-facebook-official"
url = "https://www.facebook.com/sharer/sharer.php?u=%s"
[[params.sharingOptions]]
name = "Twitter"
icon = "fa-twitter"
url = "https://twitter.com/intent/tweet?text=%s"
[[params.sharingOptions]]
name = "Google+"
icon = "fa-google-plus"
url = "https://plus.google.com/share?url=%s"
After (config.toml
):
# ------------
# Sidebar menu
# ------------
[[menu.main]]
weight = 1
identifier = "home"
name = "Home"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-home\" aria-hidden=\"true\"></i>"
url = "/"
[[menu.main]]
weight = 2
identifier = "categories"
name = "Categories"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-bookmark\" aria-hidden=\"true\"></i>"
url = "/categories"
[[menu.main]]
weight = 3
identifier = "tags"
name = "Tags"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-tags\" aria-hidden=\"true\"></i>"
url = "/tags"
[[menu.main]]
weight = 4
identifier = "archives"
name = "Archives"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-archive\" aria-hidden=\"true\"></i>"
url = "/archives"
[[menu.main]]
weight = 5
identifier = "about"
name = "About"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-question\" aria-hidden=\"true\"></i>"
url = "/#about"
[[menu.links]]
weight = 1
identifier = "github"
name = "GitHub"
pre = "<i class=\"sidebar-button-icon fab fa-lg fa-github\" aria-hidden=\"true\"></i>"
url = "https://github.com/kakawait"
[[menu.links]]
weight = 2
identifier = "stackoverflow"
name = "Stack Overflow"
pre = "<i class=\"sidebar-button-icon fab fa-lg fa-stack-overflow\" aria-hidden=\"true\"></i>"
url = "https://stackoverflow.com/users/636472/kakawait"
[[menu.misc]]
weight = 1
identifier = "rss"
name = "RSS"
pre = "<i class=\"sidebar-button-icon fas fa-lg fa-rss\" aria-hidden=\"true\"></i>"
url = "/index.xml"
[params]
# ---------------
# Sharing options
# ---------------
# Comment and uncomment to enable or disable sharing options
# If you wanna add a sharing option, read user documentation :
# Tranquilpeak configuration > Theme configuration > sharing-options
[[params.sharingOptions]]
name = "Facebook"
icon = "fab fa-facebook-square"
url = "https://www.facebook.com/sharer/sharer.php?u=%s"
[[params.sharingOptions]]
name = "Twitter"
icon = "fab fa-twitter"
url = "https://twitter.com/intent/tweet?text=%s"
# Removed Google+ because service was shutdown
Until now, Hugo Tranquilpeak was using hardcoded main section post
. That force you to have the following content structure:
content/
post/
your-post.md
other-post.md
Since 0.5.0-BETA
Hugo tranquilpeak will now follow official recommendation https://gohugo.io/functions/where/#mainsections.
You can configure your main(s) section(s) from config.toml
[params]
mainSections = ['posts']
but by default
If the user has not set this config parameter in their site config, it will default to the section with the most pages.
0.4.8-BETA - 29 may 2020
- Fix regression from Hugo 0.71 (#429)
0.4.7-BETA - 15 aug 2019
- Fix regression from Hugo 0.57 (#371)
0.4.6-BETA - 10 jul 2019
- Fix coverImage url (again) (#358)
0.4.5-BETA - 03 jul 2019
- Remove algolia search if site config is not enable (#283)
- Site config
coverImage
is more consistent with other existing image config, refer to breaking changes (#327) param
coverImage
if relative now based on site base url (#236)- Fix
grunt
build to support newernode
version (#315) - Fix
hugo
warnings/deprecations (#340 & #349) - Add swedish translation (#345) (thank you flojon)
As .Hugo
is deprecated, it has been replace by the global function hugo
which appears in (version 0.53).
coverImage
from config.toml
now more consistent by do not fix default static folder to images
(see #327 for more details).
coverImage
from param
will now always based on base path and not relative to current url, thus
coverImage: img/a.jpg
will the be the same as
coverImage: /img/a.jpg
0.4.4-BETA - 09 sep 2018
- Revamp open sidebar behavior to not push the content out of container (#278) (thank you johnsoncodehk)
- Fix category name when using special char (#269)
- Fix param
async
&defer
fromcustomJS
(#289) - Add support of
mailto:
in menu link (#208) - Add support of
MathJax
(#294) - And more see milestone page for complete log
0.4.3-BETA - 12 nov 2017
- Typo fix from
highligth.js
to correct onhighlight.js
(#231) (thank you @zacbook) - Russian translation enhancement (#227)
Since I did an error on highlight.js
for parameter syntaxHighlighter
, sorry but you have to change it again for the correct typo
[params]
syntaxHighlighter = "highlight.js"
0.4.2-BETA - 1 nov 2017
- Support prism.js syntax highlighter in addition to highlight.js (#24)
- Upgrade external JS dependencies
- Fix issue where link to every posts is display inside archive (#203)
- Fix issue on global property
thumbnailimageposition
which was ignored (#179) - Add global property to allow swapping pagination (#202)
Since new syntax highlighter prism.js, you have to configure which syntax highlighter you want to use between highlight.js and prism.js. However if you don't configure it, no syntax highligh will be apply (where previously highlight.js was forced by default).
Please upgrade you're config.toml
(you can checkout exampleSite/config.toml
to see sample) to re-add highlight.js as syntax highlighter (except if you don't need it):
[params]
# There is a typo on highligth.js (which should be highlight.js instead, please checkout version 0.4.3-BETA to get fix)
syntaxHighlighter = "highligth.js"
0.4.1-BETA - 11 sep 2017
- Fix sharing options link generation bug, that break shares (#196)
0.4.0-BETA - 10 sep 2017
- Fix menu ordering (#149, #150)
- Synch from Hexo Tranquilpeak theme 1.10 (#147, #132)
- Italian translation
showMeta
&showActions
(see user doc for more details)- Extensible Sharing options (see user doc for more details)
- XLG side bar bug on Edge
- OLDER POSTS Button Overlaps Sidebar
- Print media queries
- Load external resources using SRI (#159)
- revamp HLjs usage to fix highlighting bugs (#154, #160)
- Improve
customJS
andcustomCSS
- Add theme version on meta tag (#140)
In order to fix menu ordering, you have to upgrade you config.toml
to avoid any menu weight equals to 0
. See https://github.com/kakawait/hugo-tranquilpeak-theme/commit/f4feb3261381bd9a77be4da66d8466322886eb22#diff-991d2a2fe208cdee83955ad6e9a323a7 to get an full example.
With new Sharing options that allow extensible list of sharing options, there is no more hardcoded sharing option inside template. Thus sharing options: Facebook, Twitter and Google plus should be reported inside your config.toml
(you can checkout exampleSite/config.toml
to see sample):
[params]
[[params.sharingOptions]]
name = "Facebook"
icon = "fa-facebook-official"
url = "https://www.facebook.com/sharer/sharer.php?u=%s"
[[params.sharingOptions]]
name = "Twitter"
icon = "fa-twitter"
url = "https://twitter.com/intent/tweet?text=%s"
[[params.sharingOptions]]
name = "Google+"
icon = "fa-google-plus"
url = "https://plus.google.com/share?url=%s"
0.3.1-BETA - 15 apr 2017
- Fix Merriweather font to support non latin chars (#129, #142, #143)
- Fix
exampleSite/config.toml
aboutcustomCSS
andcustomJS
(#137, #141) - Add meta tag
theme
that will contain theme version (#140, #144)
0.3.0-BETA - 9 apr 2017
- Update minimun requirement to Hugo 0.20 (#134)
- Fix warning from Hugo 0.19 (#125) (thank you jmugz3)
- Hugo 0.20 fix 404's page for archive (#111)
Do not support anymore Hugo version < 0.20!
0.2.3-ALPHA - 31 mar 2017
- CSS and JS imports customization (#120) (thank you yamila-moreno)
two news settings:
customCSS = ["css/foo.css"]
customJS = ["js/foo.js"]
That allow you to inject your own CSS
or JS
Related to new Next and Previous behavior #118, nav is now working like following
Next -> Newer post Previous -> Older post
0.2.2-ALPHA - 14 feb 2017
- Page archetype (#106) (thank you @ebouchut)
- Improve documentation (#113, #105) (thank you @ebouchut)
- Update brazilian translation (#101) (thank you @italocegatta)
0.2.1-ALPHA - 8 jan 2017
- Easy customization of head and foot via
/layouts/partials/(head|foot)_(start|end).html
(#80) (thank you @blaubaer) - New front matters to hide/show pagination, social buttons and tags (#81) (thank you @blaubaer)
- Sidebar author avatar link modifiable (#81) (thank you @blaubaer)
[params.sidebar.profile]
url = ...
- Alert shortcode support markdown content (#91)
{{< alert info >}}
Praesent diam elit, **interdum** ut [pulvinar](http://foo.bar) placerat, imperdiet at magna.
{{< /alert >}}
- Add basic post archetype (#76)
- Remove
en.yaml
symlink (#84) - Fix gravatar integration that was broken (#87)
- Fix missing css for post meta (#89)
- Fix front matters
coverSize
(#93)
Related to #84, language code en
does not exist anymore.
Replace if relevant
languageCode = "en"
defaultContentLanguage = "en"
to
languageCode = "en-us"
defaultContentLanguage = "en-us"
0.2.0-ALPHA - 4 dec 2016
- De-bundlize every external scripts/css (#66) for many reasons:
- To use browser cache
- To reduce git repo size
- To easily upgrade dependencies without installing dev env
- First iteration for i18n support (#9), theme currently support following language:
en-us
fr-fr
es-es
ja
pt-br
ru
zh-cn
zh-tw
vi
(thank you @Kiennh)de-de
(thank you @Martin1001)
- Allow some customization on copyright section (#48)
using
[params.footer]
copyright = ...
like
[params.footer]
copyright = "<a href=\"https://github.com/kakawait\">kakawait</a>"
- Add fallback to
monospace
whenMenlo
font is not installed (#68) - Update fontawesome to 4.7.0 (#58)
- Add horizontal scrolling for scrollblock (#71) (thank you @jeremywho)
- Fix missing blog post title when using caption (#65)
- Fix vertical scrolling page opening on Firefox (#69)
Replace
[author]
gravatar_email = "[email protected]"
google_plus = "+YourGooglePlus"
to
[author]
gravatarEmail = "[email protected]"
googlePlus = "+YourGooglePlus"
Replace
[params]
clear_reading = ...
hierarchical_categories = ...
sidebar_behavior = ...
cover_image = ...
image_gallery = ...
thumbnail_image = ...
thumbnail_image_position = ...
auto_thumbnail_image = ...
fb_admin_ids = ...
fb_app_id = ...
category_pagination = ...
archive_pagination = ...
tag_pagination = ...
to
[params]
clearReading = ...
hierarchicalCategories = ...
sidebarBehavior = ...
coverImage = ...
imageGallery = ...
thumbnailImage = ...
thumbnailImagePosition = ...
autoThumbnailImage = ...
fbAdminIds = ...
fbAppId = ...
categoryPagination = ...
archivePagination = ...
tagPagination = ...
Replace
[params.header.right_link]
to
[params.header.rightLink]
0.1.4-ALPHA - 16 nov 2016
- Remove migration scripts (#45)
0.1.3-ALPHA - 16 nov 2016
- Remove unused npm deps (#43)
0.1.2-ALPHA - 16 nov 2016
- Fix archives pages generation by creating
archive
taxonomy (#31) - Use
slug
instead oftitle
for permalink urls (#33)
Add
[taxonomies]
archive = "archives"
0.1.1-ALPHA - 13 nov 2016
- Upgrade Google Analytics script to do not use anymore
ga.js
which is now deprecated (#21) - [Breaking changes] Changes Google Analytics config key from
params.google_analytics_id
to officialgoogleAnalytics
(#21) - Add parameter to choose between sync/async loading of Google Analytics
params.ga.async
(#21)
Replace
[params]
google_analytics_id = "UA-XXX-X"
to (top level)
googleAnalytics = "UA-XXX-X"