diff options
author | Johannes Ranke <jranke@uni-bremen.de> | 2020-11-19 15:41:24 +0100 |
---|---|---|
committer | Johannes Ranke <jranke@uni-bremen.de> | 2020-11-19 15:41:24 +0100 |
commit | db9ae6a0c9cecb92048fde6f06af1da183c09b5f (patch) | |
tree | f0ea97545549c71bd7aa3d13afed422fd402f0e6 /docs/dev/articles/mkin_files/anchor-sections-1.0 | |
parent | 6441a9f35d66f2c4d38c0036f99cd8f509d76f3b (diff) |
Depend on parallel, doc improvements
By depending on parallel instead of importing it, functions to set up
and stop a cluster are always available when mkin is loaded.
The use of multicore processing in mmkin on Windows is now documented in
the help file, which brings mkin closer to a version 1.0 #9.
Diffstat (limited to 'docs/dev/articles/mkin_files/anchor-sections-1.0')
-rw-r--r-- | docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.css | 4 | ||||
-rw-r--r-- | docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.js | 33 |
2 files changed, 37 insertions, 0 deletions
diff --git a/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.css b/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.css new file mode 100644 index 00000000..07aee5fc --- /dev/null +++ b/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.css @@ -0,0 +1,4 @@ +/* Styles for section anchors */ +a.anchor-section {margin-left: 10px; visibility: hidden; color: inherit;} +a.anchor-section::before {content: '#';} +.hasAnchor:hover a.anchor-section {visibility: visible;} diff --git a/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.js b/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.js new file mode 100644 index 00000000..570f99a0 --- /dev/null +++ b/docs/dev/articles/mkin_files/anchor-sections-1.0/anchor-sections.js @@ -0,0 +1,33 @@ +// Anchor sections v1.0 written by Atsushi Yasumoto on Oct 3rd, 2020. +document.addEventListener('DOMContentLoaded', function() { + // Do nothing if AnchorJS is used + if (typeof window.anchors === 'object' && anchors.hasOwnProperty('hasAnchorJSLink')) { + return; + } + + const h = document.querySelectorAll('h1, h2, h3, h4, h5, h6'); + + // Do nothing if sections are already anchored + if (Array.from(h).some(x => x.classList.contains('hasAnchor'))) { + return null; + } + + // Use section id when pandoc runs with --section-divs + const section_id = function(x) { + return ((x.classList.contains('section') || (x.tagName === 'SECTION')) + ? x.id : ''); + }; + + // Add anchors + h.forEach(function(x) { + const id = x.id || section_id(x.parentElement); + if (id === '') { + return null; + } + let anchor = document.createElement('a'); + anchor.href = '#' + id; + anchor.classList = ['anchor-section']; + x.classList.add('hasAnchor'); + x.appendChild(anchor); + }); +}); |