Commit Graph

56 Commits

Author SHA1 Message Date
Erik Demaine
f63733a35e Document mhchem \cf not supported (use \ce instead) (#2008)
* Document mhchem \cf not supported (use \ce instead)

* Mention \cf -> \ce in support table
2019-07-05 02:02:09 -04:00
Kevin Barabash
f659544d62 Release v0.10.2 (take 4) (#1961)
* Release v0.10.2

Bump master to v0.10.3-pre

* update CHANGELOG

* add integrity hash to mhchem script in README

* tweaked CHANGELOG
2019-05-12 22:08:30 -04:00
ylemkimon
e016f4b940 Release v0.10.1 (#1856)
* Release v0.10.1

Bump v0.10.1 to v0.10.2-pre

* Update CHANGELOG.md
2019-02-22 13:34:15 +09:00
varkor
062a28f35a Fix invalid UTF-8 in mhchem/README.md (#1833)
* Fix invalid UTF-8 in mhchem/README.md

* Fix apostrophes in README.md
2019-01-13 11:21:50 -05:00
AlbertHilb
f10de9617e Add optional pre-process callback to the auto-renderer. (#1784)
* Add optional pre-process callback to the auto-renderer.

* Rewrite `preProcess` callback signature.

* Add test.

* Make test future-proof.

* Add root folder to the node module paths.
2018-12-23 18:29:59 -05:00
Ron Kok
64745b5c8a Add mhchem extension (#1436)
* A proposal for support of mhchem

* Create extension

* Add index

* Remove arrow function

* Fix lint errors in macros.js

* Remove mhchem from build

* Move code from macros.js to mhchem.js

* Add minified mhchem

* Remove arrow head mods. Disable eslint.

* Fix space handling

* Update code to mhchem v3.3.0

* Tweak arrows to reduce diff

* Raise \tripledash

* Edit docs and webpack

* Update package.json

* Remove wrap. Remove manual.

* Correct second brush stroke in \xrightleftarrows

* Added patch file

* Add import line

* Add mhchem to eslint ignore
2018-11-24 18:52:25 -05:00
ylemkimon
f628ca142b Generate ECMAScript module for contrib (#1624)
* Create separate entry point of copy-tex for webpack

* Update katex.webpack.js comment

* Generate ECMAScript for contrib

* Update dependencies

* Comment out documentations
2018-10-31 11:37:54 +09:00
ylemkimon
49f84f76e7 v0.10.0 release (#1751)
* Remove RC-versioned docs

* Release v0.10.0

Bump master to v0.10.1-pre

* Fix multiple occuring hash replacement

* Update SRI hashes

* Update CHANGELOG.md

* Fix tags not shown

* Update docusaurus

* Wrap escaping backslashes with backticks

* Update SRI hashes

* Update CHANGELOG.md
2018-10-29 13:14:24 +09:00
ylemkimon
89daa02fd8 Move to katex.org (#1680)
* Change links to katex.org

* Change http to https

* Remove baseUrl hacks

* Fix OpenGraph image link

* Fix KaTeX path update script
2018-08-31 04:08:02 -04:00
ylemkimon
7ca6f51b9a Release v0.10.0-rc.1 (#1654)
Bump master to v0.10.0-pre
2018-08-23 02:42:24 +09:00
ylemkimon
e790a416d5 Update SRI hashes for v0.10.0-rc (#1638) 2018-08-19 11:50:31 -04:00
ylemkimon
293af2936d Release v0.10.0-rc (#1634)
* Release v0.10.0-rc

Bump master to v0.10.0-pre

* Update CHANGELOG.md

* Update SRI hashes

* Update SRI hashes
2018-08-20 00:25:11 +09:00
ylemkimon
52f3c05ccc Fix copying options in auto render (#1623) 2018-08-18 07:55:15 -04:00
ylemkimon
9a9842886e Remove Object.assign() in auto-render which requires expensive polyfill, update LICENSE (#1591)
* Remove Object.assign() in auto-render which requires expensive polyfill

* Remove underscore.js from LICENSE

* Rename to LICENSE and update year

* Lint `contrib` codes
2018-08-13 01:29:22 +09:00
ylemkimon
e4db097f0c Enable stylelint-config-standard, lint CSS files (#1575) 2018-08-09 13:10:30 -04:00
ylemkimon
ed7ad8d116 Add Extensions to Libraries documentation, dedupe auto-render documentation (#1566)
* Add extensions to libs.md

* Remove documentations from auto-render/README.md

* Add colons
2018-08-08 11:28:45 -04:00
Oliver Tacke
02639b424e Add ignore option for class names (#1555)
* Add ignore option for class names

This change adds another option for ignoring nodes for rendering similar to `ignoreTags`.
The new option `ignoreClasses` can hold an array of strings representing class names that should be ignored if they are in a node's class list. This can be desirable in dynamic environments.

* Adhere to CI rules for styling

* Add documentation for new option

* Exchange classList property with IE9 compatible code

* Harmonize variable names

* Add default for ignoredClasses
2018-08-08 09:00:22 +09:00
ylemkimon
a76c4b9a2f Switch npm to Yarn (#1522)
* Add testUrl to jest config

* Switch npm to Yarn
2018-07-29 11:36:27 -07:00
Erik Demaine
a7682e6220 Update READMEs to v0.10.0-beta (#1423)
8624d4ccff
2018-06-14 22:43:05 -04:00
Erik Demaine
ffe90a3ca1 Support \gdef in multiple equations in auto-render (#1425)
Within a single call to `renderMathInElement`, default `macros` to a shared
empty object (same as if you specified an object) so that global macros
defined via `\gdef` can be defined and shared.
2018-06-14 06:44:43 -04:00
Ron Kok
978148ec6e Fix auto-render \\[…] bug (#1375)
Fixes issue #1075.

Currently, a row separator such as `\[0.3em]` will cause the auto-render extension to fail if the row separator is placed between `\(…\)` math delimiters.

This PR re-orders the array of left delimiters that get searched for, putting `\[` last in the list.  This, `\\[0.3em]` is no longer mistaken for a math delimiter.
2018-05-29 15:31:23 +09:00
Erik Demaine
d9fe716d0e Update contrib READMEs to jsdelivr v0.10.0-alpha (#1362)
This is particularly important as update-sri.js only updates jsdelivr links.

I was able to get update-sri.js to do the heavy lifting (computing checksums)
after updating the links in general, and downloading v0.10.0-alpha from CDN.
2018-05-26 21:54:43 +02:00
Kevin Barabash
298b482c18 Bump master to v0.10.0-pre 2018-02-18 16:55:16 -05:00
Kevin Barabash
cf6743b2a8 Bump master to v0.10.0-pre 2018-01-28 23:41:01 -05:00
ylemkimon
5f32b71c85 Use webpack to build files and webpack-dev-server for testing (#1068)
* Create a separate entry point for webpack

Created a webpack entry point for KaTeX, which imports katex.less. As
flow[1] and jest[2] doesn't support CSS modules natively, a separate
entry point is used and it is not flowtyped.

[1] https://gist.github.com/lambdahands/d19e0da96285b749f0ef
[2] https://facebook.github.io/jest/docs/en/webpack.html

* Use webpack to build files

* Made webpack.config.js export valid webpack configuration
* Use:
browserify -> webpack
babelify -> babel-loader
UglifyJS CLI -> UglifyJsPlugin
Less CLI -> less-loader
cleancss -> cssnano in css-loader
build/fonts -> file-loader
* Inline CSS(Less) using style-loader and export them using
ExtractTextPlugin
* Add `watch` npm script calling `webpack --watch`

* Improve local testing(webpack-dev-server)

* Made webpackDevServer export a valid webpack configuration
* Compile Less and inline CSS using less-loader and style-loader
* Instead of copying files serve files from /static and use file-loader
* Remove old server.js and its dependencies

* Use webpack-dev-server in Screenshotter

* Include contrib in webpack-dev-server

+ Moved common configurations to webpack.common.js

* Rename webpackDevServer.js to webpack.dev...

to be consistent, avoid confusion with webpack-dev-server and follow
webpack configuration naming convention.

* Remove unnecessary conditional output.path

* Use map instead of reduce

+ Add comments regarding function arguments

* Remove unnecessary mkdir and clean build/* before build

* Use katex as external dependency instead of global variable in contrib

Fixes #692.

* Unblock codes as they are built as a module

* Update package-lock.json

* Add comments regarding devServer option

* Lint renamed webpack.dev.js

a0d8b33

* Export ES6 module and expose its default export

* Revert "Browserify hotfix (#1057)"

This reverts commit f6b509123b.

* Enables colors on the console when running the dev server in Screenshotter

* Add context to webpack configuration

Allows webpack to be run from other directories

* Move `rm -rf build/*` to npm scripts

* Check dependencies before build

* Move UglifyJsPlugin into config creation

* Let webpack handle ES6 modules

Do not transform modules to commonjs in Babel. However Jest doesn't not
support ES6 modules, so transfrom modules to commonjs when NODE_ENV is
`test`.

* Add documentation on testing in IE 9 and 10 using webpack-dev-server

Changed version range to include IE-compatible version
2018-01-21 19:48:25 -05:00
ylemkimon
4a11c3166d Move auto-render-spec.js to ./test (#1071)
Fixed jest not running auto-render-spec.js
+ Changed `require` to `import`
2018-01-17 08:44:48 -08:00
Kevin Barabash
0599e09a2d Bump master to v0.10.0-pre 2018-01-14 17:39:59 -05:00
Erik Demaine
d6609f7319 Make a more working example in README. Fix #1049 (#1050)
This is an attempt to flesh out the required <head> tags needed to make a full
working example of autorender, including KaTeX itself, to help people get
started with KaTeX.
2017-12-31 17:01:30 -07:00
Kevin Barabash
2ca6c3c73b Bump master to v0.10.0-pre 2017-11-26 18:34:59 -05:00
Kevin Barabash
b4c5dfaf20 Bump master to v0.10.0-pre 2017-10-15 16:49:24 -04:00
Ryan Randall
141afa091a Fixing CJS modules and Globals (#920)
* Working CJS modules.

* Changing cjs imports to es6.
2017-10-08 10:56:07 -06:00
Kevin Barabash
2e27d4248b Bump master to v0.10.0-pre 2017-10-05 11:40:49 -06:00
Ryan Randall
fbffdc5fc7 Webpack dev server (#902)
* Initial webpack config. Moving to ES6 modules. Some module cleanup.

* WIP

* WIP

* Removing commented out code.

* Removing old deps.

* Removing the build script (used for testing).

* Working tests.

* Switching to node api over cli.

* Updating per comments. Still need to fix server.js to properly run the selenium tests.

* Cleaning up the config.

* More cleanup.

* Bringing back server.js for selenium tests.

* Bringing back old dependencies.

* Adding back eslint rules for webpack config. Final cleanup for webpack config.

* Pointing to correct pre-existing module versions. Adding some extra logic to server.js to ensure it gets transpiled properly.

* Getting make build to work again. Updating package.json with some shortcut scripts.

* Resolving conflict.

* Reverting back to commonjs modules.

* Removing extra spaces in babelrc
2017-09-26 12:16:35 -06:00
Erik Demaine
e71c7d4b81 copy-tex contrib module (#813)
* copy-tex contrib module

* Factor out replacement code

* Fix lint

* Support for more browsers, in particular Firefox

* Use for loop instead of Array.forEach
* Use replaceChild if replaceWith is unavailable
* Browserify to remove let etc.

* Fix HTML handling, in particular for Edge

* Convert DocumentFragment to HTML directly (via children' outerHTML)
* Set HTML content *before* text content; Edge takes the last only

* Handle .katex-html and .katex-mathml separately

* Implement option 2: CSS user-select: all

Also fix auto-render.js build location

* Revise documentation according to @kevinbarabash's comments

* Split copy-tex.js into it + katex2tex.js

This supports re-use of code in a custom copy handler.

* Document custom copy handler

* Add missing file
2017-09-04 21:17:46 -04:00
William J. Bowman
2fbb2b0128 Added MathJax compatibility script (#680)
* Added MathJax compatibility script

* Removed make integrity, which release.sh handles

* Renamed scripts

* Use katex.render (and options) instead of manually string munging

* Rewrote code based on feedback

* Renamed file correctly

* Extended README with an example of usage

* Removed CDN paths in place of an abstract path

* Revert "Removed CDN paths in place of an abstract path"

This reverts commit 857f8de2e449d9ac5a3d8eab5104dac561c533c4.

* Replace versions with `...`, with note to avoid confusing users

* Revert some `...` replacements to files that do exist.
2017-08-27 18:17:42 -04:00
Kevin Barabash
96c1fe7ad8 Bump master to v0.8.4-pre 2017-08-27 18:01:07 -04:00
Kevin Barabash
2cd961dbe0 Bump master to v0.8.3-pre 2017-08-17 01:13:27 -04:00
Kevin Barabash
ef66f30912 Bump master to v0.8.2-pre 2017-08-11 22:14:52 -04:00
Kevin Barabash
107d5284b5 Bump master to v0.9.0-pre 2017-08-11 20:00:34 -04:00
Jörn Lenoch
2eb32a8775 Add configurable error callback (#658)
Replace console.error with a configurable option. This mimcs the current
default behaviour to guaranteee compatibility with previous versions.
Update errorCallback to the README.md
2017-07-30 11:27:29 -04:00
Kevin Barabash
361c500a7f Switch from jasmine to jest (#747)
Summary:
The reasons for switching to jest:
- easy snapshot testing so that we can easily verify the structure of the parse tree and MathML tree
- easy compilation of ES6 features for tests as we continue to expand our use of ES6

Test Plan:
- npm test
2017-07-11 14:16:26 -04:00
Erik Demaine
a36709d239 Add documentation for how to run auto-render example (#740) 2017-06-25 17:47:46 -04:00
Alex Pearce
60b1969a01 Support all render options in auto-render.
Closes #690.
2017-06-14 10:50:14 -04:00
Martin von Gagern
079fecaf86 Update README files to 0.7.1 release 2017-01-22 14:48:00 +01:00
Martin von Gagern
bd9db332d2 Turn var into const or let 2017-01-13 22:37:17 -05:00
Martin von Gagern
9b565a6375 Include babelify step in browserify calls
This allows using ES6 syntax in our code, while maintaining backwards
compatibility for the generated file.
2017-01-13 22:37:17 -05:00
James Lee
549104c5a8 auto-renderer README.md - added integrity (#591)
Integrity generated from https://www.srihash.org/
Reference: https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity
2017-01-13 12:15:57 +01:00
Martin von Gagern
4ead46c4ab Describe using auto renderer in html head (#623)
Describe using auto renderer in html head

Motivated by #621.
2017-01-11 21:04:52 +01:00
Martin von Gagern
53e416e296 Revert "Remove trailing commas for IE 9 compatibility"
This reverts commit 4d2e46e7f6.

Having trailing commans makes diffs easier to read as it avoids modifying a
line just to add a trailing comma if there is another item to add at the end
of a list.  There are plans to switch to ES6 notation and to translate that
to ES5 as part of the build process.  Since that translation would remove
trailing commas, the IE9 problems that originally motivated the commit
should vanish soon.
2017-01-11 13:26:00 +01:00
Emily Eisenberg
4d2e46e7f6 Remove trailing commas for IE 9 compatibility
Summary: IE 9 doesn't like trailing commas. When we introduced eslint, we added
a bunch of trailing commas, which makes IE 9 sad.

Test Plan:
 - `make lint`
 - Visit http://localhost:7936/ using IE 9 on browserstack.
 - See that the math loads, and there are no errors in the F12 developer tools.

@kevinb
2017-01-06 19:06:01 -08:00