Skip to main content

KSS jsMath plugin

Project description

KSS plugin package “kss.plugin.jsmath”

Installation and Setup

Read INSTALL.txt

Documentation

kss.plugin.jsmath enables the use of the jsMath library with KSS.

jsMath has its own markers for marking the beginning and end of the formulas in your text content. In addition, this component provides a KSS action, that needs to be executed on the nodes, within which you want the conversion to be enabled. This action will activate the conversion on the selected areas only.

For example the following rule activates conversion inside all nodes that are marked with the “mathcontent” CSS class:

.mathcontent:load {
    action-client: jsmath-activate;
}

You can use this, for example, to enable seamless conversion of the view of any of your widgets. In Zope, you can activate this for certain fields of certain or all content types, with a properly choosen selector.

Since the conversion only affects the view results, the mechanism works all the same, independently if the field is edited as a text area input, or with an editor (like kupu). In the editor, you are able to edit the LaTeX markup directly.

Markup

jsMath offers more variants for marking your content, these are controllable by parameters on the action. According to defaults, putting the formula between the markers \( and \) works out of the box:

\( \textstyle \sqrt{x+2}\quad \underline 4\quad \overline{x+y}\quad x^{\underline n}\quad x^{\overline{m+n}} \quad \sqrt{x^2+\sqrt{\alpha}} \)

The markers only become active in the areas that you select with KSS.

Dynamic loading

jsMath has a mechanism for loading its large javascript dynamically, on demand. The package uses this mechanism combined with custom code that helps dynamic loading integrate with KSS.

The following javascript files:

/++resource++jsmath/jsMath.js
/++resource++jsmath/plugins/tex2math.js

will be loaded dynamically, if you selected any conversion with KSS in your page. This will cause a little delay before the first conversion takes place but makes sure that the large javascript is only loaded when needed. The works seamlessly in practice, because the loading and the conversion takes place asynchronously and it does not block access to the page from the browser.

However, it is also possible to include these resources statically in the page header, as well. In this case the resources will be used at once and will not be loaded dynamically. You may choose this method, if you find it increases overall performance on your site.

Browser compatibility

jsMath is famous for working on all browsers including all the ones that are supported by KSS. However if you find that the plugin fails in your browser, please report the bug so that we can attempt to fix it.

Caveats

Since the conversion happens on client side, you will not be able to use the same mechanism to convert your pages to PDF, on the server side.

Download

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kss.plugin.jsmath-1.0.2.tar.gz (3.9 MB view details)

Uploaded Source

Built Distribution

kss.plugin.jsmath-1.0.2-py2.4.egg (9.2 MB view details)

Uploaded Source

File details

Details for the file kss.plugin.jsmath-1.0.2.tar.gz.

File metadata

File hashes

Hashes for kss.plugin.jsmath-1.0.2.tar.gz
Algorithm Hash digest
SHA256 bb99ac6526d0631a67eb0d6a6693c7be42b08a999a23cd68fa973f2f3e587242
MD5 0e828aed04f1fce019ad507aa9f6032e
BLAKE2b-256 c450899693e665465867302efff13839c1563d602154ed99cce7da6e2c60258f

See more details on using hashes here.

File details

Details for the file kss.plugin.jsmath-1.0.2-py2.4.egg.

File metadata

File hashes

Hashes for kss.plugin.jsmath-1.0.2-py2.4.egg
Algorithm Hash digest
SHA256 1ce17785aa399654e78a04911aeeb8586cdfd3c9b7b11df4b3d5757c11f07cb8
MD5 1d221a1043511968d32ec156022519d1
BLAKE2b-256 2a800d6b1dab40d171e2459f3fbba76683c475367eff9440e53e99193a9ae35f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page