fix: add support for Hugo v0.55

Requires Hugo v0.55.2+.
Does not work with Hugo v0.55.0 due to bugs fixed in v0.55.2.

Fix #1017
This commit is contained in:
George Cushen 2019-04-17 19:26:51 +01:00
commit 585bdf643b
43 changed files with 218 additions and 255 deletions

View file

@ -74,22 +74,20 @@ You can choose from one of the following four methods to install:
* One-click install of Academic creates an `academic-kickstart` repository in your GitHub or GitLab account * One-click install of Academic creates an `academic-kickstart` repository in your GitHub or GitLab account
* Netlify will provide you with a customizable URL to access your new site, [or get your own domain](https://sourcethemes.com/academic/docs/domain/) * Netlify will provide you with a customizable URL to access your new site, [or get your own domain](https://sourcethemes.com/academic/docs/domain/)
* Shortly after editing content in your repository, your site will automatically update * Shortly after editing content in your repository, your site will automatically update
* Optionally, use [Git](https://git-scm.com/downloads) to clone your new repository to your computer for offline editing * Optionally, to edit your site in a [Markdown editor](https://www.typora.io) on your computer, perform the steps in the [*Install with Git*](#install-with-git) section below
### Install with Git ### Install with Git
Prerequisites: Prerequisites:
* [Download and install Git](https://git-scm.com/downloads) * [Download and install Git](https://git-scm.com/downloads)
* [Download and install Hugo v0.53](https://gohugo.io/getting-started/installing/#quick-install) * [Download and install Hugo v0.55.2+](https://gohugo.io/getting-started/installing/#quick-install)
Install: Install:
1. [Fork](https://github.com/sourcethemes/academic-kickstart#fork-destination-box) the *Academic Kickstart* repository and clone your fork with Git: 1. [Fork](https://github.com/sourcethemes/academic-kickstart#fork-destination-box) the *Academic Kickstart* repository and clone your fork with Git, replacing `sourcethemes` with your GitHub username (unless you wish to clone without forking):
git clone https://github.com/sourcethemes/academic-kickstart.git My_Website git clone https://github.com/sourcethemes/academic-kickstart.git My_Website
*Note that if you forked Academic Kickstart, the above command should be edited to clone your fork, i.e. replace `sourcethemes` with your GitHub username.*
2. Initialize the theme: 2. Initialize the theme:
@ -100,7 +98,7 @@ Install:
Prerequisites: Prerequisites:
* [Download and install Hugo v0.53](https://gohugo.io/getting-started/installing/#quick-install) * [Download and install Hugo v0.55.2+](https://gohugo.io/getting-started/installing/#quick-install)
Install: Install:

View file

@ -40,7 +40,6 @@ paginate = 10 # Number of items per page in paginated lists.
enableEmoji = true enableEmoji = true
footnotereturnlinkcontents = "<sup>^</sup>" footnotereturnlinkcontents = "<sup>^</sup>"
ignoreFiles = ["\\.ipynb$", ".ipynb_checkpoints$", "\\.Rmd$", "\\.Rmarkdown$", "_files$", "_cache$"] ignoreFiles = ["\\.ipynb$", ".ipynb_checkpoints$", "\\.Rmd$", "\\.Rmarkdown$", "_files$", "_cache$"]
preserveTaxonomyNames = true
[outputs] [outputs]
home = [ "HTML", "CSS", "RSS", "JSON" ] home = [ "HTML", "CSS", "RSS", "JSON" ]

View file

@ -1,16 +1,16 @@
+++ +++
title = "Academic: the website designer for Hugo" title = "Academic: the website builder for Hugo"
subtitle = "Create a beautifully simple website in under 10 minutes :rocket:" subtitle = "Create a beautifully simple website in under 10 minutes :rocket:"
date = 2016-04-20T00:00:00 date = 2016-04-20T00:00:00 # Schedule a publish date
lastmod = 2018-01-13T00:00:00 lastmod = 2019-04-17T00:00:00 # Date last modified
draft = false draft = false # Display this post? (true/false)
# Authors. Comma separated list, e.g. `["Bob Smith", "David Jones"]`. # Authors. Comma separated list, e.g. `["Bob Smith", "David Jones"]`.
authors = ["admin"] authors = ["admin"]
tags = ["Academic"] tags = ["Academic"]
summary = "Create a beautifully simple website or blog in under 10 minutes." summary = "Create a beautifully simple website in under 10 minutes."
# Projects (optional). # Projects (optional).
# Associate this post with one or more of your projects. # Associate this post with one or more of your projects.
@ -76,10 +76,12 @@ image = "theme-cupcake.png"
caption = "Cupcake" caption = "Cupcake"
+++ +++
**Academic** makes it easy to create a beautiful website for free using Markdown. Customize anything on your site with widgets, themes, and language packs. **Create a free website with Academic using Markdown, Jupyter, or RStudio. Choose a beautiful color theme and build anything with the Page Builder - over 40 _widgets_, _themes_, and _language packs_ included!**
Follow our easy [step by step guide](https://sourcethemes.com/academic/docs/install/) to learn how to build your own free website with Academic. [Check out the personal demo](https://academic-demo.netlify.com/) or the [business demo](https://sourcethemes.com/academic/) of what you'll get in less than 10 minutes. [Check out the latest **demo**](https://academic-demo.netlify.com/) of what you'll get in less than 10 minutes, or [view the **showcase**](https://sourcethemes.com/academic/#expo) of personal, project, and business sites.
- [**Setup Academic**](#install)
- [**Get Started**](https://sourcethemes.com/academic/docs/get-started/)
- [View the documentation](https://sourcethemes.com/academic/docs/) - [View the documentation](https://sourcethemes.com/academic/docs/)
- [Ask a question](http://discuss.gohugo.io/) - [Ask a question](http://discuss.gohugo.io/)
- [Request a feature or report a bug](https://github.com/gcushen/hugo-academic/issues) - [Request a feature or report a bug](https://github.com/gcushen/hugo-academic/issues)
@ -92,19 +94,29 @@ Follow our easy [step by step guide](https://sourcethemes.com/academic/docs/inst
[![Screenshot](https://raw.githubusercontent.com/gcushen/hugo-academic/master/academic.png)](https://github.com/gcushen/hugo-academic/) [![Screenshot](https://raw.githubusercontent.com/gcushen/hugo-academic/master/academic.png)](https://github.com/gcushen/hugo-academic/)
Key features: **Key features:**
- Easily manage various content including homepage, blog posts, publications, talks, and projects - **Page builder** - Create *anything* with [**widgets**](https://sourcethemes.com/academic/docs/page-builder/) and [**elements**](https://sourcethemes.com/academic/docs/writing-markdown-latex/)
- Extensible via **color themes** and **widgets/plugins** - **Edit any type of content** - Blog posts, publications, talks, slides, projects, and more!
- Write in [Markdown](https://sourcethemes.com/academic/docs/writing-markdown-latex/) for easy formatting and code highlighting, with [LaTeX](https://en.wikibooks.org/wiki/LaTeX/Mathematics) for mathematical expressions - **Create content** in [**Markdown**](https://sourcethemes.com/academic/docs/writing-markdown-latex/), [**Jupyter**](https://sourcethemes.com/academic/docs/jupyter/), or [**RStudio**](https://sourcethemes.com/academic/docs/install/#install-with-rstudio)
- Social/academic network linking, [Google Analytics](https://analytics.google.com), and [Disqus](https://disqus.com) comments - **Plugin System** - Fully customizable [**color** and **font themes**](https://sourcethemes.com/academic/themes/)
- Responsive and mobile friendly - **Display Code and Math** - Code highlighting and [LaTeX math](https://en.wikibooks.org/wiki/LaTeX/Mathematics) supported
- Simple and refreshing one page design - **Integrations** - [Google Analytics](https://analytics.google.com), [Disqus commenting](https://disqus.com), Maps, Contact Forms, and more!
- Multilingual and easy to customize - **Beautiful Site** - Simple and refreshing one page design
- **Industry-Leading SEO** - Help get your website found on search engines and social media
- **Media Galleries** - Display your images and videos with captions in a customizable gallery
- **Mobile Friendly** - Look amazing on every screen with a mobile friendly version of your site
- **Multi-language** - 15+ language packs including English, 中文, and Português
- **Multi-user** - Each author gets their own profile page
- **Privacy Pack** - Assists with GDPR
- **Stand Out** - Bring your site to life with animation, parallax backgrounds, and scroll effects
- **One-Click Deployment** - No servers. No databases. Only files.
## Color Themes ## Color Themes
Academic is available in different color themes and font themes. Academic comes with **day (light) and night (dark) mode** built-in. Click the sun/moon icon in the top right of the [Demo](https://academic-demo.netlify.com/) to see it in action!
Choose a stunning color and font theme for your site. Themes are fully customizable and include:
{{< gallery >}} {{< gallery >}}
@ -117,76 +129,18 @@ Academic is available in different color themes and font themes.
You can choose from one of the following four methods to install: You can choose from one of the following four methods to install:
* one-click install using your web browser (recommended) * [**one-click install using your web browser (recommended)**](https://sourcethemes.com/academic/docs/install/#install-with-web-browser)
* install on your computer using Git with the Command Prompt/Terminal app * [install on your computer using **Git** with the Command Prompt/Terminal app](https://sourcethemes.com/academic/docs/install/#install-with-git)
* install on your computer by downloading the ZIP files * [install on your computer by downloading the **ZIP files**](https://sourcethemes.com/academic/docs/install/#install-with-zip)
* install on your computer with RStudio * [install on your computer with **RStudio**](https://sourcethemes.com/academic/docs/install/#install-with-rstudio)
### Quick install using your web browser Then [personalize and deploy your new site](https://sourcethemes.com/academic/docs/get-started/).
1. [Install Academic with Netlify](https://app.netlify.com/start/deploy?repository=https://github.com/sourcethemes/academic-kickstart)
* Netlify will provide you with a customizable URL to access your new site
2. On GitHub, go to your newly created `academic-kickstart` repository and edit `config.toml` to personalize your site. Shortly after saving the file, your site will automatically update
3. Read the [Quick Start Guide](https://sourcethemes.com/academic/docs/) to learn how to add Markdown content. For inspiration, refer to the [Markdown content](https://github.com/gcushen/hugo-academic/tree/master/exampleSite) which powers the [Demo](https://academic-demo.netlify.com/)
### Install with Git
Prerequisites:
* [Download and install Git](https://git-scm.com/downloads)
* [Download and install Hugo](https://gohugo.io/getting-started/installing/#quick-install)
1. [Fork](https://github.com/sourcethemes/academic-kickstart#fork-destination-box) the *Academic Kickstart* repository and clone your fork with Git:
git clone https://github.com/sourcethemes/academic-kickstart.git My_Website
*Note that if you forked Academic Kickstart, the above command should be edited to clone your fork, i.e. replace `sourcethemes` with your GitHub username.*
2. Initialize the theme:
cd My_Website
git submodule update --init --recursive
### Install with ZIP
1. [Download](https://github.com/sourcethemes/academic-kickstart/archive/master.zip) and extract *Academic Kickstart*
2. [Download](https://github.com/gcushen/hugo-academic/archive/master.zip) and extract the *Academic theme* to the `themes/academic/` folder from the above step
### Install with RStudio
[View the guide to installing Academic with RStudio](https://sourcethemes.com/academic/docs/install/#install-with-rstudio)
## Quick start
1. If you installed on your computer, view your new website by running the following command:
hugo server
Now visit [localhost:1313](http://localhost:1313) and your new Academic powered website will appear. Otherwise, if using Netlify, they will provide you with your URL.
2. Read the [Quick Start Guide](https://sourcethemes.com/academic/docs/) to learn how to add Markdown content, customize your site, and deploy it. For inspiration, refer to the [Markdown content](https://github.com/gcushen/hugo-academic/tree/master/exampleSite) which powers the [Demo](https://academic-demo.netlify.com/)
3. Build your site by running the `hugo` command. Then [host it for free using Github Pages](https://georgecushen.com/create-your-website-with-hugo/) or Netlify (refer to the first installation method). Alternatively, copy the generated `public/` directory (by FTP, Rsync, etc.) to your production web server (such as a university's hosting service).
## Updating ## Updating
Feel free to *star* the project on [Github](https://github.com/gcushen/hugo-academic/) to help keep track of updates and check out the [release notes](https://sourcethemes.com/academic/updates) prior to updating your site. [View the Update Guide](https://sourcethemes.com/academic/docs/update/).
Before updating the framework, it is recommended to make a backup of your entire website directory (or at least your `themes/academic` directory) and record your current version number. Feel free to *star* the project on [Github](https://github.com/gcushen/hugo-academic/) to help keep track of [updates](https://sourcethemes.com/academic/updates).
By default, Academic is installed as a Git submodule which can be updated by running the following command:
```bash
git submodule update --remote --merge
```
[Check out the update guide](https://sourcethemes.com/academic/docs/update/) for full instructions and alternative methods.
## Feedback & Contributing
Please use the [issue tracker](https://github.com/gcushen/hugo-academic/issues) to let me know about any bugs or feature requests, or alternatively make a pull request.
For support, head over to the [Hugo discussion forum](http://discuss.gohugo.io).
## License ## License

View file

@ -77,7 +77,7 @@ Click on the **Slides** button above to view the built-in slides feature.
Slides can be added in a few ways: Slides can be added in a few ways:
- **Create** slides using Academic's *Slides* feature and link using `url_slides` parameter in the front matter of the talk file - **Create** slides using Academic's [*Slides*](https://sourcethemes.com/academic/docs/managing-content/#create-slides) feature and link using `slides` parameter in the front matter of the talk file
- **Upload** an existing slide deck to `static/` and link using `url_slides` parameter in the front matter of the talk file - **Upload** an existing slide deck to `static/` and link using `url_slides` parameter in the front matter of the talk file
- **Embed** your slides (e.g. Google Slides) or presentation video on this page using [shortcodes](https://sourcethemes.com/academic/docs/writing-markdown-latex/). - **Embed** your slides (e.g. Google Slides) or presentation video on this page using [shortcodes](https://sourcethemes.com/academic/docs/writing-markdown-latex/).

View file

@ -2,7 +2,7 @@
{{ partial "navbar.html" . }} {{ partial "navbar.html" . }}
{{/* Just display author name as title if user profile unavailable. */}} {{/* Just display author name as title if user profile unavailable. */}}
{{ if not ($.Site.GetPage (printf "/author/%s" (urlize .Title))) }} {{ if not (site.GetPage (printf "/author/%s" (urlize .Title))) }}
<div class="universal-wrapper pt-3"> <div class="universal-wrapper pt-3">
<h1 itemprop="name">{{ .Title }}</h1> <h1 itemprop="name">{{ .Title }}</h1>
</div> </div>
@ -13,7 +13,7 @@
{{/* Only show About widget if a profile has been configured for this user. */}} {{/* Only show About widget if a profile has been configured for this user. */}}
{{ $widget := "widgets/about.html" }} {{ $widget := "widgets/about.html" }}
{{ $params := dict "root" $ "page" . "author" .Title }} {{ $params := dict "root" $ "page" . "author" .Title }}
{{ with $.Site.GetPage (printf "/author/%s" (urlize .Title)) }} {{ with site.GetPage (printf "/author/%s" (urlize .Title)) }}
{{ partial $widget $params }} {{ partial $widget $params }}
{{ end }} {{ end }}

View file

@ -12,7 +12,7 @@
{{ $paginator := .Paginate .Data.Pages }} {{ $paginator := .Paginate .Data.Pages }}
{{ range $k, $v := $paginator.Pages }} {{ range $k, $v := $paginator.Pages }}
{{ $person_page_path := (printf "/author/%s" (urlize $v.Title)) }} {{ $person_page_path := (printf "/author/%s" (urlize $v.Title)) }}
{{ $person_page := $.Site.GetPage $person_page_path }} {{ $person_page := site.GetPage $person_page_path }}
{{ $name := "" }} {{ $name := "" }}
{{ if $person_page }} {{ if $person_page }}
{{ $person := $person_page.Params }} {{ $person := $person_page.Params }}

View file

@ -1,5 +1,5 @@
{{- $scr := .Scratch -}} {{- $scr := .Scratch -}}
{{- $scr.Set "site" $.Site -}} {{- $scr.Set "site" site -}}
{{- partial "css/parse_theme.css" . -}} {{- partial "css/parse_theme.css" . -}}

View file

@ -1,4 +1,4 @@
{{ if not (isset $.Site.Params "color_theme") }} {{ if not (isset site.Params "color_theme") }}
{{ errorf "Please complete the installation of Academic by following the steps at https://sourcethemes.com/academic/docs/install/" }} {{ errorf "Please complete the installation of Academic by following the steps at https://sourcethemes.com/academic/docs/install/" }}
{{ end }} {{ end }}
{{ partial "widget_page.html" . }} {{ partial "widget_page.html" . }}

View file

@ -4,7 +4,7 @@
{{- /* Add the index page of docs separately since it's not in RegularPages above. */ -}} {{- /* Add the index page of docs separately since it's not in RegularPages above. */ -}}
{{- $pages := $pages | union (where (where .Site.Pages "Kind" "section") "Type" "docs") -}} {{- $pages := $pages | union (where (where .Site.Pages "Kind" "section") "Type" "docs") -}}
{{- /* Add author pages to index so their bios can be searched. Hide empty `/author/` node. */ -}} {{- /* Add author pages to index so their bios can be searched. Hide empty `/author/` node. */ -}}
{{- $pages := $pages | union (where (where $.Site.Pages "Section" "author") "Params.name" "!=" nil) -}} {{- $pages := $pages | union (where (where site.Pages "Section" "author") "Params.name" "!=" nil) -}}
{{- range $pages -}} {{- range $pages -}}
{{- /* Do not index drafts or private pages. */ -}} {{- /* Do not index drafts or private pages. */ -}}
@ -29,7 +29,7 @@
{{- if eq .Section "author" -}} {{- if eq .Section "author" -}}
{{- $title = .Params.name -}} {{- $title = .Params.name -}}
{{- $dir := path.Base (path.Split .Path).Dir -}} {{- $dir := path.Base (path.Split .Path).Dir -}}
{{- with $.Site.GetPage (printf "/authors/%s" (path.Base (path.Split .Path).Dir)) -}} {{- with site.GetPage (printf "/authors/%s" (path.Base (path.Split .Path).Dir)) -}}
{{- $permalink = .Permalink -}} {{- $permalink = .Permalink -}}
{{- $rel_permalink = .RelPermalink -}} {{- $rel_permalink = .RelPermalink -}}
{{- end -}} {{- end -}}
@ -41,7 +41,7 @@
{{- $authors = slice -}} {{- $authors = slice -}}
{{- range $k, $v := .Params.authors -}} {{- range $k, $v := .Params.authors -}}
{{- $person_page_path := (printf "/author/%s" (urlize $v)) -}} {{- $person_page_path := (printf "/author/%s" (urlize $v)) -}}
{{- $person_page := $.Site.GetPage $person_page_path -}} {{- $person_page := site.GetPage $person_page_path -}}
{{- if $person_page -}} {{- if $person_page -}}
{{- $person := $person_page.Params -}} {{- $person := $person_page.Params -}}
{{- $authors = $authors | append $person.name -}} {{- $authors = $authors | append $person.name -}}
@ -54,7 +54,7 @@
{{- end -}} {{- end -}}
{{- /* Add page to index. */ -}} {{- /* Add page to index. */ -}}
{{- $index = $index | append (dict "objectID" .UniqueID "date" .Date.UTC.Unix "publishdate" .PublishDate "lastmod" .Lastmod.UTC.Unix "expirydate" .ExpiryDate.UTC.Unix "lang" .Lang "permalink" $permalink "relpermalink" $rel_permalink "title" $title "summary" (plainify $desc) "content" .Plain "authors" $authors "kind" .Kind "type" .Type "section" .Section "tags" .Params.Tags "categories" .Params.Categories) -}} {{- $index = $index | append (dict "objectID" .File.UniqueID "date" .Date.UTC.Unix "publishdate" .PublishDate "lastmod" .Lastmod.UTC.Unix "expirydate" .ExpiryDate.UTC.Unix "lang" .Lang "permalink" $permalink "relpermalink" $rel_permalink "title" $title "summary" (plainify $desc) "content" .Plain "authors" $authors "kind" .Kind "type" .Type "section" .Section "tags" .Params.Tags "categories" .Params.Categories) -}}
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}

View file

@ -39,7 +39,7 @@
</div> </div>
<div class="body-footer"> <div class="body-footer">
{{ i18n "last_updated" }} {{ $.Lastmod.Format $.Site.Params.date_format }} {{ i18n "last_updated" }} {{ $.Lastmod.Format site.Params.date_format }}
</div> </div>
</article> </article>

View file

@ -10,14 +10,14 @@
<span><i class="fas fa-bars"></i></span> <span><i class="fas fa-bars"></i></span>
</button> </button>
{{ if eq $.Site.Params.search.engine 1 }} {{ if eq site.Params.search.engine 1 }}
<input name="q" type="search" class="form-control" id="search-query" placeholder="{{ i18n "search_placeholder" }}" autocomplete="off"> <input name="q" type="search" class="form-control" id="search-query" placeholder="{{ i18n "search_placeholder" }}" autocomplete="off">
{{ end }} {{ end }}
</form> </form>
<nav class="collapse docs-links" id="docs-nav"> <nav class="collapse docs-links" id="docs-nav">
{{ with (index .Site.Menus $menu_name) }} {{ with (index .Site.Menus $menu_name) }}
{{ range (index $.Site.Menus $menu_name).ByWeight }} {{ range (index site.Menus $menu_name).ByWeight }}
<div class="docs-toc-item{{ if $current_page.IsMenuCurrent $menu_name . }} active{{ end }}"> <div class="docs-toc-item{{ if $current_page.IsMenuCurrent $menu_name . }} active{{ end }}">
<a class="docs-toc-link" {{ if .URL }}href="{{ .URL }}"{{else if .HasChildren }}href="{{ (index .Children 0).URL }}"{{end}}>{{ .Name }}</a> <a class="docs-toc-link" {{ if .URL }}href="{{ .URL }}"{{else if .HasChildren }}href="{{ (index .Children 0).URL }}"{{end}}>{{ .Name }}</a>

View file

@ -42,8 +42,8 @@
{{ end }} {{ end }}
{{/* Comments JS. */}} {{/* Comments JS. */}}
{{ $comments_enabled := and $.Site.DisqusShortname (not (or $.Site.Params.disable_comments $.Params.disable_comments)) }} {{ $comments_enabled := and site.DisqusShortname (not (or site.Params.disable_comments $.Params.disable_comments)) }}
{{ if and $comments_enabled ($.Site.Params.comment_count | default true) }} {{ if and $comments_enabled (site.Params.comment_count | default true) }}
<script id="dsq-count-scr" src="//{{ .Site.DisqusShortname }}.disqus.com/count.js" async></script> <script id="dsq-count-scr" src="//{{ .Site.DisqusShortname }}.disqus.com/count.js" async></script>
{{ end }} {{ end }}
@ -78,7 +78,7 @@
</script> </script>
{{ end }} {{ end }}
{{ if eq $.Site.Params.search.engine 1 }} {{ if eq site.Params.search.engine 1 }}
{{/* Fuse search result template. */}} {{/* Fuse search result template. */}}
<script id="search-hit-fuse-template" type="text/x-template"> <script id="search-hit-fuse-template" type="text/x-template">
<div class="search-hit" id="summary-{{"{{key}}"}}"> <div class="search-hit" id="summary-{{"{{key}}"}}">
@ -91,7 +91,7 @@
</div> </div>
</div> </div>
</script> </script>
{{ else if eq $.Site.Params.search.engine 2 }} {{ else if eq site.Params.search.engine 2 }}
{{/* Algolia search result template. */}} {{/* Algolia search result template. */}}
<script id="search-hit-algolia-template" type="text/html"> <script id="search-hit-algolia-template" type="text/html">
<div class="search-hit"> <div class="search-hit">
@ -135,7 +135,7 @@
{{ $js_bundle := slice }} {{ $js_bundle := slice }}
{{ if eq .Site.Params.search.engine 1 }} {{ if eq .Site.Params.search.engine 1 }}
{{ $js_bundle = slice $js_academic $js_academic_search }} {{ $js_bundle = slice $js_academic $js_academic_search }}
{{ else if eq $.Site.Params.search.engine 2 }} {{ else if eq site.Params.search.engine 2 }}
{{ $js_bundle = slice $js_academic $js_algolia_search }} {{ $js_bundle = slice $js_academic $js_algolia_search }}
{{ else }} {{ else }}
{{ $js_bundle = slice $js_academic }} {{ $js_bundle = slice $js_academic }}

View file

@ -6,7 +6,6 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="generator" content="Source Themes Academic {{ .Site.Data.academic.version }}"> <meta name="generator" content="Source Themes Academic {{ .Site.Data.academic.version }}">
{{ .Hugo.Generator }}
{{ $scr := .Scratch }} {{ $scr := .Scratch }}
@ -14,7 +13,7 @@
{{ $superuser_name := "" }} {{ $superuser_name := "" }}
{{ $superuser_username := "" }} {{ $superuser_username := "" }}
{{ $superuser_role := "" }} {{ $superuser_role := "" }}
{{ range first 1 (where (where $.Site.Pages "Section" "author") "Params.superuser" true) }} {{ range first 1 (where (where site.Pages "Section" "author") "Params.superuser" true) }}
{{ $superuser_name = .Params.name }} {{ $superuser_name = .Params.name }}
{{ $superuser_username = delimit (last 1 (split (substr .File.Dir 0 -1) "/")) "" }} {{ $superuser_username = delimit (last 1 (split (substr .File.Dir 0 -1) "/")) "" }}
{{ $superuser_role = .Params.role }} {{ $superuser_role = .Params.role }}
@ -133,9 +132,9 @@
{{ end }} {{ end }}
{{ end }} {{ end }}
{{ if or .Site.RSSLink .RSSLink }} {{ with .OutputFormats.Get "RSS" }}
<link rel="alternate" href="{{ .RSSLink | default .Site.RSSLink }}" type="application/rss+xml" title="{{ .Site.Title }}"> <link rel="alternate" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ site.Title }}">
<link rel="feed" href="{{ .RSSLink | default .Site.RSSLink }}" type="application/rss+xml" title="{{ .Site.Title }}"> <link rel="feed" href="{{ .RelPermalink }}" type="application/rss+xml" title="{{ site.Title }}">
{{ end }} {{ end }}
<link rel="manifest" href="{{ "site.webmanifest" | relURL }}"> <link rel="manifest" href="{{ "site.webmanifest" | relURL }}">
@ -154,7 +153,7 @@
{{ else if .Site.Params.sharing_image }} {{ else if .Site.Params.sharing_image }}
{{ $og_image = printf "img/%s" .Site.Params.sharing_image | absURL }} {{ $og_image = printf "img/%s" .Site.Params.sharing_image | absURL }}
{{ else if .Site.Params.avatar }} {{ else if .Site.Params.avatar }}
{{ $og_image = (printf "img/%s" $.Site.Params.avatar) | absURL }} {{ $og_image = (printf "img/%s" site.Params.avatar) | absURL }}
{{ $twitter_card = "summary" }} {{ $twitter_card = "summary" }}
{{ else }} {{ else }}
{{ $og_image = "img/icon-192.png" | absURL }} {{ $og_image = "img/icon-192.png" | absURL }}

View file

@ -37,11 +37,11 @@
{{ end }} {{ end }}
<span itemprop="startDate"> <span itemprop="startDate">
{{ $date := $item.Date }} {{ $date := $item.Date }}
{{ (time $date).Format $.Site.Params.date_format }} {{ (time $date).Format site.Params.date_format }}
{{ if not $item.Params.all_day }} {{ if not $item.Params.all_day }}
{{ (time $date).Format ($.Site.Params.time_format | default "3:04 PM") }} {{ (time $date).Format (site.Params.time_format | default "3:04 PM") }}
{{ with $item.Params.date_end }} {{ with $item.Params.date_end }}
&mdash; {{ (time .).Format ($.Site.Params.time_format | default "3:04 PM") }} &mdash; {{ (time .).Format (site.Params.time_format | default "3:04 PM") }}
{{ end }} {{ end }}
{{ end }} {{ end }}
</span> </span>

View file

@ -2,7 +2,7 @@
<i class="far fa-file-alt pub-icon" aria-hidden="true"></i> <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
{{/* APA Style */}} {{/* APA Style */}}
{{ if eq ($.Site.Params.publications.citation_style | default "apa") "apa" }} {{ if eq (site.Params.publications.citation_style | default "apa") "apa" }}
<span itemprop="author" class="article-metadata li-cite-author"> <span itemprop="author" class="article-metadata li-cite-author">
{{ partial "page_metadata_authors" . }} {{ partial "page_metadata_authors" . }}

View file

@ -46,11 +46,11 @@
<div> <div>
<span itemprop="startDate"> <span itemprop="startDate">
{{ $date := $item.Date }} {{ $date := $item.Date }}
{{ (time $date).Format $.Site.Params.date_format }} {{ (time $date).Format site.Params.date_format }}
{{ if not $item.Params.all_day }} {{ if not $item.Params.all_day }}
{{ (time $date).Format ($.Site.Params.time_format | default "3:04 PM") }} {{ (time $date).Format (site.Params.time_format | default "3:04 PM") }}
{{ with $item.Params.date_end }} {{ with $item.Params.date_end }}
&mdash; {{ (time .).Format ($.Site.Params.time_format | default "3:04 PM") }} &mdash; {{ (time .).Format (site.Params.time_format | default "3:04 PM") }}
{{ end }} {{ end }}
{{ end }} {{ end }}
</span> </span>

View file

@ -26,11 +26,11 @@
<div class="article-metadata"> <div class="article-metadata">
<span itemprop="startDate"> <span itemprop="startDate">
{{ $date := $item.Date }} {{ $date := $item.Date }}
{{ (time $date).Format $.Site.Params.date_format }} {{ (time $date).Format site.Params.date_format }}
{{ if not $item.Params.all_day }} {{ if not $item.Params.all_day }}
{{ (time $date).Format ($.Site.Params.time_format | default "3:04 PM") }} {{ (time $date).Format (site.Params.time_format | default "3:04 PM") }}
{{ with $item.Params.date_end }} {{ with $item.Params.date_end }}
&mdash; {{ (time .).Format ($.Site.Params.time_format | default "3:04 PM") }} &mdash; {{ (time .).Format (site.Params.time_format | default "3:04 PM") }}
{{ end }} {{ end }}
{{ end }} {{ end }}
</span> </span>

View file

@ -15,12 +15,12 @@
{{ end }} {{ end }}
{{ $person_page_path := (printf "/author/%s" $author_urlize) }} {{ $person_page_path := (printf "/author/%s" $author_urlize) }}
{{ $person_page := $.Site.GetPage $person_page_path }} {{ $person_page := site.GetPage $person_page_path }}
{{ with $person_page }} {{ with $person_page }}
{{ $link := printf "/authors/%s" $author_urlize | relURL }} {{ $link := printf "/authors/%s" $author_urlize | relURL }}
{{ $avatar := ($person_page.Resources.ByType "image").GetMatch "*avatar*" }} {{ $avatar := ($person_page.Resources.ByType "image").GetMatch "*avatar*" }}
<div class="media author-card" itemscope itemtype="http://schema.org/Person"> <div class="media author-card" itemscope itemtype="http://schema.org/Person">
{{ if and $.Site.Params.gravatar .Params.email }} {{ if and site.Params.gravatar .Params.email }}
<img class="portrait mr-3" src="https://s.gravatar.com/avatar/{{ md5 .Params.email }}?s=200')" itemprop="image" alt="Avatar"> <img class="portrait mr-3" src="https://s.gravatar.com/avatar/{{ md5 .Params.email }}?s=200')" itemprop="image" alt="Avatar">
{{ else if $avatar }} {{ else if $avatar }}
{{ $avatar_image := $avatar.Fill "250x250 Center" }} {{ $avatar_image := $avatar.Fill "250x250 Center" }}

View file

@ -1,10 +1,10 @@
{{ $is_list := .is_list }} {{ $is_list := .is_list }}
{{ $ := .content }} {{ $page := .page }}
{{ $link := "" }} {{ $link := "" }}
{{/* ***** TODO: Deprecate `url_preprint` in favour of `url_pdf` given there's now a dedicated "Preprint" pub. type. ***** */}} {{/* ***** TODO: Deprecate `url_preprint` in favour of `url_pdf` given there's now a dedicated "Preprint" pub. type. ***** */}}
{{ with $.Params.url_preprint }} {{ with $page.Params.url_preprint }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -15,12 +15,12 @@
</a> </a>
{{ end }} {{ end }}
{{ $pdf := "" }} {{ $pdf := "" }}
{{ $resource := $.Resources.GetMatch (printf "%s.pdf" $.File.ContentBaseName) }} {{ $resource := $page.Resources.GetMatch (printf "%s.pdf" $page.File.ContentBaseName) }}
{{ with $resource }} {{ with $resource }}
{{ $pdf = .RelPermalink }} {{ $pdf = .RelPermalink }}
{{ else }} {{ else }}
{{ if $.Params.url_pdf }} {{ if $page.Params.url_pdf }}
{{ $pdf = $.Params.url_pdf | relURL }} {{ $pdf = $page.Params.url_pdf | relURL }}
{{ end }} {{ end }}
{{ end }} {{ end }}
@ -29,15 +29,15 @@
{{ i18n "btn_pdf" }} {{ i18n "btn_pdf" }}
</a> </a>
{{ end }} {{ end }}
{{ $resource := $.Resources.GetMatch "*.bib" }} {{ $resource := $page.Resources.GetMatch "*.bib" }}
{{ with $resource }} {{ with $resource }}
<button type="button" class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}} js-cite-modal" <button type="button" class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}} js-cite-modal"
data-filename="{{ .RelPermalink }}"> data-filename="{{ .RelPermalink }}">
{{ i18n "btn_cite" }} {{ i18n "btn_cite" }}
</button> </button>
{{ end }} {{ end }}
{{ with $.Params.url_code }} {{ with $page.Params.url_code }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -47,8 +47,8 @@
{{ i18n "btn_code" }} {{ i18n "btn_code" }}
</a> </a>
{{ end }} {{ end }}
{{ with $.Params.url_dataset }} {{ with $page.Params.url_dataset }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -58,25 +58,25 @@
{{ i18n "btn_dataset" }} {{ i18n "btn_dataset" }}
</a> </a>
{{ end }} {{ end }}
{{ if $.Params.projects }} {{ if $page.Params.projects }}
{{ range $.Params.projects }} {{ range $page.Params.projects }}
{{ with ($.Site.GetPage (printf "project/%s" .)) }} {{ with (site.GetPage (printf "project/%s" .)) }}
<a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ .RelPermalink }}"> <a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ .RelPermalink }}">
{{ i18n "btn_project" }} {{ i18n "btn_project" }}
</a> </a>
{{ else }} {{ else }}
{{/* errorf "The `projects` parameter in `content/%s` references a project file, `content/project/%s`, which cannot be found. Please either set `projects = []` or fix the reference." $.File.Path . */}} {{/* errorf "The `projects` parameter in `content/%s` references a project file, `content/project/%s`, which cannot be found. Please either set `projects = []` or fix the reference." $page.File.Path . */}}
{{ end }} {{ end }}
{{ end }} {{ end }}
{{ else }} {{ else }}
{{ with $.Params.url_project }} {{ with $page.Params.url_project }}
<a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ . }}" target="_blank" rel="noopener"> <a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ . }}" target="_blank" rel="noopener">
{{ i18n "btn_project" }} {{ i18n "btn_project" }}
</a> </a>
{{ end }} {{ end }}
{{ end }} {{ end }}
{{ with $.Params.url_poster }} {{ with $page.Params.url_poster }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -86,15 +86,15 @@
{{ i18n "btn_poster" }} {{ i18n "btn_poster" }}
</a> </a>
{{ end }} {{ end }}
{{ if $.Params.slides }} {{ if $page.Params.slides }}
{{ with ($.Site.GetPage (printf "slides/%s" $.Params.slides)) }} {{ with (site.GetPage (printf "slides/%s" $page.Params.slides)) }}
<a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ .RelPermalink }}" target="_blank"> <a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="{{ .RelPermalink }}" target="_blank">
{{ i18n "btn_slides" }} {{ i18n "btn_slides" }}
</a> </a>
{{ end }} {{ end }}
{{ else }} {{ else }}
{{ with $.Params.url_slides }} {{ with $page.Params.url_slides }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -105,8 +105,8 @@
</a> </a>
{{ end }} {{ end }}
{{ end }} {{ end }}
{{ with $.Params.url_video }} {{ with $page.Params.url_video }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -116,8 +116,8 @@
{{ i18n "btn_video" }} {{ i18n "btn_video" }}
</a> </a>
{{ end }} {{ end }}
{{ with $.Params.url_source }} {{ with $page.Params.url_source }}
{{ $resource := $.Resources.GetMatch . }} {{ $resource := $page.Resources.GetMatch . }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}
@ -127,12 +127,12 @@
{{ i18n "btn_source" }} {{ i18n "btn_source" }}
</a> </a>
{{ end }} {{ end }}
{{ with $.Params.doi }} {{ with $page.Params.doi }}
<a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="https://doi.org/{{ . }}" target="_blank" rel="noopener"> <a class="btn btn-outline-primary my-1 mr-1{{ if $is_list }} btn-sm{{end}}" href="https://doi.org/{{ . }}" target="_blank" rel="noopener">
DOI DOI
</a> </a>
{{ end }} {{ end }}
{{ range $.Params.links }} {{ range $page.Params.links }}
{{ $pack := or .icon_pack "fas" }} {{ $pack := or .icon_pack "fas" }}
{{ $pack_prefix := $pack }} {{ $pack_prefix := $pack }}
{{ if in (slice "fab" "fas" "far" "fal") $pack }} {{ if in (slice "fab" "fas" "far" "fal") $pack }}
@ -142,7 +142,7 @@
{{ $scheme := (urls.Parse $link).Scheme }} {{ $scheme := (urls.Parse $link).Scheme }}
{{ $target := "" }} {{ $target := "" }}
{{ if not $scheme }} {{ if not $scheme }}
{{ $resource := $.Resources.GetMatch .url }} {{ $resource := $page.Resources.GetMatch .url }}
{{ if $resource }} {{ if $resource }}
{{ $link = $resource.RelPermalink }} {{ $link = $resource.RelPermalink }}
{{ else }} {{ else }}

View file

@ -1,19 +1,20 @@
{{/* Div wrapper around page links. */}} {{/* Div wrapper around page links. */}}
{{/* The wrapper is hidden when the page has no link buttons. */}} {{/* The wrapper is hidden when the page has no link buttons. */}}
{{ $page := . }}
{{ $pdf_link := false }} {{ $pdf_link := false }}
{{ $cite_link := false }} {{ $cite_link := false }}
{{ $slug := "" }} {{ $slug := "" }}
{{ if eq $.File.TranslationBaseName "index" }}{{/* Check if using dir-based page bundles. */}} {{ if eq $page.File.TranslationBaseName "index" }}{{/* Check if using dir-based page bundles. */}}
{{ $slug = delimit (last 1 (split (substr $.Dir 0 -1) "/")) "" }} {{ $slug = delimit (last 1 (split (substr $page.File.Dir 0 -1) "/")) "" }}
{{ end }} {{ end }}
{{ $resource := $.Resources.GetMatch (printf "%s.pdf" $slug) }} {{ $resource := $page.Resources.GetMatch (printf "%s.pdf" $slug) }}
{{ with $resource }} {{ with $resource }}
{{ $pdf_link = true }} {{ $pdf_link = true }}
{{ end }} {{ end }}
{{ $resource := $.Resources.GetMatch "*.bib" }} {{ $resource := $page.Resources.GetMatch "*.bib" }}
{{ with $resource }} {{ with $resource }}
{{ $cite_link = true }} {{ $cite_link = true }}
{{ end }} {{ end }}
@ -23,6 +24,6 @@
{{ with .Params.external_link }} {{ with .Params.external_link }}
<a class="btn btn-outline-primary my-1" href="{{ . }}" target="_blank" rel="noopener">{{ i18n "open_project_site" }}</a> <a class="btn btn-outline-primary my-1" href="{{ . }}" target="_blank" rel="noopener">{{ i18n "open_project_site" }}</a>
{{ end }} {{ end }}
{{ partial "page_links" (dict "content" . "is_list" 0) }} {{ partial "page_links" (dict "page" $page "is_list" 0) }}
</div> </div>
{{ end }} {{ end }}

View file

@ -19,9 +19,9 @@
{{ if not (in (slice "talk" "page") $.Type) }} {{ if not (in (slice "talk" "page") $.Type) }}
<span class="article-date"> <span class="article-date">
{{ $date := $.Lastmod.Format $.Site.Params.date_format }} {{ $date := $.Lastmod.Format site.Params.date_format }}
{{ if eq $.Type "publication" }} {{ if eq $.Type "publication" }}
{{ $date = $.Date.Format ($.Site.Params.publications.date_format | default "January, 2006") }} {{ $date = $.Date.Format (site.Params.publications.date_format | default "January, 2006") }}
{{ else }} {{ else }}
{{ if ne $.Params.Lastmod $.Params.Date }} {{ if ne $.Params.Lastmod $.Params.Date }}
{{ i18n "last_updated" }} {{ i18n "last_updated" }}
@ -42,15 +42,15 @@
</span> </span>
{{ end }} {{ end }}
{{ if and (eq $.Type "post") (not (or (eq $.Site.Params.reading_time false) (eq $.Params.reading_time false))) }} {{ if and (eq $.Type "post") (not (or (eq site.Params.reading_time false) (eq $.Params.reading_time false))) }}
<span class="middot-divider"></span> <span class="middot-divider"></span>
<span class="article-reading-time"> <span class="article-reading-time">
{{ $.ReadingTime }} {{ i18n "minute_read" }} {{ $.ReadingTime }} {{ i18n "minute_read" }}
</span> </span>
{{ end }} {{ end }}
{{ $comments_enabled := and $.Site.DisqusShortname (not (or $.Site.Params.disable_comments (eq $.Params.comments false))) }} {{ $comments_enabled := and site.DisqusShortname (not (or site.Params.disable_comments (eq $.Params.comments false))) }}
{{ if and $comments_enabled ($.Site.Params.comment_count | default true) }} {{ if and $comments_enabled (site.Params.comment_count | default true) }}
<span class="middot-divider"></span> <span class="middot-divider"></span>
<a href="{{ $.RelPermalink }}#disqus_thread"><!-- Count will be inserted here --></a> <a href="{{ $.RelPermalink }}#disqus_thread"><!-- Count will be inserted here --></a>
{{ end}} {{ end}}
@ -62,7 +62,7 @@
<span class="article-categories"> <span class="article-categories">
<i class="fas fa-folder"></i> <i class="fas fa-folder"></i>
{{ range $k, $v := $.Params.categories }} {{ range $k, $v := $.Params.categories }}
<a href="{{ ($.Site.GetPage (printf "categories/%s" .)).RelPermalink }}">{{ . }}</a> <a href="{{ (site.GetPage (printf "categories/%s" .)).RelPermalink }}">{{ . }}</a>
{{- if lt $k (sub $categoriesLen 1) -}}, {{ end }} {{- if lt $k (sub $categoriesLen 1) -}}, {{ end }}
{{ end }} {{ end }}
</span> </span>

View file

@ -5,10 +5,10 @@
{{ range $k, $v := $.Params.authors -}} {{ range $k, $v := $.Params.authors -}}
<span itemscope itemprop="author" itemtype="http://schema.org/Person"> <span itemscope itemprop="author" itemtype="http://schema.org/Person">
<span itemprop="name"> <span itemprop="name">
{{ $link := ($.Site.GetPage (printf "/authors/%s" $v)).RelPermalink }} {{ $link := (site.GetPage (printf "/authors/%s" (urlize $v))).RelPermalink }}
{{ $person_page_path := (printf "/author/%s" (urlize $v)) }} {{ $person_page_path := (printf "/author/%s" (urlize $v)) }}
{{ $person_page := $.Site.GetPage $person_page_path }} {{ $person_page := site.GetPage $person_page_path }}
{{ if $person_page }} {{ if $person_page }}
{{ $person := $person_page.Params }} {{ $person := $person_page.Params }}
{{- printf "<a href=\"%s\">%s</a>" $link $person.name | safeHTML -}} {{- printf "<a href=\"%s\">%s</a>" $link $person.name | safeHTML -}}

View file

@ -2,10 +2,10 @@
<nav> <nav>
<ul class="pagination justify-content-center"> <ul class="pagination justify-content-center">
{{ if .Paginator.HasPrev }} {{ if .Paginator.HasPrev }}
<li class="page-item"><a class="page-link" href="{{ .Paginator.Prev.URL }}">&laquo;</a></li> <li class="page-item"><a class="page-link" href="{{ .Paginator.Prev.RelPermalink }}">&laquo;</a></li>
{{ end }} {{ end }}
{{ if .Paginator.HasNext }} {{ if .Paginator.HasNext }}
<li class="page-item"><a class="page-link" href="{{ .Paginator.Next.URL }}">&raquo;</a></li> <li class="page-item"><a class="page-link" href="{{ .Paginator.Next.RelPermalink }}">&raquo;</a></li>
{{ end }} {{ end }}
</ul> </ul>
</nav> </nav>

View file

@ -12,7 +12,7 @@
</div> </div>
<div id="search-box"> <div id="search-box">
{{ if eq $.Site.Params.search.engine 1 }} {{ if eq site.Params.search.engine 1 }}
<input name="q" id="search-query" placeholder="{{i18n "search_placeholder"}}" autocapitalize="off" <input name="q" id="search-query" placeholder="{{i18n "search_placeholder"}}" autocapitalize="off"
autocomplete="off" autocorrect="off" role="textbox" spellcheck="false" type="search"> autocomplete="off" autocorrect="off" role="textbox" spellcheck="false" type="search">
{{ else }} {{ else }}

View file

@ -3,7 +3,7 @@
{{ if gt $tagsLen 0 }} {{ if gt $tagsLen 0 }}
<div class="article-tags"> <div class="article-tags">
{{ range $k, $v := $.Params.tags }} {{ range $k, $v := $.Params.tags }}
<a class="badge badge-light" href="{{ ($.Site.GetPage (printf "tags/%s" .)).RelPermalink }}">{{ . }}</a> <a class="badge badge-light" href="{{ (site.GetPage (printf "tags/%s" .)).RelPermalink }}">{{ . }}</a>
{{ end }} {{ end }}
</div> </div>
{{ end }} {{ end }}

View file

@ -9,7 +9,7 @@
{{end}} {{end}}
{{ $person_page_path := (printf "/author/%s" (urlize $author)) }} {{ $person_page_path := (printf "/author/%s" (urlize $author)) }}
{{ $person_page := $.Site.GetPage $person_page_path }} {{ $person_page := site.GetPage $person_page_path }}
{{ if not $person_page }} {{ if not $person_page }}
{{ errorf "Could not find an author page at `%s`. Please check the value of `author` in your About widget and create an associated author page if one does not already exist." $person_page_path }} {{ errorf "Could not find an author page at `%s`. Please check the value of `author` in your About widget and create an associated author page if one does not already exist." $person_page_path }}
{{end}} {{end}}
@ -17,11 +17,11 @@
{{ $avatar := ($person_page.Resources.ByType "image").GetMatch "*avatar*" }} {{ $avatar := ($person_page.Resources.ByType "image").GetMatch "*avatar*" }}
<!-- About widget --> <!-- About widget -->
<div class="row" itemprop="author" itemscope itemtype="http://schema.org/Person" itemref="{{ if $.Site.Params.email }}person-email{{ end }}{{ if $.Site.Params.phone }} person-telephone{{ end }}{{ if $.Site.Params.address}} person-address{{ end }}"> <div class="row" itemprop="author" itemscope itemtype="http://schema.org/Person" itemref="{{ if site.Params.email }}person-email{{ end }}{{ if site.Params.phone }} person-telephone{{ end }}{{ if site.Params.address}} person-address{{ end }}">
<div class="col-12 col-lg-4"> <div class="col-12 col-lg-4">
<div id="profile"> <div id="profile">
{{ if $.Site.Params.gravatar }} {{ if site.Params.gravatar }}
<img class="portrait" src="https://s.gravatar.com/avatar/{{ md5 $person.email }}?s=200')" itemprop="image" alt="Avatar"> <img class="portrait" src="https://s.gravatar.com/avatar/{{ md5 $person.email }}?s=200')" itemprop="image" alt="Avatar">
{{ else if $avatar }} {{ else if $avatar }}
{{ $avatar_image := $avatar.Fill "250x250 Center" }} {{ $avatar_image := $avatar.Fill "250x250 Center" }}

View file

@ -17,10 +17,10 @@
{{ if eq $page.Params.email_form 1 }} {{ if eq $page.Params.email_form 1 }}
{{ $post_action = "netlify" }} {{ $post_action = "netlify" }}
{{ else }} {{ else }}
{{ if not $.Site.Params.email }} {{ if not site.Params.email }}
{{ errorf "Please set an email address for the contact form using the `email` parameter in `config.toml`. Otherwise, set `email_form = 0` to disable the contact form." }} {{ errorf "Please set an email address for the contact form using the `email` parameter in `config.toml`. Otherwise, set `email_form = 0` to disable the contact form." }}
{{ end }} {{ end }}
{{ $post_action = printf "action=\"https://formspree.io/%s\"" $.Site.Params.email }} {{ $post_action = printf "action=\"https://formspree.io/%s\"" site.Params.email }}
{{end}} {{end}}
<div class="mb-3"> <div class="mb-3">
@ -44,16 +44,16 @@
<ul class="fa-ul" itemscope> <ul class="fa-ul" itemscope>
{{ if and $.Site.Params.email (not $page.Params.email_form) }} {{ if and site.Params.email (not $page.Params.email_form) }}
<li> <li>
<i class="fa-li fas fa-envelope fa-2x" aria-hidden="true"></i> <i class="fa-li fas fa-envelope fa-2x" aria-hidden="true"></i>
<span id="person-email" itemprop="email"> <span id="person-email" itemprop="email">
{{- if $autolink }}<a href="mailto:{{ $.Site.Params.email }}">{{ $.Site.Params.email }}</a>{{ else }}{{ $.Site.Params.email }}{{ end -}} {{- if $autolink }}<a href="mailto:{{ site.Params.email }}">{{ site.Params.email }}</a>{{ else }}{{ site.Params.email }}{{ end -}}
</span> </span>
</li> </li>
{{ end }} {{ end }}
{{ with $.Site.Params.phone }} {{ with site.Params.phone }}
<li> <li>
<i class="fa-li fas fa-phone fa-2x" aria-hidden="true"></i> <i class="fa-li fas fa-phone fa-2x" aria-hidden="true"></i>
<span id="person-telephone" itemprop="telephone"> <span id="person-telephone" itemprop="telephone">
@ -62,21 +62,21 @@
</li> </li>
{{ end }} {{ end }}
{{ with $.Site.Params.address }} {{ with site.Params.address }}
<li> <li>
<i class="fa-li fas fa-map-marker fa-2x" aria-hidden="true"></i> <i class="fa-li fas fa-map-marker fa-2x" aria-hidden="true"></i>
<span id="person-address" itemprop="address">{{ . | markdownify | emojify }}</span> <span id="person-address" itemprop="address">{{ . | markdownify | emojify }}</span>
</li> </li>
{{ end }} {{ end }}
{{ with $.Site.Params.office_hours }} {{ with site.Params.office_hours }}
<li> <li>
<i class="fa-li fas fa-clock fa-2x" aria-hidden="true"></i> <i class="fa-li fas fa-clock fa-2x" aria-hidden="true"></i>
<span>{{ . | markdownify | emojify }}</span> <span>{{ . | markdownify | emojify }}</span>
</li> </li>
{{ end }} {{ end }}
{{ with $.Site.Params.appointment_url }} {{ with site.Params.appointment_url }}
<li> <li>
<i class="fa-li fas fa-calendar-check fa-2x" aria-hidden="true"></i> <i class="fa-li fas fa-calendar-check fa-2x" aria-hidden="true"></i>
<a href="{{ . }}" target="_blank" rel="noopener">{{ i18n "book_appointment" | default "Book an appointment" }}</a> <a href="{{ . }}" target="_blank" rel="noopener">{{ i18n "book_appointment" | default "Book an appointment" }}</a>
@ -84,7 +84,7 @@
{{ end }} {{ end }}
{{/* Contact links. */}} {{/* Contact links. */}}
{{ range $.Site.Params.contact_links }} {{ range site.Params.contact_links }}
{{ $pack := or .icon_pack "fas" }} {{ $pack := or .icon_pack "fas" }}
{{ $pack_prefix := $pack }} {{ $pack_prefix := $pack }}
{{ if in (slice "fab" "fas" "far" "fal") $pack }} {{ if in (slice "fab" "fas" "far" "fal") $pack }}
@ -106,14 +106,14 @@
</ul> </ul>
{{ if $.Site.Params.map }} {{ if site.Params.map }}
<div class="d-none"> <div class="d-none">
<input id="map-provider" value="{{ $.Site.Params.map }}"> <input id="map-provider" value="{{ site.Params.map }}">
<input id="map-lat" value="{{ $.Site.Params.latitude }}"> <input id="map-lat" value="{{ site.Params.latitude }}">
<input id="map-lng" value="{{ $.Site.Params.longitude }}"> <input id="map-lng" value="{{ site.Params.longitude }}">
<input id="map-dir" value="{{ $.Site.Params.address }}"> <input id="map-dir" value="{{ site.Params.address }}">
<input id="map-zoom" value="{{ $.Site.Params.zoom | default "15" }}"> <input id="map-zoom" value="{{ site.Params.zoom | default "15" }}">
<input id="map-api-key" value="{{ $.Site.Params.map_api_key }}"> <input id="map-api-key" value="{{ site.Params.map_api_key }}">
</div> </div>
<div id="map"></div> <div id="map"></div>
{{ end }} {{ end }}

View file

@ -8,19 +8,19 @@
{{ $items_sort := $st.Params.content.order| default "desc" }} {{ $items_sort := $st.Params.content.order| default "desc" }}
{{/* Query */}} {{/* Query */}}
{{ $query := where (where $.Site.RegularPages "Type" $items_type) "Params.featured" true }} {{ $query := where (where site.RegularPages "Type" $items_type) "Params.featured" true }}
{{/* Filters */}} {{/* Filters */}}
{{ if $st.Params.content.filters.tag }} {{ if $st.Params.content.filters.tag }}
{{ $archive_page := $.Site.GetPage (printf "tags/%s" $st.Params.content.filters.tag) }} {{ $archive_page := site.GetPage (printf "tags/%s" $st.Params.content.filters.tag) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}
{{ if $st.Params.content.filters.category }} {{ if $st.Params.content.filters.category }}
{{ $archive_page := $.Site.GetPage (printf "categories/%s" $st.Params.content.filters.category) }} {{ $archive_page := site.GetPage (printf "categories/%s" $st.Params.content.filters.category) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}
{{ if $st.Params.content.filters.publication_type }} {{ if $st.Params.content.filters.publication_type }}
{{ $archive_page := $.Site.GetPage (printf "publication_types/%s" $st.Params.content.filters.publication_type) }} {{ $archive_page := site.GetPage (printf "publication_types/%s" $st.Params.content.filters.publication_type) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}

View file

@ -14,20 +14,20 @@
{{ $items_sort := $st.Params.content.order | default "desc" }} {{ $items_sort := $st.Params.content.order | default "desc" }}
{{/* Query */}} {{/* Query */}}
{{ $query := where $.Site.RegularPages "Type" $items_type }} {{ $query := where site.RegularPages "Type" $items_type }}
{{ $archive_page := $.Site.GetPage "Section" $items_type }} {{ $archive_page := site.GetPage "Section" $items_type }}
{{/* Filters */}} {{/* Filters */}}
{{ if $st.Params.content.filters.tag }} {{ if $st.Params.content.filters.tag }}
{{ $archive_page = $.Site.GetPage (printf "tags/%s" $st.Params.content.filters.tag) }} {{ $archive_page = site.GetPage (printf "tags/%s" $st.Params.content.filters.tag) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}
{{ if $st.Params.content.filters.category }} {{ if $st.Params.content.filters.category }}
{{ $archive_page = $.Site.GetPage (printf "categories/%s" $st.Params.content.filters.category) }} {{ $archive_page = site.GetPage (printf "categories/%s" $st.Params.content.filters.category) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}
{{ if $st.Params.content.filters.publication_type }} {{ if $st.Params.content.filters.publication_type }}
{{ $archive_page = $.Site.GetPage (printf "publication_types/%s" $st.Params.content.filters.publication_type) }} {{ $archive_page = site.GetPage (printf "publication_types/%s" $st.Params.content.filters.publication_type) }}
{{ $query = $query | intersect $archive_page.Pages }} {{ $query = $query | intersect $archive_page.Pages }}
{{ end }} {{ end }}
{{ if $st.Params.content.filters.exclude_featured }} {{ if $st.Params.content.filters.exclude_featured }}

View file

@ -11,7 +11,7 @@
{{ with $page.Content }} {{ with $page.Content }}
<div class="col-md-12"> <div class="col-md-12">
<p>{{ . | markdownify }}</p> <p>{{ . }}</p>
</div> </div>
{{ end }} {{ end }}
@ -20,18 +20,18 @@
<h2 class="mb-4">{{ . | markdownify }}</h2> <h2 class="mb-4">{{ . | markdownify }}</h2>
</div> </div>
{{ $query := where (where $.Site.Pages "Section" "author") ".Params.user_groups" "intersect" (slice .) }} {{ $query := where (where site.Pages "Section" "author") ".Params.user_groups" "intersect" (slice .) }}
{{ range $query }} {{ range $query }}
{{ $avatar := (.Resources.ByType "image").GetMatch "*avatar*" }} {{ $avatar := (.Resources.ByType "image").GetMatch "*avatar*" }}
{{/* Get link to user's profile page. */}} {{/* Get link to user's profile page. */}}
{{ $link := "" }} {{ $link := "" }}
{{ with $.Site.GetPage (printf "/authors/%s" (path.Base (path.Split .Path).Dir)) }} {{ with site.GetPage (printf "/authors/%s" (path.Base (path.Split .Path).File.Dir)) }}
{{ $link = .RelPermalink }} {{ $link = .RelPermalink }}
{{ end }} {{ end }}
<div class="col-12 col-sm-auto people-person"> <div class="col-12 col-sm-auto people-person">
{{ $src := "" }} {{ $src := "" }}
{{ if $.Site.Params.gravatar }} {{ if site.Params.gravatar }}
{{ $src = printf "https://s.gravatar.com/avatar/%s?s=200" (md5 .Params.email) }} {{ $src = printf "https://s.gravatar.com/avatar/%s?s=200" (md5 .Params.email) }}
{{ else if $avatar }} {{ else if $avatar }}
{{ $avatar_image := $avatar.Fill "150x150 Center" }} {{ $avatar_image := $avatar.Fill "150x150 Center" }}

View file

@ -67,7 +67,7 @@
{{ end }} {{ end }}
<div class="{{ if or $st.Params.content.filter_button (eq $st.Params.design.view 3) }}isotope projects-container{{end}} {{if eq $st.Params.design.view 3}}js-layout-masonry{{else}}row js-layout-row{{end}} {{ if eq $st.Params.design.view 5 }}project-showcase mt-5{{end}}"> <div class="{{ if or $st.Params.content.filter_button (eq $st.Params.design.view 3) }}isotope projects-container{{end}} {{if eq $st.Params.design.view 3}}js-layout-masonry{{else}}row js-layout-row{{end}} {{ if eq $st.Params.design.view 5 }}project-showcase mt-5{{end}}">
{{ range $idx, $item := where $.Site.RegularPages "Type" $items_type }} {{ range $idx, $item := where site.RegularPages "Type" $items_type }}
{{ $link := $item.RelPermalink }} {{ $link := $item.RelPermalink }}
{{ $target := "" }} {{ $target := "" }}
{{ if $item.Params.external_link }} {{ if $item.Params.external_link }}

View file

@ -3,28 +3,28 @@
<div class="row"> <div class="row">
<div class="col-12 col-lg-4 section-heading"> <div class="col-12 col-lg-4 section-heading">
<h1>{{ with $page.Title }}{{ . | markdownify }}{{ end }}</h1> <h1>{{ with $page.Title }}{{ . | markdownify | emojify }}{{ end }}</h1>
{{ with $page.Params.subtitle }}<p>{{ . | markdownify }}</p>{{ end }} {{ with $page.Params.subtitle }}<p>{{ . | markdownify | emojify }}</p>{{ end }}
</div> </div>
<div class="col-12 col-lg-8"> <div class="col-12 col-lg-8">
{{ with $page.Content }}<p>{{ . | markdownify }}</p>{{ end }} {{ with $page.Content }}<p>{{ . }}</p>{{ end }}
{{ if not (eq (len $.Site.Taxonomies.tags) 0) }} {{ if not (eq (len site.Taxonomies.tags) 0) }}
{{ $fontSmall := 0.8 }} {{ $fontSmall := 0.8 }}
{{ $fontBig := 2.5 }} {{ $fontBig := 2.5 }}
{{ $fontDelta := sub $fontBig $fontSmall }} {{ $fontDelta := sub $fontBig $fontSmall }}
{{ $min := len (index $.Site.Taxonomies.tags.ByCount.Reverse 0).Pages }} {{ $min := len (index site.Taxonomies.tags.ByCount.Reverse 0).Pages }}
{{ $max := add (len (index $.Site.Taxonomies.tags.ByCount 0).Pages) 1 }} {{ $max := add (len (index site.Taxonomies.tags.ByCount 0).Pages) 1 }}
{{ $delta := sub $max $min }} {{ $delta := sub $max $min }}
{{ $fontStep := div $fontDelta $delta }} {{ $fontStep := div $fontDelta $delta }}
<div class="tag-cloud"> <div class="tag-cloud">
{{ range $name, $taxonomy := $.Site.Taxonomies.tags }} {{ range $name, $taxonomy := site.Taxonomies.tags }}
{{ $tagCount := len $taxonomy.Pages }} {{ $tagCount := len $taxonomy.Pages }}
{{ $weight := div (sub (math.Log $tagCount) (math.Log $min)) (sub (math.Log $max) (math.Log $min)) }} {{ $weight := div (sub (math.Log $tagCount) (math.Log $min)) (sub (math.Log $max) (math.Log $min)) }}
{{ $fontSize := add $fontSmall (mul (sub $fontBig $fontSmall) $weight) }} {{ $fontSize := add $fontSmall (mul (sub $fontBig $fontSmall) $weight) }}
<a href="{{ ($.Site.GetPage (printf "tags/%s" $name)).RelPermalink }}" style="font-size:{{ $fontSize }}rem">{{ $name }}</a> <a href="{{ .Page.RelPermalink }}" style="font-size:{{ $fontSize }}rem">{{ $name }}</a>
{{ end }} {{ end }}
</div> </div>
{{ end }} {{ end }}

View file

@ -21,7 +21,7 @@
{{ partial "pub_types.html" $ }} {{ partial "pub_types.html" $ }}
{{ $pub_types := $.Scratch.Get "pub_types" }} {{ $pub_types := $.Scratch.Get "pub_types" }}
{{ range $index, $pubtype := .Params.publication_types }} {{ range $index, $pubtype := .Params.publication_types }}
<a href="{{ ($.Site.GetPage "section" "publication").RelPermalink }}#{{ . | urlize }}"> <a href="{{ (site.GetPage "section" "publication").RelPermalink }}#{{ . | urlize }}">
{{ index $pub_types (int .) }} {{ index $pub_types (int .) }}
</a> </a>
{{ end }} {{ end }}

View file

@ -1,21 +1,30 @@
{{/* Generate RSS with full page content rather than just summary. */}}
{{- $pages := .Data.Pages -}}
{{- $limit := .Site.Config.Services.RSS.Limit -}}
{{- if ge $limit 1 -}}
{{- $pages = $pages | first $limit -}}
{{- end -}}
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel> <channel>
<title>{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}</title> <title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
<link>{{ .Permalink }}</link> <link>{{ .Permalink }}</link>
<description>Recent content {{ with .Title }}in {{.}} {{ end }}on {{ .Site.Title }}</description> <description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
<generator>Source Themes Academic (https://sourcethemes.com/academic/)</generator>{{ with .Site.LanguageCode }} <generator>Source Themes Academic (https://sourcethemes.com/academic/)</generator>{{ with .Site.LanguageCode }}
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }} <language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }} <managingEditor>{{.}}{{ with site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }} <webMaster>{{.}}{{ with site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }} <copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }} <lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
<atom:link href="{{.URL}}" rel="self" type="application/rss+xml" /> {{ with .OutputFormats.Get "RSS" }}
{{ range first 15 .Data.Pages }} {{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
{{ end }}
{{ range $pages }}
<item> <item>
<title>{{ .Title }}</title> <title>{{ .Title }}</title>
<link>{{ .Permalink }}</link> <link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate> <pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}} {{ with .Site.Author.email }}<author>{{.}}{{ with site.Author.name }} ({{.}}){{end}}</author>{{end}}
<guid>{{ .Permalink }}</guid> <guid>{{ .Permalink }}</guid>
<description>{{ .Content | html }}</description> <description>{{ .Content | html }}</description>
</item> </item>

View file

@ -1,5 +1,5 @@
<div class="alert alert-{{ .Get 0 }}"> <div class="alert alert-{{ .Get 0 }}">
<div> <div>
{{ .Inner }} {{ .Inner | markdownify | emojify }}
</div> </div>
</div> </div>

View file

@ -1 +1 @@
<span class="markup-quote">{{ .Inner }}</span> <span class="markup-quote">{{ .Inner | markdownify | emojify }}</span>

View file

@ -1,5 +1,5 @@
<ul class="list-unstyled"> <ul class="list-unstyled">
{{ range ($.Site.GetPage "taxonomyTerm" "categories").Pages }} {{ range (site.GetPage "taxonomyTerm" "categories").Pages }}
<li><a href="{{.RelPermalink}}">{{.Title}}</a></li> <li><a href="{{.RelPermalink}}">{{.Title}}</a></li>
{{ end }} {{ end }}
</ul> </ul>

View file

@ -1,5 +1,5 @@
<ul class="list-unstyled"> <ul class="list-unstyled">
{{ range ($.Site.GetPage "taxonomyTerm" "tags").Pages }} {{ range (site.GetPage "taxonomyTerm" "tags").Pages }}
<li><a href="{{.RelPermalink}}">{{.Title}}</a></li> <li><a href="{{.RelPermalink}}">{{.Title}}</a></li>
{{ end }} {{ end }}
</ul> </ul>

View file

@ -1,3 +1,3 @@
<aside class="notes"> <aside class="notes">
{{ .Inner | markdownify }} {{ .Inner | markdownify | emojify }}
</aside> </aside>

View file

@ -1,14 +0,0 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
{{ range .Data.Pages }}
<url>
{{ if .IsTranslated }}
<xhtml:link rel="alternate" href="{{ .Permalink }}" hreflang="{{ .Lang }}"/>{{ range .Translations }}
<xhtml:link rel="alternate" href="{{ .Permalink }}" hreflang="{{ .Lang }}"/>{{ end }}
{{ end }}
<loc>{{ .Permalink }}</loc>{{ if not .Lastmod.IsZero }}
<lastmod>{{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}</lastmod>{{ end }}{{ with .Sitemap.ChangeFreq }}
<changefreq>{{ . }}</changefreq>{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
<priority>{{ .Sitemap.Priority }}</priority>{{ end }}
</url>
{{ end }}
</urlset>

View file

@ -20,12 +20,12 @@
<div class="col-12 col-md-3 pub-row-heading">{{ i18n "date" }}</div> <div class="col-12 col-md-3 pub-row-heading">{{ i18n "date" }}</div>
<div class="col-12 col-md-9" itemprop="datePublished"> <div class="col-12 col-md-9" itemprop="datePublished">
{{ $date := .Date }} {{ $date := .Date }}
{{ (time $date).Format $.Site.Params.date_format }} {{ (time $date).Format site.Params.date_format }}
<div class="talk-time"> <div class="talk-time">
{{ if not .Params.all_day }} {{ if not .Params.all_day }}
{{ (time $date).Format ($.Site.Params.time_format | default "3:04 PM") }} {{ (time $date).Format (site.Params.time_format | default "3:04 PM") }}
{{ with .Params.date_end }} {{ with .Params.date_end }}
&mdash; {{ (time .).Format ($.Site.Params.time_format | default "3:04 PM") }} &mdash; {{ (time .).Format (site.Params.time_format | default "3:04 PM") }}
{{ end }} {{ end }}
{{ end }} {{ end }}
</div> </div>

View file

@ -5,7 +5,7 @@
[build.environment] [build.environment]
HUGO_THEME = "repo" HUGO_THEME = "repo"
HUGO_VERSION = "0.53" HUGO_VERSION = "0.55.2"
HUGO_ENABLEGITINFO = "true" HUGO_ENABLEGITINFO = "true"
[context.production.environment] [context.production.environment]

View file

@ -1,25 +1,42 @@
name = "Academic" name = "Academic"
license = "MIT" license = "MIT"
licenselink = "https://github.com/gcushen/hugo-academic/blob/master/LICENSE.md" licenselink = "https://github.com/gcushen/hugo-academic/blob/master/LICENSE.md"
description = "The website designer for Hugo. Build anything and deploy with one click! Fully customizable with themes, plugins, and language packs." description = "The website builder for Hugo. Build *anything* with widgets and deploy with one click! Fully personalize your site with themes, plugins, and language packs."
homepage = "https://sourcethemes.com/academic/" homepage = "https://sourcethemes.com/academic/"
min_version = "0.53" min_version = "0.55"
tags = ["academic", tags = ["widgets",
"resume",
"portfolio", "portfolio",
"responsive", "responsive",
"student", "clean",
"personal", "personal",
"university", "company",
"blog", "blog",
"minimal" "minimal",
"light",
"dark",
"multilingual",
"documentation",
"landing page",
"projects",
"single page",
"contact form",
"mobile",
"gallery",
"search",
"presentation",
"simple",
"minimalist",
"starter",
"modern",
"one page",
"customizable",
"technical",
"product",
"slide"
] ]
features = ["academic profile", features = ["page builder", "widgets", "themes", "search", "research publication system", "filterable portfolio",
"research publication system", "blog", "create courses", "talks", "events", "slides", "gallery", "contact form"]
"projects",
"blog",
"teaching",
"contact"
]
[author] [author]
name = "George Cushen" name = "George Cushen"