mirror of
https://github.com/alanorth/hugo-theme-bootstrap4-blog.git
synced 2025-05-13 15:57:49 +02:00
Compare commits
45 Commits
Author | SHA1 | Date | |
---|---|---|---|
1faeef487b
|
|||
8d6b318a63
|
|||
cca6636809
|
|||
d6a099a5cd
|
|||
70e79a60fa
|
|||
ed69bec464
|
|||
aed40fe2d3
|
|||
81c64c55dd
|
|||
480f31074d
|
|||
947ec526cd
|
|||
633321fb66
|
|||
78eb7cf237
|
|||
620cfa2366
|
|||
b862745a0d
|
|||
9da05e7869
|
|||
1320168ebd
|
|||
9bb2ec06b0
|
|||
9934368215
|
|||
2db85d8ab6
|
|||
e4876d98cf
|
|||
6a3bdc53fd
|
|||
974203f6eb
|
|||
90d1a79e01
|
|||
ed144e2467
|
|||
f71886b04f
|
|||
4c15fdb00a
|
|||
8ea73321a1
|
|||
37187d06f3
|
|||
fdefc2e541
|
|||
3c81a6ca75
|
|||
dedf1bd62c
|
|||
ad29f240a2
|
|||
b70b3684b6
|
|||
2916229d28
|
|||
3cced68d64
|
|||
1ff41d275d
|
|||
f410c43eed | |||
08cf066111 | |||
fbb4b9f227
|
|||
9613fcdeee
|
|||
13b9552119
|
|||
c079c28841
|
|||
af05f26a36 | |||
09e29be817
|
|||
3b0a3a1ddc
|
15
.build.yml
Normal file
15
.build.yml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
image: archlinux
|
||||||
|
packages:
|
||||||
|
- nodejs-lts-dubnium
|
||||||
|
- npm
|
||||||
|
sources:
|
||||||
|
- https://git.sr.ht/~alanorth/hugo-theme-bootstrap4-blog
|
||||||
|
tasks:
|
||||||
|
- setup: |
|
||||||
|
id
|
||||||
|
node -v
|
||||||
|
cd hugo-theme-bootstrap4-blog
|
||||||
|
npm install
|
||||||
|
- test: |
|
||||||
|
cd hugo-theme-bootstrap4-blog
|
||||||
|
npm run build
|
@ -1,10 +1,10 @@
|
|||||||
language: node_js
|
language: node_js
|
||||||
node_js:
|
node_js:
|
||||||
- 6
|
|
||||||
- 8
|
- 8
|
||||||
- 9
|
- 10
|
||||||
|
- 11
|
||||||
script: npm run build
|
script: npm run build
|
||||||
sudo: false
|
sudo: false
|
||||||
dist: trusty
|
dist: xenial
|
||||||
|
|
||||||
# vim: ts=2 sw=2 et
|
# vim: ts=2 sw=2 et
|
||||||
|
35
CHANGELOG.md
Normal file
35
CHANGELOG.md
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
# Changelog
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [1.3.1] - 2019-05-05
|
||||||
|
### Added
|
||||||
|
- SourceHut CI configuration (@alanorth)
|
||||||
|
|
||||||
|
### Updated
|
||||||
|
- Twitter sharing button (@alanorth)
|
||||||
|
- Dependencies in package.json (@alanorth)
|
||||||
|
|
||||||
|
## [1.3.0] - 2019-04-22
|
||||||
|
### Added
|
||||||
|
- Arabic translation (@alanorth)
|
||||||
|
- Support for RTL CSS (@alanorth)
|
||||||
|
|
||||||
|
### Updated
|
||||||
|
- clean-css-cli 4.3.0
|
||||||
|
|
||||||
|
## [1.2.1] - 2019-04-14
|
||||||
|
### Added
|
||||||
|
- Dutch translation #107 (@bit33)
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- Google+ icons #108 (@bit33)
|
||||||
|
|
||||||
|
### Updated
|
||||||
|
- Template functions for Hugo 0.55.0 (@alanorth)
|
||||||
|
|
||||||
|
## [1.2.0] - 2019-02-13
|
||||||
|
### Updated
|
||||||
|
- Bootstrap v4.3.1
|
@ -1,4 +1,4 @@
|
|||||||
# Hugo Bootstrap v4 Blog [](https://travis-ci.org/alanorth/hugo-theme-bootstrap4-blog)
|
# Hugo Bootstrap v4 Blog [](https://travis-ci.org/alanorth/hugo-theme-bootstrap4-blog) [](https://builds.sr.ht/~alanorth/hugo-theme-bootstrap4-blog?)
|
||||||
A simple but opinionated [Hugo](https://gohugo.io) theme geared towards blog-style content. Based on the older two-column [Bootstrap blog example](https://v4-alpha.getbootstrap.com/examples/blog/) that was used for several Bootstrap versions, but has now been retired in favor of a "snarky" (their words) new example as of version [4.0.0's final release](https://blog.getbootstrap.com/2018/01/18/bootstrap-4/).
|
A simple but opinionated [Hugo](https://gohugo.io) theme geared towards blog-style content. Based on the older two-column [Bootstrap blog example](https://v4-alpha.getbootstrap.com/examples/blog/) that was used for several Bootstrap versions, but has now been retired in favor of a "snarky" (their words) new example as of version [4.0.0's final release](https://blog.getbootstrap.com/2018/01/18/bootstrap-4/).
|
||||||
|
|
||||||

|

|
||||||
@ -11,14 +11,14 @@ See [picturingjordan.com](https://picturingjordan.com) for an example of this th
|
|||||||
- Uses Bootstrap v4's [native system font stack](https://getbootstrap.com/docs/4.0/content/reboot/#native-font-stack) to load quickly and look good on all platforms
|
- Uses Bootstrap v4's [native system font stack](https://getbootstrap.com/docs/4.0/content/reboot/#native-font-stack) to load quickly and look good on all platforms
|
||||||
- Excellent [structured data](https://developers.google.com/search/docs/guides/intro-structured-data) (JSON-LD), [OpenGraph](http://ogp.me), and [Twitter Card](https://dev.twitter.com/cards/types) metadata support
|
- Excellent [structured data](https://developers.google.com/search/docs/guides/intro-structured-data) (JSON-LD), [OpenGraph](http://ogp.me), and [Twitter Card](https://dev.twitter.com/cards/types) metadata support
|
||||||
- robots.txt linking to XML sitemap (disabled by default, see [Hugo docs](https://gohugo.io/extras/robots-txt/))
|
- robots.txt linking to XML sitemap (disabled by default, see [Hugo docs](https://gohugo.io/extras/robots-txt/))
|
||||||
- Basic support for [multi-lingual content](https://gohugo.io/content-management/multilingual/) (added in Hugo 0.17) and user interface translation (i18n)
|
- Basic support for [multi-lingual content](https://gohugo.io/content-management/multilingual/) (added in Hugo 0.17) and user interface translation (i18n), including RTL languages like Arabic
|
||||||
- Supports Google, Bing, and Yandex site verification via meta tags
|
- Supports Google, Bing, and Yandex site verification via meta tags
|
||||||
- Supports Google Analytics (async version), see [Hugo docs](https://gohugo.io/extras/analytics/)
|
- Supports Google Analytics (async version), see [Hugo docs](https://gohugo.io/extras/analytics/)
|
||||||
- Supports Disqus comments, see [Hugo docs](https://gohugo.io/extras/comments/)
|
- Supports Disqus comments, see [Hugo docs](https://gohugo.io/extras/comments/)
|
||||||
- Can show a message about cookie usage to the user, see [`exampleSite/config.toml`](https://github.com/alanorth/hugo-theme-bootstrap4-blog/blob/master/exampleSite/config.toml)
|
- Can show a message about cookie usage to the user, see [`exampleSite/config.toml`](https://github.com/alanorth/hugo-theme-bootstrap4-blog/blob/master/exampleSite/config.toml)
|
||||||
- Allow addition of custom `<head>` code in site's `layouts/partial/head-custom.html` (see [#17](https://github.com/alanorth/hugo-theme-bootstrap4-blog/pull/17))
|
- Allow addition of custom `<head>` code in site's `layouts/partial/head-custom.html` (see [#17](https://github.com/alanorth/hugo-theme-bootstrap4-blog/pull/17))
|
||||||
- Configurable display of summaries of content in list templates.
|
- Configurable display of summaries of content in list templates.
|
||||||
- configurable keywords for every post
|
- Configurable keywords for every post
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
Clone the repository to your site's `themes` directory. Refer to [`exampleSite/config.toml`](https://github.com/alanorth/hugo-theme-bootstrap4-blog/blob/master/exampleSite/config.toml) for recommended configuration values.
|
Clone the repository to your site's `themes` directory. Refer to [`exampleSite/config.toml`](https://github.com/alanorth/hugo-theme-bootstrap4-blog/blob/master/exampleSite/config.toml) for recommended configuration values.
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"style": "static/css/style.css",
|
"style": "static/css/style.css",
|
||||||
|
"stylertl": "static/css/style.rtl.css",
|
||||||
"cookieconsentcss": "static/css/cookieconsent.min.css",
|
"cookieconsentcss": "static/css/cookieconsent.min.css",
|
||||||
"cookieconsentjs": "static/js/cookieconsent.min.js"
|
"cookieconsentjs": "static/js/cookieconsent.min.js"
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
style = "sha384-6+EGfPoOzk/n2DVJSlglKT8TV1TgIMvVcKI73IZgBswLasPBn94KommV6ilJqCXE"
|
style = "sha384-G5B34w7DFTumWTswxYzTX7NWfbvQEg1HbFFEg6ItN03uTAAoS2qkPS/fu3LhuuSA"
|
||||||
|
stylertl = "sha384-wxZc+CAOuj0Z/AJqCKfxerYzFw93KXl6wI/vGBVOmdqRyBrIv3STXmzcnBdyQK9C"
|
||||||
cookieconsentcss = "sha384-6iYDyQZuuNT7DcPJGXx241czdv2+GDGUcXRiqw1iXrjgYMTorSetxFP3JCMQMwnR"
|
cookieconsentcss = "sha384-6iYDyQZuuNT7DcPJGXx241czdv2+GDGUcXRiqw1iXrjgYMTorSetxFP3JCMQMwnR"
|
||||||
cookieconsentjs = "sha384-PDjg2ZdS3khPzd53i18+7tzB32JVQfFMrTXYo21RqPgUmEVAPwIhxOUF/8sP79CS"
|
cookieconsentjs = "sha384-PDjg2ZdS3khPzd53i18+7tzB32JVQfFMrTXYo21RqPgUmEVAPwIhxOUF/8sP79CS"
|
||||||
|
47
i18n/ar.yaml
Normal file
47
i18n/ar.yaml
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
- id: about
|
||||||
|
translation: "عن المُدَوَّنَة"
|
||||||
|
|
||||||
|
- id: home
|
||||||
|
translation: "الصَّفْحَة الرَّئيسِيَّة"
|
||||||
|
|
||||||
|
- id: recentPosts
|
||||||
|
translation: "المَنْشورات الأَخِيرَة"
|
||||||
|
|
||||||
|
- id: readMore
|
||||||
|
translation: "قِرَاءَة المَزِيد ←"
|
||||||
|
|
||||||
|
- id: translations
|
||||||
|
translation: "تَرْجَمَة"
|
||||||
|
|
||||||
|
- id: share
|
||||||
|
translation: "شَارِك"
|
||||||
|
|
||||||
|
- id: paginatorPrevious
|
||||||
|
translation: "الصَّفْحَة السَّابِقَة"
|
||||||
|
|
||||||
|
- id: paginatorNext
|
||||||
|
translation: "الصَّفْحَة التَّالِيَة"
|
||||||
|
|
||||||
|
- id: cookieMessage
|
||||||
|
translation: "هذا المَوْقِع يَسْتَخْدِم مَلَفَّات كُوكِيز"
|
||||||
|
|
||||||
|
- id: cookieLink
|
||||||
|
translation: ".اعْرَف أَكْثَر"
|
||||||
|
|
||||||
|
- id: cookieDismiss
|
||||||
|
translation: "!أُوَافِق"
|
||||||
|
|
||||||
|
- id: backToTop
|
||||||
|
translation: "العَوْدَة إِلَى الاَعْلَى"
|
||||||
|
|
||||||
|
- id: links
|
||||||
|
translation: "الرَِّوَابِط"
|
||||||
|
|
||||||
|
- id: authoredBy
|
||||||
|
translation: "الكاتب"
|
||||||
|
|
||||||
|
- id: postedIn
|
||||||
|
translation: "في"
|
||||||
|
|
||||||
|
- id: comma
|
||||||
|
translation: "،"
|
@ -36,3 +36,9 @@
|
|||||||
|
|
||||||
- id: links
|
- id: links
|
||||||
translation: "Линкове"
|
translation: "Линкове"
|
||||||
|
|
||||||
|
- id: authoredBy
|
||||||
|
translation: "от"
|
||||||
|
|
||||||
|
- id: postedIn
|
||||||
|
translation: "в"
|
||||||
|
@ -36,3 +36,12 @@
|
|||||||
|
|
||||||
- id: links
|
- id: links
|
||||||
translation: "Links"
|
translation: "Links"
|
||||||
|
|
||||||
|
- id: authoredBy
|
||||||
|
translation: "by"
|
||||||
|
|
||||||
|
- id: postedIn
|
||||||
|
translation: "in"
|
||||||
|
|
||||||
|
- id: comma
|
||||||
|
translation: ","
|
||||||
|
38
i18n/nl.yaml
Normal file
38
i18n/nl.yaml
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
- id: about
|
||||||
|
translation: "Over ons"
|
||||||
|
|
||||||
|
- id: home
|
||||||
|
translation: "Home"
|
||||||
|
|
||||||
|
- id: recentPosts
|
||||||
|
translation: "Recente berichten"
|
||||||
|
|
||||||
|
- id: readMore
|
||||||
|
translation: "Lees verder →"
|
||||||
|
|
||||||
|
- id: translations
|
||||||
|
translation: "Vertalingen"
|
||||||
|
|
||||||
|
- id: share
|
||||||
|
translation: "Delen"
|
||||||
|
|
||||||
|
- id: paginatorPrevious
|
||||||
|
translation: "Vorige pagina"
|
||||||
|
|
||||||
|
- id: paginatorNext
|
||||||
|
translation: "Volgende pagina"
|
||||||
|
|
||||||
|
- id: cookieMessage
|
||||||
|
translation: "Deze website gebruikt cookies."
|
||||||
|
|
||||||
|
- id: cookieLink
|
||||||
|
translation: "Lees hier meer"
|
||||||
|
|
||||||
|
- id: cookieDismiss
|
||||||
|
translation: "OK"
|
||||||
|
|
||||||
|
- id: backToTop
|
||||||
|
translation: "Terug naar boven"
|
||||||
|
|
||||||
|
- id: links
|
||||||
|
translation: "Links"
|
@ -1,5 +1,5 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ .Lang }}">
|
<html lang="{{ .Lang }}" {{ if eq .Lang "ar" }}dir="rtl"{{ end }}>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
{{ partial "head-meta.html" . }}
|
{{ partial "head-meta.html" . }}
|
||||||
@ -12,14 +12,19 @@
|
|||||||
|
|
||||||
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
||||||
|
|
||||||
|
{{ if eq .Lang "ar" }}
|
||||||
|
{{ "<!-- ar -->" | safeHTML }}
|
||||||
|
<link href="{{ .Site.BaseURL }}css/style.rtl.css" rel="stylesheet"{{ if not .Site.Params.disable_sri }} integrity="{{ .Site.Data.sri.styleltr}}" crossorigin="anonymous"{{ end }}>
|
||||||
|
{{ else }}
|
||||||
{{ "<!-- combined, minified CSS -->" | safeHTML }}
|
{{ "<!-- combined, minified CSS -->" | safeHTML }}
|
||||||
<link href="{{ .Site.BaseURL }}css/style.css" rel="stylesheet"{{ if not .Site.Params.disable_sri }} integrity="{{ .Site.Data.sri.style}}" crossorigin="anonymous"{{ end }}>
|
<link href="{{ .Site.BaseURL }}css/style.css" rel="stylesheet"{{ if not .Site.Params.disable_sri }} integrity="{{ .Site.Data.sri.style}}" crossorigin="anonymous"{{ end }}>
|
||||||
|
|
||||||
{{ if .RSSLink }}
|
|
||||||
{{ "<!-- RSS 2.0 feed -->" | safeHTML }}
|
|
||||||
<link href="{{ .RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" />
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
{{ "<!-- RSS 2.0 feed -->" | safeHTML }}
|
||||||
|
{{ with .OutputFormats.Get "rss" -}}
|
||||||
|
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||||
|
{{ end -}}
|
||||||
|
|
||||||
{{ template "_internal/google_analytics_async.html" . }}
|
{{ template "_internal/google_analytics_async.html" . }}
|
||||||
|
|
||||||
{{ if .Site.Params.cookie_consent_info_url }}
|
{{ if .Site.Params.cookie_consent_info_url }}
|
||||||
@ -50,8 +55,8 @@
|
|||||||
{{ if (ne .Site.Params.header_visible false) }}
|
{{ if (ne .Site.Params.header_visible false) }}
|
||||||
<header class="blog-header">
|
<header class="blog-header">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1 class="blog-title"><a href="{{ .Site.BaseURL }}" rel="home">{{ .Site.Title | safeHTML }}</a></h1>
|
<h1 class="blog-title" dir="auto"><a href="{{ .Site.BaseURL }}" rel="home">{{ .Site.Title | safeHTML }}</a></h1>
|
||||||
{{ if .Site.Params.description }}<p class="lead blog-description">{{ .Site.Params.description | markdownify }}</p>{{ end }}
|
{{ if .Site.Params.description }}<p class="lead blog-description" dir="auto">{{ .Site.Params.description | markdownify }}</p>{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
@ -76,7 +81,7 @@
|
|||||||
|
|
||||||
{{ block "footer" . }}
|
{{ block "footer" . }}
|
||||||
<footer class="blog-footer">
|
<footer class="blog-footer">
|
||||||
<p>
|
<p dir="auto">
|
||||||
{{ if .Site.Copyright }}
|
{{ if .Site.Copyright }}
|
||||||
{{ .Site.Copyright | markdownify }}
|
{{ .Site.Copyright | markdownify }}
|
||||||
{{ else }}
|
{{ else }}
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
<article class="blog-post">
|
<article class="blog-post">
|
||||||
<header>
|
<header>
|
||||||
<h2 class="blog-post-title"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
<h2 class="blog-post-title" dir="auto"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
||||||
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> by {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} in {{ partial "meta-terms.html" . }}{{ end }}</p>
|
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> {{ i18n "authoredBy" }} {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} {{ i18n "postedIn" }} {{ partial "meta-terms.html" . }}{{ end }}</p>
|
||||||
</header>
|
</header>
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
</article> <!-- /.blog-post -->
|
</article> <!-- /.blog-post -->
|
||||||
|
@ -58,8 +58,8 @@
|
|||||||
|
|
||||||
<article class="blog-post">
|
<article class="blog-post">
|
||||||
<header>
|
<header>
|
||||||
<h2 class="blog-post-title"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
<h2 class="blog-post-title" dir="auto"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
||||||
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> by {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} in {{ partial "meta-terms.html" . }}{{ end }}</p>
|
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> {{ i18n "authoredBy" }} {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} {{ i18n "postedIn" }} {{ partial "meta-terms.html" . }}{{ end }}</p>
|
||||||
</header>
|
</header>
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
|
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
<article class="blog-post">
|
<article class="blog-post">
|
||||||
<header>
|
<header>
|
||||||
<h2 class="blog-post-title"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
<h2 class="blog-post-title" dir="auto"><a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h2>
|
||||||
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> by {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} in {{ partial "meta-terms.html" . }}{{ end }}</p>
|
<p class="blog-post-meta"><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format $dateFormat }}</time> {{ i18n "authoredBy" }} {{ .Params.author | default .Site.Params.author }}{{ if or (.Params.categories) (.Params.tags) }} {{ i18n "postedIn" }} {{ partial "meta-terms.html" . }}{{ end }}</p>
|
||||||
</header>
|
</header>
|
||||||
{{ .Summary }}
|
{{ .Summary }}
|
||||||
<a href='{{ .Permalink }}'>{{ i18n "readMore" }}</a>
|
<a href='{{ .Permalink }}'>{{ i18n "readMore" }}</a>
|
||||||
|
@ -16,6 +16,6 @@
|
|||||||
<meta name="yandex-verification" content="{{ . }}" />
|
<meta name="yandex-verification" content="{{ . }}" />
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- .Hugo.Generator -}}
|
{{- .Site.Hugo.Generator -}}
|
||||||
|
|
||||||
{{- /* vim: set ts=2 sw=2 et: */}}
|
{{- /* vim: set ts=2 sw=2 et: */}}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
{{ if .Params.categories }}
|
{{ if .Params.categories }}
|
||||||
<i class="fa fa-folder" aria-hidden="true"></i> {{ range $index, $category := .Params.categories }}{{ if gt $index 0 }}, {{ end }}<a href="{{ "/categories/" | relLangURL }}{{ . | urlize }}" rel="category tag">{{ . }}</a>{{ end }}
|
<i class="fa fa-folder" aria-hidden="true"></i> {{ range $index, $category := .Params.categories }}{{ if gt $index 0 }}{{ i18n "comma" }} {{ end }}<a href="{{ "/categories/" | relLangURL }}{{ . | urlize }}" rel="category tag">{{ . }}</a>{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Params.tags }}
|
{{ if .Params.tags }}
|
||||||
<i class="fa fa-tag" aria-hidden="true"></i> {{ range $index, $tag := .Params.tags }}{{ if gt $index 0 }}, {{ end }}<a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}" rel="tag">{{ . }}</a>{{ end }}
|
<i class="fa fa-tag" aria-hidden="true"></i> {{ range $index, $tag := .Params.tags }}{{ if gt $index 0 }}{{ i18n "comma" }} {{ end }}<a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}" rel="tag">{{ . }}</a>{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- /* vim: set ts=2 sw=2 et: */}}
|
{{- /* vim: set ts=2 sw=2 et: */}}
|
||||||
|
@ -2,9 +2,8 @@
|
|||||||
<h4>{{ i18n "share" }}</h4>
|
<h4>{{ i18n "share" }}</h4>
|
||||||
<nav class="nav sharing-icons">
|
<nav class="nav sharing-icons">
|
||||||
<a class="nav-item" href="https://www.facebook.com/sharer/sharer.php?u={{ .Permalink }}" title="Share on Facebook"><span class="fa fa-facebook fa-2x" aria-hidden="true"></span></a>
|
<a class="nav-item" href="https://www.facebook.com/sharer/sharer.php?u={{ .Permalink }}" title="Share on Facebook"><span class="fa fa-facebook fa-2x" aria-hidden="true"></span></a>
|
||||||
<a class="nav-item" href="https://plus.google.com/share?url={{ .Permalink }}" title="Share on Google+"><span class="fa fa-google-plus fa-2x" aria-hidden="true"></span></a>
|
|
||||||
<a class="nav-item" href="https://www.linkedin.com/shareArticle?mini=true&url={{ .Permalink }}" title="Share on LinkedIn"><span class="fa fa-linkedin fa-2x" aria-hidden="true"></span></a>
|
<a class="nav-item" href="https://www.linkedin.com/shareArticle?mini=true&url={{ .Permalink }}" title="Share on LinkedIn"><span class="fa fa-linkedin fa-2x" aria-hidden="true"></span></a>
|
||||||
<a class="nav-item" href="https://twitter.com/home?status={{ .Permalink }}" title="Tweet this"><span class="fa fa-twitter fa-2x"></span></a>
|
<a class="nav-item" href="https://twitter.com/intent/tweet?url={{ .Permalink }}&text={{ .Title }}" title="Tweet this"><span class="fa fa-twitter fa-2x"></span></a>
|
||||||
</nav>
|
</nav>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
{{ if and (.Site.Params.sidebar) (isset .Site.Params.sidebar "about") }}
|
{{ if and (.Site.Params.sidebar) (isset .Site.Params.sidebar "about") }}
|
||||||
<section class="sidebar-module sidebar-module-inset">
|
<section class="sidebar-module sidebar-module-inset">
|
||||||
<h4>{{ i18n "about" }}</h4>
|
<h4>{{ i18n "about" }}</h4>
|
||||||
<p>{{ .Site.Params.sidebar.about | markdownify }}</p>
|
<p dir="auto">{{ .Site.Params.sidebar.about | markdownify }}</p>
|
||||||
</section>
|
</section>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
1656
package-lock.json
generated
Normal file
1656
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
14
package.json
14
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "hugo-theme-bootstrap4-blog",
|
"name": "hugo-theme-bootstrap4-blog",
|
||||||
"version": "1.1.7",
|
"version": "1.3.1",
|
||||||
"description": "A Bootstrap v4 theme for the Hugo static site generator.",
|
"description": "A Bootstrap v4 theme for the Hugo static site generator.",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@ -8,20 +8,22 @@
|
|||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build:css": "node-sass --output-style expanded --precision 6 source/scss/style.scss static/css/style.css.tmp && cleancss --level 1 static/css/style.css.tmp -o static/css/style.css",
|
"build:css": "node-sass --output-style expanded --precision 6 source/scss/style.scss static/css/style.css.tmp && cleancss --level 1 static/css/style.css.tmp -o static/css/style.css",
|
||||||
|
"build:ltrcss": "rtlcss -s static/css/style.css.tmp static/css/style.rtl.css.tmp && cleancss --level 1 static/css/style.rtl.css.tmp -o static/css/style.rtl.css",
|
||||||
"build:fonts": "cp node_modules/font-awesome/fonts/* static/fonts",
|
"build:fonts": "cp node_modules/font-awesome/fonts/* static/fonts",
|
||||||
"build:cookieconsent": "cp node_modules/cookieconsent/build/cookieconsent.min.css static/css && cp node_modules/cookieconsent/build/cookieconsent.min.js static/js",
|
"build:cookieconsent": "cp node_modules/cookieconsent/build/cookieconsent.min.css static/css && cp node_modules/cookieconsent/build/cookieconsent.min.js static/js",
|
||||||
"build:generatesri": "node build/sri.js > data/sri.toml",
|
"build:generatesri": "node build/sri.js > data/sri.toml",
|
||||||
"build": "npm run build:css && npm run build:fonts && npm run build:cookieconsent && npm run build:generatesri && npm run clean",
|
"build": "npm run build:css && npm run build:ltrcss && npm run build:fonts && npm run build:cookieconsent && npm run build:generatesri && npm run clean",
|
||||||
"clean": "rm static/css/style.css.tmp"
|
"clean": "rm static/css/style.css.tmp static/css/style.rtl.css.tmp"
|
||||||
},
|
},
|
||||||
"keywords": "hugo",
|
"keywords": "hugo",
|
||||||
"author": "Alan Orth",
|
"author": "Alan Orth",
|
||||||
"license": "CC-BY-3.0",
|
"license": "CC-BY-3.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"bootstrap": "4.1.3",
|
"bootstrap": "~4.3.1",
|
||||||
"clean-css-cli": "^4.2.1",
|
"clean-css-cli": "^4.3.0",
|
||||||
"cookieconsent": "3.0.4",
|
"cookieconsent": "3.0.4",
|
||||||
"font-awesome": "^4.7.0",
|
"font-awesome": "^4.7.0",
|
||||||
"node-sass": "^4.9.3"
|
"node-sass": "^4.12.0",
|
||||||
|
"rtlcss": "^2.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
8
source/scss/bootstrap.scss
vendored
8
source/scss/bootstrap.scss
vendored
@ -1,7 +1,7 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v4.1.3 (https://getbootstrap.com/)
|
* Bootstrap v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors
|
* Copyright 2011-2019 The Bootstrap Authors
|
||||||
* Copyright 2011-2018 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -34,9 +34,11 @@
|
|||||||
//@import "node_modules/bootstrap/scss/media";
|
//@import "node_modules/bootstrap/scss/media";
|
||||||
//@import "node_modules/bootstrap/scss/list-group";
|
//@import "node_modules/bootstrap/scss/list-group";
|
||||||
//@import "node_modules/bootstrap/scss/close";
|
//@import "node_modules/bootstrap/scss/close";
|
||||||
|
//@import "node_modules/bootstrap/scss/toasts";
|
||||||
//@import "node_modules/bootstrap/scss/modal";
|
//@import "node_modules/bootstrap/scss/modal";
|
||||||
//@import "node_modules/bootstrap/scss/tooltip";
|
//@import "node_modules/bootstrap/scss/tooltip";
|
||||||
//@import "node_modules/bootstrap/scss/popover";
|
//@import "node_modules/bootstrap/scss/popover";
|
||||||
//@import "node_modules/bootstrap/scss/carousel";
|
//@import "node_modules/bootstrap/scss/carousel";
|
||||||
|
//@import "node_modules/bootstrap/scss/spinners";
|
||||||
@import "node_modules/bootstrap/scss/utilities";
|
@import "node_modules/bootstrap/scss/utilities";
|
||||||
@import "node_modules/bootstrap/scss/print";
|
@import "node_modules/bootstrap/scss/print";
|
||||||
|
File diff suppressed because one or more lines are too long
9
static/css/style.rtl.css
Normal file
9
static/css/style.rtl.css
Normal file
File diff suppressed because one or more lines are too long
@ -1,8 +1,8 @@
|
|||||||
name = "Hugo Bootstrap v4 Blog"
|
name = "Hugo Bootstrap v4 Blog"
|
||||||
license = "CC-BY-3.0"
|
license = "CC-BY-3.0"
|
||||||
licenselink = "https://github.com/alanorth/hugo-theme-bootstrap4/blob/master/LICENSE.txt"
|
licenselink = "https://github.com/alanorth/hugo-theme-bootstrap4-blog/blob/master/LICENSE.txt"
|
||||||
description = "A simple Hugo theme based on the Bootstrap v4 blog example."
|
description = "A simple Hugo theme based on the Bootstrap v4 blog example."
|
||||||
homepage = "https://github.com/alanorth/hugo-theme-bootstrap4"
|
homepage = "https://github.com/alanorth/hugo-theme-bootstrap4-blog"
|
||||||
tags = ["bootstrap", "blog", "font awesome"]
|
tags = ["bootstrap", "blog", "font awesome"]
|
||||||
features = ["responsive", "blog"]
|
features = ["responsive", "blog"]
|
||||||
min_version = 0.25
|
min_version = 0.25
|
||||||
|
Reference in New Issue
Block a user