idyll icon indicating copy to clipboard operation
idyll copied to clipboard

Katex in static output

Open yourealwaysbe opened this issue 5 years ago • 3 comments

The Katex CSS does not properly load in the static output of Idyll Equations leading to duplicated equations. It is linked via a URL that does not work under the file:// protocol.

To Reproduce

  1. idyll create
  2. accept defaults to produce a basic article
  3. replace index.idyll with a file containing only "[Equation]x = x + 1[/Equation]"
  4. run "idyll build"
  5. open with "firefox build/index.html"
  6. the equation displays twice

The equation displays twice because the Katex stylesheet appears to be included with a URL that does not work under the file:// protocol. Could the CSS be included in the stylesheet produced by "idyll build" instead?

    <link
      rel="stylesheet"
      href="//cdnjs.cloudflare.com/ajax/libs/KaTeX/0.9.0/katex.min.css"
    />

Expected behavior Equation appears once / css is loadable.

Desktop (please complete the following information):

  • OS: Arch Linux
  • Browser: Firefox
  • Version: 77.0.1

yourealwaysbe avatar Jul 01 '20 15:07 yourealwaysbe

@yourealwaysbe does changing the URL to explicitly be https:// solve this problem? If so that's probably the simplest fix but we could alternatively conditionally include it in the CSS bundle that idyll produces.

If we need to update the CSS building logic that is done here https://github.com/idyll-lang/idyll/blob/master/packages/idyll-cli/src/pipeline/css.js#L16-L26

mathisonian avatar Jul 01 '20 20:07 mathisonian

Changing the URL fixes it.

Am i right in thinking that the static page output is otherwise self-contained, except the katex CSS link?

yourealwaysbe avatar Jul 03 '20 20:07 yourealwaysbe

Yes that's right @yourealwaysbe

mathisonian avatar Jul 06 '20 23:07 mathisonian