From a1a0a4ad553f59906930d44bf56b089421d2c7a5 Mon Sep 17 00:00:00 2001 From: ronv Date: Thu, 30 Jan 2020 20:19:33 +0200 Subject: initial commit --- _includes/anchor_headings.html | 105 +++++++++++++++++++++++++++++++++++++++++ _includes/head.html | 37 +++++++++++++++ _includes/inline.scss | 1 + _includes/navigation.html | 10 ++++ 4 files changed, 153 insertions(+) create mode 100644 _includes/anchor_headings.html create mode 100755 _includes/head.html create mode 100644 _includes/inline.scss create mode 100755 _includes/navigation.html (limited to '_includes') diff --git a/_includes/anchor_headings.html b/_includes/anchor_headings.html new file mode 100644 index 0000000..21e2d04 --- /dev/null +++ b/_includes/anchor_headings.html @@ -0,0 +1,105 @@ +{% capture headingsWorkspace %} + {% comment %} + Version 1.0.4 + https://github.com/allejo/jekyll-anchor-headings + + "Be the pull request you wish to see in the world." ~Ben Balter + + Usage: + {% include anchor_headings.html html=content %} + + Parameters: + * html (string) - the HTML of compiled markdown generated by kramdown in Jekyll + + Optional Parameters: + * beforeHeading (bool) : false - Set to true if the anchor should be placed _before_ the heading's content + * anchorAttrs (string) : '' - Any custom HTML attributes that will be added to the `` tag; you may NOT use `href`, `class` or `title` + * anchorBody (string) : '' - The content that will be placed inside the anchor; the `%heading%` placeholder is available + * anchorClass (string) : '' - The class(es) that will be used for each anchor. Separate multiple classes with a space + * anchorTitle (string) : '' - The `title` attribute that will be used for anchors + * h_min (int) : 1 - The minimum header level to build an anchor for; any header lower than this value will be ignored + * h_max (int) : 6 - The maximum header level to build an anchor for; any header greater than this value will be ignored + * bodyPrefix (string) : '' - Anything that should be inserted inside of the heading tag _before_ its anchor and content + * bodySuffix (string) : '' - Anything that should be inserted inside of the heading tag _after_ its anchor and content + + Output: + The original HTML with the addition of anchors inside of all of the h1-h6 headings. + {% endcomment %} + + {% assign minHeader = include.h_min | default: 1 %} + {% assign maxHeader = include.h_max | default: 6 %} + {% assign beforeHeading = include.beforeHeading %} + {% assign nodes = include.html | split: ' + {% if headerLevel == 0 %} + {% if nextChar != '<' and nextChar != '' %} + {% capture node %}' | first }}>{% endcapture %} + {% assign header = _workspace[0] | replace: _hAttrToStrip, '' %} + + + {% capture anchor %}{% endcapture %} + + {% if html_id and headerLevel >= minHeader and headerLevel <= maxHeader %} + {% capture anchor %}href="#{{ html_id }}"{% endcapture %} + + {% if include.anchorClass %} + {% capture anchor %}{{ anchor }} class="{{ include.anchorClass }}"{% endcapture %} + {% endif %} + + {% if include.anchorTitle %} + {% capture anchor %}{{ anchor }} title="{{ include.anchorTitle | replace: '%heading%', header }}"{% endcapture %} + {% endif %} + + {% if include.anchorAttrs %} + {% capture anchor %}{{ anchor }} {{ include.anchorAttrs }}{% endcapture %} + {% endif %} + + {% capture anchor %}{{ include.anchorBody | replace: '%heading%', header | default: '' }}{% endcapture %} + + + {% if beforeHeading %} + {% capture anchor %}{{ anchor }} {% endcapture %} + {% else %} + {% capture anchor %} {{ anchor }}{% endcapture %} + {% endif %} + {% endif %} + + {% capture new_heading %} + + + + + {% seo title=false %} + + + {% if page.tag or page.title %} + {% if page.tag %} + {{ page.tag | escape }} + {% else %} + {{ page.title | escape }} + {% endif %} + - + {% endif %} + {% if paginator and paginator.page and paginator.total_pages > 1 and paginator.page > 1 %} + Page {{ paginator.page }} of {{ paginator.total_pages }} - + {% endif %} + {{ site.title | escape }} + {% unless page.tag or page.title %} + - {{ site.description | escape }} + {% endunless %} + + + + + + + + + + diff --git a/_includes/inline.scss b/_includes/inline.scss new file mode 100644 index 0000000..a93cc06 --- /dev/null +++ b/_includes/inline.scss @@ -0,0 +1 @@ +@import "main"; \ No newline at end of file diff --git a/_includes/navigation.html b/_includes/navigation.html new file mode 100755 index 0000000..ebbfbd5 --- /dev/null +++ b/_includes/navigation.html @@ -0,0 +1,10 @@ +
+ + +
\ No newline at end of file -- cgit v1.2.3