hematite 0.1.4 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 05a0aa60a85dd027a9a75e119e54432b2ea0657775d872ae3b0474e9ebab9a5a
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 2d93683789b2ecff19bcc54608484e64889488a151f3f668596d3df79a5fcf90
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 51770f1f5812dae37c4ff1eaf87c36f799cbb5ed73dbb45bb16cb3517dc34bf3d305c6d2a54fe4baeb2f6e4c623e6e271b7db9b2cdb60b078c326a88b97ce11b
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: ab0ccb98a0ab44a07d6e1d86c32ef42ab68f3bf0ec1fb626ca53a913c4d4c00fd0602c9373dbfac64af0b7b98b684dd4be523dd6d91fc51825422b8571bd3aeb
         
     | 
| 
         @@ -8,4 +8,40 @@ 
     | 
|
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
            <!-- Page/site-specific imports and configuration -->
         
     | 
| 
       10 
10 
     | 
    
         
             
            {{ site.additional_import_html | default: "" }}
         
     | 
| 
      
 11 
     | 
    
         
            +
            {{ layout.additional_import_html | default: "" }}
         
     | 
| 
       11 
12 
     | 
    
         
             
            {{ page.additional_import_html | default: "" }}
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            {% comment %}
         
     | 
| 
      
 15 
     | 
    
         
            +
            Each [spec]=["key", { property: value, property2: value2, ... }]
         
     | 
| 
      
 16 
     | 
    
         
            +
            {% endcomment %}
         
     | 
| 
      
 17 
     | 
    
         
            +
            {% for spec in layout.additional_imports | concat: page.additional_imports %}
         
     | 
| 
      
 18 
     | 
    
         
            +
                {% assign target = spec[1] %}
         
     | 
| 
      
 19 
     | 
    
         
            +
                {% if target.type == 'js' or target.type == 'mjs' %}
         
     | 
| 
      
 20 
     | 
    
         
            +
                    {% assign tag="script" %}
         
     | 
| 
      
 21 
     | 
    
         
            +
                    {% assign url_spec = "src" %}
         
     | 
| 
      
 22 
     | 
    
         
            +
                    {% assign options = "" %}
         
     | 
| 
      
 23 
     | 
    
         
            +
                {% else %}
         
     | 
| 
      
 24 
     | 
    
         
            +
                    {% assign tag="link" %}
         
     | 
| 
      
 25 
     | 
    
         
            +
                    {% assign options = "rel='stylesheet'" %}
         
     | 
| 
      
 26 
     | 
    
         
            +
                    {% assign url_spec = "href" %}
         
     | 
| 
      
 27 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                {% if target.type == 'mjs' %}
         
     | 
| 
      
 30 
     | 
    
         
            +
                    {% assign options = "type = 'module'" %}
         
     | 
| 
      
 31 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                {% if target.absolute_url %}
         
     | 
| 
      
 34 
     | 
    
         
            +
                    {% assign url = target.absolute_url %}
         
     | 
| 
      
 35 
     | 
    
         
            +
                {% else %}
         
     | 
| 
      
 36 
     | 
    
         
            +
                    {% assign url = target.url | relative_url %}
         
     | 
| 
      
 37 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
                {% if target.context and target.context != include.context %}
         
     | 
| 
      
 40 
     | 
    
         
            +
                {% else %}
         
     | 
| 
      
 41 
     | 
    
         
            +
                <{{ tag }} {{ options }}
         
     | 
| 
      
 42 
     | 
    
         
            +
                    {{ target.inline_options | default: "" }}
         
     | 
| 
      
 43 
     | 
    
         
            +
                    {{url_spec}}={{ url | jsonify }}
         
     | 
| 
      
 44 
     | 
    
         
            +
                    onload={{ target.onload | default: "" | jsonify }}></{{tag}}>
         
     | 
| 
      
 45 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
      
 46 
     | 
    
         
            +
            {% endfor %}
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
         @@ -0,0 +1,47 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            layout: remark_slideshow
         
     | 
| 
      
 3 
     | 
    
         
            +
            additional_imports:
         
     | 
| 
      
 4 
     | 
    
         
            +
                katex:
         
     | 
| 
      
 5 
     | 
    
         
            +
                    type: js
         
     | 
| 
      
 6 
     | 
    
         
            +
                    url: /assets/plugin/katex/katex.min.js
         
     | 
| 
      
 7 
     | 
    
         
            +
                    context: remark_frame
         
     | 
| 
      
 8 
     | 
    
         
            +
                    comment: >-
         
     | 
| 
      
 9 
     | 
    
         
            +
                        Setting context to remark_frame means to only run this
         
     | 
| 
      
 10 
     | 
    
         
            +
                        in the remark-specific iframe.
         
     | 
| 
      
 11 
     | 
    
         
            +
                katex_auto_init_math:
         
     | 
| 
      
 12 
     | 
    
         
            +
                    type: js
         
     | 
| 
      
 13 
     | 
    
         
            +
                    url: /assets/plugin/katex/contrib/auto-render.min.js
         
     | 
| 
      
 14 
     | 
    
         
            +
                    onload: renderMathInElement(document.body)
         
     | 
| 
      
 15 
     | 
    
         
            +
                    inline_options: defer
         
     | 
| 
      
 16 
     | 
    
         
            +
                    comment: >-
         
     | 
| 
      
 17 
     | 
    
         
            +
                        We're passing 'defer' above because we want this script to load
         
     | 
| 
      
 18 
     | 
    
         
            +
                        _after_ the body.
         
     | 
| 
      
 19 
     | 
    
         
            +
                katex_css:
         
     | 
| 
      
 20 
     | 
    
         
            +
                    type: css
         
     | 
| 
      
 21 
     | 
    
         
            +
                    url: /assets/plugin/katex/katex.min.css
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
            remark_presentation_config:
         
     | 
| 
      
 24 
     | 
    
         
            +
                navigation:
         
     | 
| 
      
 25 
     | 
    
         
            +
                    scroll: false
         
     | 
| 
      
 26 
     | 
    
         
            +
                slideNumberFormat: "Slide %current% of %total%."
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            mermaid: true
         
     | 
| 
      
 29 
     | 
    
         
            +
            remark_presentation_config_html: >-
         
     | 
| 
      
 30 
     | 
    
         
            +
                Testing... This should be included at the top of the file.
         
     | 
| 
      
 31 
     | 
    
         
            +
            ---
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
            {% comment %}
         
     | 
| 
      
 34 
     | 
    
         
            +
            This template is an example of how to customize remark slideshows
         
     | 
| 
      
 35 
     | 
    
         
            +
            by creating a new template.
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            `additional_imports` can be used on any page. In this case, the imports
         
     | 
| 
      
 38 
     | 
    
         
            +
            are included both in the remark presentation `iframe` and in the main page.
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
            Of course, we could include `katex` or `mermaid` here by setting `katex: true`
         
     | 
| 
      
 41 
     | 
    
         
            +
            or `mermaid: true` in the header`, but `additional_imports` is another way to
         
     | 
| 
      
 42 
     | 
    
         
            +
            specify this.
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            Note that `remark_presentation_config` is passed directly to remark.
         
     | 
| 
      
 45 
     | 
    
         
            +
            {% endcomment %}
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
            {{ content }}
         
     | 
| 
         @@ -3,9 +3,13 @@ layout: default 
     | 
|
| 
       3 
3 
     | 
    
         
             
            ---
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            <!-- Defines a https://remarkjs.com/ slideshow -->
         
     | 
| 
       6 
     | 
    
         
            -
            <!-- 
     | 
| 
      
 6 
     | 
    
         
            +
            <!--
         
     | 
| 
      
 7 
     | 
    
         
            +
                Configure remark with
         
     | 
| 
       7 
8 
     | 
    
         
             
                page.remark_presentation_config, site.remark_presentation_config,
         
     | 
| 
       8 
9 
     | 
    
         
             
                page.remark_presentation_config_html
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                Note: Jekyll's default parser must not parse the input markdown file.
         
     | 
| 
      
 12 
     | 
    
         
            +
                Either use a non-md extension or wrap its content in a <div markdown=false>...</div>
         
     | 
| 
       9 
13 
     | 
    
         
             
            -->
         
     | 
| 
       10 
14 
     | 
    
         | 
| 
       11 
15 
     | 
    
         
             
            {% assign frame_resource_url = 'assets/html/remark_presentation_frame.html.resource' | relative_url %}
         
     | 
| 
         @@ -16,23 +20,54 @@ layout: default 
     | 
|
| 
       16 
20 
     | 
    
         
             
                        onload="window.presentationFrameLoaded = true;"></iframe>
         
     | 
| 
       17 
21 
     | 
    
         
             
            </main>
         
     | 
| 
       18 
22 
     | 
    
         | 
| 
      
 23 
     | 
    
         
            +
            <!--
         
     | 
| 
      
 24 
     | 
    
         
            +
                Liquid (sometimes?) does not handle unicode (e.g. π) characters properly when using
         
     | 
| 
      
 25 
     | 
    
         
            +
                url_encode (or at least not consistently with JS's unescape), so include
         
     | 
| 
      
 26 
     | 
    
         
            +
                content directly:
         
     | 
| 
      
 27 
     | 
    
         
            +
            -->
         
     | 
| 
      
 28 
     | 
    
         
            +
            <textarea id="source" style="display: none;">
         
     | 
| 
      
 29 
     | 
    
         
            +
            {{content}}
         
     | 
| 
      
 30 
     | 
    
         
            +
            </textarea>
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
       19 
32 
     | 
    
         
             
            <script defer type="module">
         
     | 
| 
      
 33 
     | 
    
         
            +
                // Matches <div>...</div> or <div markdown=0>...</div>
         
     | 
| 
      
 34 
     | 
    
         
            +
                // Jekyll can remove the 'markdown=0' while parsing.
         
     | 
| 
      
 35 
     | 
    
         
            +
                const WRAPPING_DIV_EXP = /\s*[<]div.*[>]((?:.|[\n\r])*)[<]\/div[>]\s*/;
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
       20 
37 
     | 
    
         
             
                import slideshow from "{{ 'assets/js/layout/remark_slideshow.mjs' | relative_url }}";
         
     | 
| 
       21 
38 
     | 
    
         | 
| 
       22 
39 
     | 
    
         
             
                let presentationFrame = document.querySelector("#presentation_frame");
         
     | 
| 
       23 
40 
     | 
    
         
             
                presentationFrame.src = {{ frame_resource_url | jsonify }};
         
     | 
| 
       24 
41 
     | 
    
         
             
                window.presentationFrameLoaded = false;
         
     | 
| 
       25 
42 
     | 
    
         | 
| 
       26 
     | 
    
         
            -
                let config =
         
     | 
| 
       27 
     | 
    
         
            -
                    {{ page.remark_presentation_config | default: site.remark_presentation_config | jsonify }};
         
     | 
| 
       28 
     | 
    
         
            -
                config ??= {};
         
     | 
| 
       29 
43 
     | 
    
         | 
| 
       30 
     | 
    
         
            -
                 
     | 
| 
      
 44 
     | 
    
         
            +
                let siteConfig = {{ site.remark_presentation_config | jsonify }} ?? {};
         
     | 
| 
      
 45 
     | 
    
         
            +
                let layoutConfig = {{ layout.remark_presentation_config | jsonify }} ?? {};
         
     | 
| 
      
 46 
     | 
    
         
            +
                let pageConfig = {{ page.remark_presentation_config | jsonify }} ?? {};
         
     | 
| 
      
 47 
     | 
    
         
            +
                let config = {};
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
                // Merge the remark configurations. siteConfig has highest precedence.
         
     | 
| 
      
 50 
     | 
    
         
            +
                for (let currentConfig of [siteConfig, layoutConfig, pageConfig]) {
         
     | 
| 
      
 51 
     | 
    
         
            +
                    for (let key in currentConfig) {
         
     | 
| 
      
 52 
     | 
    
         
            +
                        config[key] = currentConfig[key];
         
     | 
| 
      
 53 
     | 
    
         
            +
                    }
         
     | 
| 
      
 54 
     | 
    
         
            +
                }
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
                // Escape the content to prevent liquid from rendering it.
         
     | 
| 
      
 57 
     | 
    
         
            +
                config.source = document.querySelector("#source").value;
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                // Unwrap if surrounded by markdown-parser-disabling HTML
         
     | 
| 
      
 60 
     | 
    
         
            +
                let markdownDisableMatches = config.source.match(WRAPPING_DIV_EXP);
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
                // Replace with first capture (contents of the wrapping element).
         
     | 
| 
      
 63 
     | 
    
         
            +
                if (markdownDisableMatches && markdownDisableMatches.length > 0) {
         
     | 
| 
      
 64 
     | 
    
         
            +
                    config.source = markdownDisableMatches[1];
         
     | 
| 
      
 65 
     | 
    
         
            +
                }
         
     | 
| 
       31 
66 
     | 
    
         | 
| 
       32 
67 
     | 
    
         
             
                // Library imports intended for this page: Forward to the frame.
         
     | 
| 
       33 
68 
     | 
    
         
             
                let libraryImports = unescape(`
         
     | 
| 
       34 
69 
     | 
    
         
             
                    {% capture library_imports %}
         
     | 
| 
       35 
     | 
    
         
            -
                        {% include extern_library_imports.html %}
         
     | 
| 
      
 70 
     | 
    
         
            +
                        {% include extern_library_imports.html context='remark_frame' %}
         
     | 
| 
       36 
71 
     | 
    
         
             
                    {% endcapture %}
         
     | 
| 
       37 
72 
     | 
    
         
             
                    {{ library_imports | url_encode | replace: "+", " " }}
         
     | 
| 
       38 
73 
     | 
    
         
             
                `);
         
     | 
| 
         @@ -55,7 +90,14 @@ layout: default 
     | 
|
| 
       55 
90 
     | 
    
         | 
| 
       56 
91 
     | 
    
         
             
                    // Any additional configuration scripts/html specific to remark
         
     | 
| 
       57 
92 
     | 
    
         
             
                    presentationDoc.write(unescape(
         
     | 
| 
       58 
     | 
    
         
            -
                        {{ 
     | 
| 
      
 93 
     | 
    
         
            +
                        {{
         
     | 
| 
      
 94 
     | 
    
         
            +
                            page.remark_presentation_config_html | default: site.remark_presentation_config_html | default: "" | url_encode | replace: "+", " " | jsonify
         
     | 
| 
      
 95 
     | 
    
         
            +
                        }}
         
     | 
| 
      
 96 
     | 
    
         
            +
                    ));
         
     | 
| 
      
 97 
     | 
    
         
            +
             
     | 
| 
      
 98 
     | 
    
         
            +
                    // If another layout extends this layout,
         
     | 
| 
      
 99 
     | 
    
         
            +
                    presentationDoc.write(unescape(
         
     | 
| 
      
 100 
     | 
    
         
            +
                        {{ layout.remark_presentation_config_html | default: "" | url_encode | replace: "+", " " | jsonify }}
         
     | 
| 
       59 
101 
     | 
    
         
             
                    ));
         
     | 
| 
       60 
102 
     | 
    
         | 
| 
       61 
103 
     | 
    
         
             
                    presentationDoc.write(`
         
     | 
| 
         @@ -67,8 +109,8 @@ layout: default 
     | 
|
| 
       67 
109 
     | 
    
         
             
                        }
         
     | 
| 
       68 
110 
     | 
    
         
             
                        </${"script"}>
         
     | 
| 
       69 
111 
     | 
    
         
             
                    `);
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
                    (async () => {
         
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
      
 113 
     | 
    
         
            +
                    presentationWin.initPresentation = (async () => {
         
     | 
| 
       72 
114 
     | 
    
         
             
                        await slideshow.start(presentationFrame.contentWindow, config);
         
     | 
| 
       73 
115 
     | 
    
         | 
| 
       74 
116 
     | 
    
         
             
                        // Ensure that mermaid has already been run!
         
     | 
| 
         @@ -76,7 +118,14 @@ layout: default 
     | 
|
| 
       76 
118 
     | 
    
         
             
                            presentationWin.mermaid.init();
         
     | 
| 
       77 
119 
     | 
    
         
             
                            console.log("Ran mermaid!");
         
     | 
| 
       78 
120 
     | 
    
         
             
                        }
         
     | 
| 
       79 
     | 
    
         
            -
                    }) 
     | 
| 
      
 121 
     | 
    
         
            +
                    });
         
     | 
| 
      
 122 
     | 
    
         
            +
             
     | 
| 
      
 123 
     | 
    
         
            +
                    presentationDoc.write(`
         
     | 
| 
      
 124 
     | 
    
         
            +
                        <${"script"}>
         
     | 
| 
      
 125 
     | 
    
         
            +
                            window.initPresentation();
         
     | 
| 
      
 126 
     | 
    
         
            +
                        </${"script"}>
         
     | 
| 
      
 127 
     | 
    
         
            +
                    `);
         
     | 
| 
      
 128 
     | 
    
         
            +
                    presentationDoc.close();
         
     | 
| 
       80 
129 
     | 
    
         
             
                };
         
     | 
| 
       81 
130 
     | 
    
         | 
| 
       82 
131 
     | 
    
         
             
                if (window.presentationFrameLoaded) {
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: hematite
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.7
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Henry Heino
         
     | 
| 
         @@ -48,6 +48,7 @@ files: 
     | 
|
| 
       48 
48 
     | 
    
         
             
            - _includes/settings.html
         
     | 
| 
       49 
49 
     | 
    
         
             
            - _layouts/calendar.html
         
     | 
| 
       50 
50 
     | 
    
         
             
            - _layouts/default.html
         
     | 
| 
      
 51 
     | 
    
         
            +
            - _layouts/example_custom_remark_slideshow.html
         
     | 
| 
       51 
52 
     | 
    
         
             
            - _layouts/home.html
         
     | 
| 
       52 
53 
     | 
    
         
             
            - _layouts/page.html
         
     | 
| 
       53 
54 
     | 
    
         
             
            - _layouts/post.html
         
     |