Config Options

Few config options provides by DeepThought theme.

yCatDev опубликованно
2 min, 370 слов

Категории: Documentation

Теги: theme zola

DeepThought theme provides some config option like option to add favicon to your site, add avatar for profile, setup social links for the profile etc

Site Configurations

Author Details

You can configure author details in [extra.author] of config.toml file.

[extra.author]
name = "<your_name>"
avatar = "<path_to_avatar>"

Favicon Setup

You can configure favicon in [extra.favicon] of config.toml file. You can use something like realfavicongenerator to generate your favicon.

[extra.favicon]
favicon_16x16 = "/icons/favicon-16x16.png"
favicon_32x32 = "/icons/favicon-32x32.png"
apple_touch_icon = "/icons/apple-touch-icon.png"
safari_pinned_tab = "/icons/safari-pinned-tab.svg"
webmanifest = "/icons/site.webmanifest"

You can configure social links in [extra.social] of config.toml file.

[extra.social]
email = "<email_id>"
facebook = "<facebook_username>"
github = "<github_username>"
gitlab = "<gitlab_username>"
keybase = "<keybase_username>"
linkedin = "<linkedin_username>"
stackoverflow = "<stackoverflow_userid>"
twitter = "<twitter_username>"
instagram = "<instagram_usernaem>"
behance = "<behance_username>"
google_scholar = "<googlescholar_userid>"
orcid = "<orcid_userid>"
mastodon = "<mastadon_username>"

Google Analytics Setup

DeepThought supports google analytics out of the box. You can configure google in [extra.analytics] of config.toml file.

[extra.analytics]
google = "<your_gtag>"

Disqus Comments Setup

DeepThought supports disqus commenting out of the box. You can configure disqus in [extra.commenting] of config.toml file.

[extra.commenting]
disqus = "<your_disqus>"

External Libraries

Mermaid, Chart and Galleria

To gain the features displayed in Extended Shortcodes, enable the libraries you want to use in the [extra] section of config.toml.

chart.enabled = true
mermaid.enabled = true
galleria.enabled = true

Mapbox

DeepThought supports Mapbox out of the box to add maps in your posts. You can enable it and set an access token in the [extra.mapbox] section of config.toml.

[extra.mapbox]
enabled = true
access_token = "<your_access_token>"

KaTeX

This theme contains math formula support using KaTeX. To enable KaTeX in your project, set the following in the [extra] section of config.toml:

[extra]
katex.enabled = true
katex.auto_render = true    # automatic rendering without shortcodes

Section Configurations

Apart from standard config you can also add a description in your _index.md file for your sections that appears in listing.

description = "Blog posts accumulated over the time."

Page Configurations

Enable Table Of Content

In order to enable toc for your post change as below code snippet in your page.

[extra]
toc = true

Enable Comments

In order to enable comments for your post change as below code snippet in your page.

[extra]
comments = true
const menuBarHeight = document.querySelector("nav.navbar").clientHeight; const tocItems = document.querySelectorAll(".toc"); const navSections = new Array(tocItems.length); tocItems.forEach((el, i) => { let id = el.getAttribute("id").substring(5); navSections[i] = document.getElementById(id); }) function isVisible(tocIndex) { const current = navSections[tocIndex]; const next = tocIndex < tocItems.length - 1 ? navSections[tocIndex + 1] : document.querySelectorAll("section.section").item(1); const c = current.getBoundingClientRect(); const n = next.getBoundingClientRect(); const h = (window.innerHeight || document.documentElement.clientHeight); return (c.top <= h) && (n.top - menuBarHeight >= 0); } function activateIfVisible() { for (b = true, i = 0; i < tocItems.length; i++) { if (b && isVisible(i)) { tocItems[i].classList.add('is-active'); b = false; } else tocItems[i].classList.remove('is-active'); } } var isTicking = null; window.addEventListener('scroll', () => { if (!isTicking) { window.requestAnimationFrame(() => { activateIfVisible(); isTicking = false; }); isTicking = true; } }, false);