JavaScript support (The Org Manual)

Previous: CSS support, Up: HTML Export [Contents][Index]

#### 13.9.13 JavaScript supported display of web pages

Sebastian Rose has written a JavaScript program especially designed to enhance the web viewing experience of HTML files created with Org. This program enhances large files in two different ways of viewing. One is an Info-like mode where each section is displayed separately and navigation can be done with the `n` and `p` keys, and some other keys as well, press `?` for an overview of the available keys. The second one has a folding view, much like Org provides inside Emacs. The script is available at https://orgmode.org/org-info.js and the documentation at https://orgmode.org/worg/code/org-info-js/. The script is hosted on https://orgmode.org, but for reliability, prefer installing it on your own web server.

To use this program, just add this line to the Org file:

    #+INFOJS_OPT: view:info toc:nil

The HTML header now has the code needed to automatically invoke the script. For setting options, use the syntax from the above line for options described below:

‘`path:`’

  The path to the script. The default is to grab the script from https://orgmode.org/org-info.js, but you might want to have a local copy and use a path like ‘`../scripts/org-info.js`’.

‘`view:`’

  Initial view when the website is first shown. Possible values are:

  ‘`info`’ | Info-like interface with one section per page
  ‘`overview`’ | Folding interface, initially showing only top-level
  ‘`content`’ | Folding interface, starting with all headlines visible
  ‘`showall`’ | Folding interface, all headlines and text visible

‘`sdepth:`’

  Maximum headline level still considered as an independent section for info and folding modes. The default is taken from `org-export-headline-levels`, i.e., the ‘`H`’ switch in ‘`OPTIONS`’. If this is smaller than in `org-export-headline-levels`, each info/folding section can still contain child headlines.

‘`toc:`’

  Should the table of contents initially be visible? Even when ‘`nil`’, you can always get to the “toc” with `i`.

‘`tdepth:`’

  The depth of the table of contents. The defaults are taken from the variables `org-export-headline-levels` and `org-export-with-toc`.

‘`ftoc:`’

  Does the CSS of the page specify a fixed position for the “toc”? If yes, the toc is displayed as a section.

‘`ltoc:`’

  Should there be short contents (children) in each section? Make this ‘`above`’ if the section should be above initial text.

‘`mouse:`’

  Headings are highlighted when the mouse is over them. Should be ‘`underline`’ (default) or a background color like ‘`#cccccc`’.

‘`buttons:`’

  Should view-toggle buttons be everywhere? When ‘`nil`’ (the default), only one such button is present.

You can choose default values for these options by customizing the variable `org-infojs-options`. If you always want to apply the script to your pages, configure the variable `org-export-html-use-infojs`.

Previous: CSS support, Up: HTML Export [Contents][Index]