help-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to add "Up:" to Texinfo navigation bar?


From: Rudolf Adamkovič
Subject: Re: How to add "Up:" to Texinfo navigation bar?
Date: Thu, 05 Sep 2024 16:11:03 +0200

Patrice Dumas <pertusus@free.fr> writes:

> Here it is:
> https://git.savannah.gnu.org/cgit/texinfo.git/commit/?id=edc041b0aa896ecdf03b7951224e850041a3bed1

Thank you, Patrice!

I set `MATHJAX_CONFIGURATION' to

   loader: {
       load: [\'[tex]/physics\'],
       versionWarnings: false
   },
   options: {
     enableMenu: false,
     skipHtmlTags: {"[-]": ["pre"]},
     ignoreHtmlClass: "tex2jax_ignore",
     processHtmlClass: "tex2jax_process"
   },
   tex: {
     packages: {\'[+]\': [\'physics\']}
   },
   chtml: {
     fontURL: "../contrib/mathjax/fonts/"
   }

and it works like a charm!

As you can see, I am

  - loading and enabling the Physics package,
  - pointing MathJax to local fonts, and
  - disabling the contextual menu;

all of which previously required setting `HTML_MATH' to "mathjax", then
pointing `MATHJAX_SCRIPT` to a dummy file, and finally loading MathJax
manually in the `EXTRA_HEAD'.

Further, MathJax is now loaded and runs only if the page actually
contains math, which makes a difference.

Fantastic!

However, as I cleaned up my "HTML build pipeline" today, I noticed that
I still need to run one last fragile hack:

  find . \
    -type f \
    -name '*.html' \
    -exec sed \
      -i '' 's/id="MathJax-script" async/id="MathJax-script"/g' {} \;

This is because Texinfo loads MathJax asynchronously, and that is it.
If the user wants to load it synchronously, say to avoid the initial
flicker when running locally, the user is out of luck.

I wonder, could we also introduce MATHJAX_ASYNCHRONOUS, set to true by
default?  With that, the user will, at last, have full control over
MathJax in Texinfo HTML exports.

P.S. The `INSTALL.generic' file opens with

  Basic Installation
  ==================
  
     The following shell commands:
  
       test -f configure || ./bootstrap
       ./configure
       make
       make install

but there is no `boostrap' file.  I eventually figured out what to do,
but it added unnecessary friction.  As a person with "fresh eyes", I
figured I should let you know about the problem.

Thank you!

Rudy
-- 
"The introduction of suitable abstractions is our only mental aid to
organize and master complexity."
--- Edsger Wybe Dijkstra, 1930-2002

Rudolf Adamkovič <rudolf@adamkovic.org> [he/him]
http://adamkovic.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]