Icarus User Guide - Other Plugins
This article covers other plugins supported by Icarus 6.
Gallery
Installation Guide
The gallery plugin of Icarus contains both lightGallery and
Justified Gallery extensions.
It is enabled by default: plugins > gallery is true in the configuration file generated by Icarus.
If your configuration file does not have this setting, add it to enable the plugin.
To disable it, set it to false.
1 | plugins: |
Additionally, in order to use Justified Gallery, wrap your images with the <div class="justified-gallery">
and </div> HTML tag pair.
Also, if you are using Markdown syntax to include images, add additional empty lines between the HTML tags and
Markdown tags.
For example, the Markdown code of the gallery preview below is
1 | <div class="justified-gallery"> |
Meanwhile, we can use pure HTML to create Justified Galleries as well. In this case, we will not need the empty lines between HTML tags.
1 | <div class="justified-gallery"> |
Note that the Markdown renderer adds your site’s root to Markdown image paths automatically, but it leaves
HTML <img> tags as they are.
If your site is in a subdirectory (root in _config.yml is not /), write the subdirectory in the src of
HTML images yourself, but not in the paths of Markdown images.
For example, this site uses root: /hexo-theme-icarus/, so the HTML version would use
/hexo-theme-icarus/gallery/animals/elephant.jpeg while the Markdown version uses /gallery/animals/elephant.jpeg.
Preview
Here is an image grid created by Justified Gallery. You can also view the full image using lightGallery by clicking on any image.

KaTeX
Installation Guide
You can use the KaTeX plugin to render \(\TeX\) expressions.
To enable KaTeX, please set plugins > katex to true in your theme configurations.
1 | plugins: |
Please also use \\( and \\) to wrap your inline expressions and $$ or \\[ and \\] pair to wrap
block expressions.
For example,
1 | This is an inline expression: \\(ax^2+bx+c=0\\). |
Sometimes your \(\TeX\) syntax will be mistaken as Markdown syntax, which will result in rendering error.
For instance, the following equation will not work since it contains more than one _ (underscores),
which are mistaken for the italic text when processed by the Markdown renderer:
1 | $$ |
In this case, you can either escape every character that may cause confusion:
1 | $$ |
or simply wrap the whole equation with an additional pair of HTML tags:
1 | <div> |
MathJax
Installation Guide
You can use MathJax to render \(\TeX\) or MathML expressions.
To enable MathJax, please set plugins > mathjax to true in your theme configurations.
1 | plugins: |
When using the \(\TeX\) syntax, please use $ or \\( and \\) to wrap your inline expressions
and $$ or \\[ and \\] pair to wrap block expressions.
You can also use \(\LaTeX\) environments directly.
For example,
1 | This is an inline expression: \\(ax^2+bx+c=0\\). This is another inline expression: $ax^2+bx+c>0$. |
Or you can use MathML syntax. For example,
1 | When |
Sometimes your latex syntax will be mistaken as Markdown syntax, which will result in rendering error. Please refer to the KaTeX section for solutions to this.
Preview(\(\TeX\) & \(\LaTeX\))
This is an inline expression: \(ax^2+bx+c=0\). This is another inline expression: $ax^2+bx+c>0$.
This is a block expression: $$\displaystyle \frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }$$
This is another block expression: \[f(x) = \int_{-\infty}^\infty\hat f(\xi)e^{2 \pi i \xi x}d\xi\]
Or use \(\LaTeX\) environment: \begin{equation} A = \begin{bmatrix} a & b \\ c & c \end{bmatrix} \end{equation}
Preview(MathML)
When , there are two solutions to and they are
Cookie Consent
Installation Guide
You can show a cookie consent dialog to your visitor by enabling the Cookie Consent plugin. Please refer to Download Cookie Consent and Documentation for the Cookie Consent plugin for details on each configuration setting. You can also disable the cookie consent dialog by commenting out the configurations.
1 | plugins: |
Outdated Browser
Installation Guide
You can use the Outdated Browser plugin to detect outdated browsers used by
your site’s visitors and remind them to upgrade their browsers.
To enable it, please set plugins > outdated_browser to true in your theme configurations.
Click here to see a live preview of this plugin.
1 | plugins: |
Page Loading Animations
Installation Guide
Page Loading Animations are enabled by Icarus by default.
To disable it, please set plugins > animejs to false in your theme configurations.
1 | plugins: |
Also, to disable the page loading progressbar, please set plugins > progressbar to false in
your theme configurations.
1 | plugins: |
Back to Top Button
Installation Guide
Icarus shows a button that takes your visitors back to the top of the page after they scroll down.
It is enabled by default: plugins > back_to_top is true in the configuration file generated by Icarus.
To hide the button, set it to false in your theme configurations.
1 | plugins: |
PJAX
Installation Guide
With PJAX, clicking a link to another page of your site does not reload the
whole page.
Instead, Icarus fetches the new page in the background and only replaces the parts that change, such as the
navigation bar, the main content, and the sidebars, which makes moving between pages faster and smoother.
PJAX is enabled by default: plugins > pjax is true in the configuration file generated by Icarus.
If your configuration file does not have this setting, add it to enable PJAX.
To disable PJAX, set it to false in your theme configurations.
1 | plugins: |
Some notes on PJAX:
- The comment section is replaced together with the main content, and the scripts of the comment plugin run again, so the comments of each new page are loaded.
- MathJax typesets the expressions of each new page again.
- The scripts of web analytics plugins are not run again after a switch, so that a visit is not counted twice. Matomo, Umami, BuSuanZi, and the Waline page view counter count the pages that visitors switch to by themselves. Other analytics services may only count the first page that a visitor opens, unless they track page changes on their own.
Icarus User Guide - Other Plugins
https://ppoffice.github.io/hexo-theme-icarus/Plugins/Other/icarus-user-guide-other-plugins/