emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
blob d15bf951755d7cd4080ea307cc0d7d1f6cb5ad47 2971 bytes (raw)
name: contrib/scripts/staticmathjax/README.org 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
Static MathJax v0.1 README
#+AUTHOR: Jan Böcker <jan.boecker@jboecker.de>

Static MathJax is a XULRunner application which loads a HTML input
file that uses MathJax into a browser, waits until MathJax is done
processing, and then writes the formatted result to an output HTML
file.

I have only tested exports from Emacs Org-mode as input files.  (As of
2010-08-14, MathJax is used by default with HTML exports in the
current Org development version.)

Optionally, references to the math fonts used will be converted to
"data:" URIs, thus embedding the font data into the HTML file itself.
(see [[http://en.wikipedia.org/wiki/Data_URI_scheme]])

The code is licensed under the GNU General Public License version
2, or, at your option, any later version.


* Usage
  To run Static MathJax, an existing XULRunner installation is
  required. From the directory to which you unpacked Static MathJax,
  run:
    
  xulrunner application.ini <--embed-fonts | --final-mathjax-url <URL>>
  <input file> <output file>

  If you prefer to call "staticmathjax" instead of "xulrunner
  application.ini", link xulrunner-stub into the directory:
  ln /usr/lib/xulrunner-1.9.2.8/xulrunner-stub ./staticmathjax
  
  - input file :: 
      name of the input file (the result of a HTML export
      from Org-mode). It is assumed that this file uses the
	  UTF-8 character encoding.

  - output file ::
      name of the output file.

  - --embed-fonts :: 
      if specified, the math fonts will be embedded into
	  the output file using data: URIs

  - --final-mathjax-url <URL> :: 
	  if --embed-fonts is not specified, this
      must be the URL to a MathJax installation folder (e.g. "MathJax"
      if MathJax is installed in a subdirectory, or
      "https://orgmode.org/mathjax" to use the version hosted on the Org
      website.
	  
	  All references to math fonts in the output file will point to
	  this directory.

* Caveats
  
  The input file must not use a MathJax installation on the
  web. Otherwise, due to a security feature of Firefox, MathJax will
  fallback to image fonts.  If you have unpacked MathJax to a
  subdirectory "MathJax", specify the following in your Org file:
  
  #+MathJax: path:"MathJax"

  The math is rendered in Firefox, so MathJax applies its
  Firefox-specific settings. When viewing the output files in other
  browsers, it will look slightly different than the result that
  running MathJax in that browser would produce.

  Internet Explorer does not use the correct font, because it only
  supports the EOT font format. For all other browsers (including
  Firefox), MathJax uses the OTF font format.
  
  Embedding fonts into the HTML file wastes some space due to the
  base64 encoding used in data: URIs.

  I have found no way to access stdout or set an exit code in an
  XULRunner app, so any code which calls Static MathJax has no idea if
  processing was successful and when an error occurs, graphical
  message boxes are displayed.

debug log:

solving d15bf9517 ...
found d15bf9517 in https://git.savannah.gnu.org/cgit/emacs/org-mode.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).