Commit Graph

1012 Commits

Author SHA1 Message Date
ylemkimon
fdb155aa97 Build ECMAScript modules (#1479)
* Separate type import statement from module import statement

* Remove extension from import statements

* Build ECMAScript modules

* Add `cross-env` devDependency

* Use `babel-plugin-import-rename` instead of custom plugin

* Improve `.babelrc` style and add comments

* Update README.md

* Change file extension to `.mjs`

Comply with Node.js spec. Use extensionless package:main.

* Enforce only ESM compatible imports

* Dedupe packages

* Add `unicodeMake.js` to overrides:excludedFiles

* Fix .eslintrc merge conflict

* Use rollup to bundle ES module

* Remove `eslint-plugin-import`

* Change build directory to `dist`

* Change build directory to `dist`

* Change build directory

* Move docs from README.md to browser.md

* Update update-sri.js

* Revert update-sri.js

* Revert update-sri.js

* Update .eslintrc

* Remove SSH key testing
2018-08-13 13:06:40 +09:00
ylemkimon
295d933845 Enable greenkeeper-lockfile (#1531)
* Enable `greenkeeper-lockfile`

* Change colon to dash

* Fix command path

* Add SSH key
2018-08-12 23:55:19 -04:00
Tonton Pixel
db43058bea Added project: Vade Mecum Shelf (#1579)
* Added project: Vade Mecum Shelf

Vade Mecum Shelf is a collection of utilities wrapped into one single app, built with Electron.
Two utilities are making use of KaTeX:
- LaTeX Math Renderer
- Trigonometric Formulas

* fix lint
2018-08-12 23:24:07 -04:00
ylemkimon
7f1ce374e0 Lint against function polyfills that may be expensive (#1597)
* Lint against polyfills that may be expensive

* Exclude test file from source code linting
2018-08-13 11:26:46 +09:00
ylemkimon
8f95a275fb Add documentation about macro functions (#1602)
* Add documentation about macro functions

* Update options.md
2018-08-13 03:47:39 +09:00
ylemkimon
d81caf1477 Fix requiring symbols in test/symgroups.js (#1592) 2018-08-13 01:34:27 +09: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
51bf3fa6f5 Set DBUS_SESSION_BUS_ADDRESS=/dev/null in selenium/standalone-chrome container (#1590)
Hopefully fixes Chrome build hanging

+ Change workflow name to `test`
2018-08-11 08:39:07 -04:00
ylemkimon
ea1a226e20 Improve examples, add defer, async, and pre- loading KaTeX (#1580)
* Wrap `katex.render` examples with try...catch

* Add starter template with defer in README.md

* Update documentation to use `defer` and `onload`

* Add documentation on async and pre loading KaTeX

* Use sha384 for SRI

* Revise wording according to comments

* Minor changes

* Fix article
2018-08-11 09:21:36 +09:00
ylemkimon
b99de9ae68 Use local built CSS and fonts for master documentation (#1584)
* Change `npm run` to `yarn`

* Export `commander` program if required as module

* Move `prestart` (cli.md generation) to build.js

* Normalize script names

* Change `yarn prestart` to `node lib/build.js`

* Use local built CSS and fonts

* Move stylesheet after the first paragraph

* Remove prestart script
2018-08-11 08:20:03 +09:00
Ron Kok
d2f56cebd7 Sync support pages (#1556)
* Sync support pages

* Use KaTeX logo for \href example

* mobile support

* Unit block sizes

* Add texvc to supported.md

* Fix CSS lint errors

* Added suggested braces to demo page

* Pick up review comments

* Move \allowbreak
2018-08-10 16:37:08 -04:00
Erik Demaine
881d780287 Rename Screenshotter -> screenshotter (#1573)
Fix #1570
2018-08-10 19:29:16 +09:00
ylemkimon
bd0ac91378 Upload minified files to CircleCI build artifacts (#1581)
* Upload minified files to CircleCI build artifacts

* Fix typo
2018-08-10 11:54:04 +09:00
ylemkimon
307b7ab9c3 Improve main page (index.html) speed (#1577)
* Inline Font Awesome icons using SVG

* Add license information header

* Preload KaTeX fonts

* Defer loading javascripts

* Cleanup stylesheet links

* Invoke startup script immediately

* Fix typo

* Add leading zeros
2018-08-10 02:52:49 +09:00
ylemkimon
e4db097f0c Enable stylelint-config-standard, lint CSS files (#1575) 2018-08-09 13:10:30 -04:00
ylemkimon
eab8f24333 Improve supported functions documentation 2 (#1576)
* Move remarkable plugins to website/lib

* Bypass escaped delimiter

* Add redirect page

* Include stylesheet in the documentation for versioning
2018-08-09 21:54:58 +09:00
greenkeeper[bot]
8fb92f6866 chore(package): update postcss-loader to version 3.0.0 (#1572)
* chore(package): update lockfile
2018-08-09 12:58:06 +09:00
Erik Demaine
00a23b682f Test that \neq is in a group (#1574) 2018-08-09 12:37:51 +09:00
ylemkimon
dcaa1399c0 Do not polyfill JSON.stringify (#1563) 2018-08-09 05:22:36 +09:00
ylemkimon
0a6392985c Fix padding on nested inner page navigation (toc) (#1568)
* Use original CSS selector
2018-08-08 15:30:42 -04:00
ylemkimon
429bb56606 Fix scripts (scrollspy) path (#1567) 2018-08-08 11:43:15 -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
ylemkimon
5ce03c45cf Add link to the demo in navigation bar and README (#1564)
* Add link to the demo in navigation bar

* Add link to the demo in README
2018-08-08 09:32:57 -04:00
greenkeeper[bot]
0b8277c37b chore(package): update style-loader to version 0.22.0 (#1561)
* chore(package): update lockfile
2018-08-08 17:56:00 +09:00
Erik Demaine
05dc9211cc ScrollSpy for table of contents (#1557)
* ScrollSpy for table of contents

* Add reference

* Incorporate comments

* Simplify headingsCache and change ScrollSpy reference

* Add comment

* Fix lint errors

* Switch back to throlling, update comments
2018-08-08 13:22:06 +09:00
ylemkimon
48e6d9d431 index.html: replace font, make responsive (#1547)
* Replace Proxima Nova with Lato

* Make main page responsive (mobile-friendly)

* Make comparison image responsive
2018-08-07 23:26:33 -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
69a7634a56 Improve release script & enable versioning documentation (#1521)
* Add version selection page

* Update the CDN urls in the documentation

* Generate new version and publish documentation in release script

* Update CDN urls when NEXT_VERSION is not provided

* Remove bower-related from release script

* Improve instructions running on the release branch 

and without next version

* Add a suffix to the branch name

* Update CSS stylesheet replacement

* Update release.sh

* Change npm to Yarn

* Fix calling `version` script

* Run `prestart` in `version`

* Wrap `Latest Version` descriptions with p tag

* Explicitly specify files to commit in the website
2018-08-08 08:52:28 +09:00
Ron Kok
98dd7fc912 Fix \Large roots (#1485)
* Fix roots

* Update screenshots

* Added a test in a craven gambit to get a green check mark

* Adjust small radicals

* Fix lint error

* Update screenshots
2018-08-08 08:46:04 +09:00
Ron Kok
50c0240349 Support mediawiki (#1558)
* Support mediawiki

* Fix lint error

* Fix link to deprecated syntax

* Change In master to display of functions
2018-08-08 07:49:38 +09:00
Ashish Myles
f3a9bd4b3d Flatten "styling", "text", and "array" ParseNodes. (#1559)
* Flatten "styling" ParseNode.

* Flatten "text" ParseNode.

* Flatten "array" ParseNode.
2018-08-07 14:26:40 +09:00
Ashish Myles
f0b9a344ed Flatten "size" ParseNode and also simplify its uses. (#1554) 2018-08-07 00:31:19 +09:00
Ashish Myles
5b6ffd7b9d Flatten a bunch of non-pervasive ParseNode types (part 2) (#1552)
* Flatten "operatorname" ParseNode.

* Flatten "overline" ParseNode.

* Flatten "raisebox" ParseNode.

* Flatten "rule" ParseNode.

* Flatten "sizing" ParseNode.

* Flatten "smash" ParseNode.

* Flatten "sqrt" ParseNode.

* Flatten "underline" ParseNode.

* Flatten "enclose" ParseNode.

* Flatten "environment" ParseNode.

* Flatten "genfrac" ParseNode.

* Flatten "htmlmathml" ParseNode.

* Flatten "infix" ParseNode.

* Flatten "kern" ParseNode.

* Flatten "lap" ParseNode.

* Flatten "color" ParseNode.
2018-08-06 14:59:44 +09:00
Ashish Myles
1506dc1d88 Flatten a bunch of non-pervasive ParseNode types (part 1) (#1551)
* Flatten "url" ParseNode.

* Flatten "href" ParseNode.

* Flatten "verb" ParseNode.

* Flatten "tag" ParseNode.

* Flatten "cr" ParseNode.

* Flatten "delimsizing" ParseNode.

* Flatten "middle" ParseNode.

* Flatten "leftright" ParseNode.

* Flatten "leftright-right" ParseNode.

* Flatten "mathchoice" ParseNode.

* Remove unused ParseNode type "mod".

* Flatten "mclass" ParseNode.

* Flatten "font" ParseNode.

* Flatten "phantom" ParseNode.

* Flatten "hphantom" ParseNode.

* Flatten "vphantom" ParseNode.
2018-08-06 11:49:43 +09:00
Ron Kok
b2d38104cd Fix \fbox (#1550)
* Fix \fbox

* Fix lint errors

* Change negative space test from \fbox to \boxed
2018-08-04 20:32:06 -07:00
Ron Kok
aef9256419 Fix wide characters (#1549)
* Fix wide characters

* Add phony screenshots

* Try again with screenshotter

* Screenshotter general edit

* Getting closer

* Fix screenshotter test

* Update screenshots
2018-08-05 12:26:20 +09:00
Ron Kok
f28e3c8001 Fix \neq (#1548) 2018-08-04 17:26:43 -04:00
greenkeeper[bot]
ddddd3ad8c chore(package): update flow-bin to version 0.78.0 (#1545) 2018-08-03 21:16:00 -04:00
Ashish Myles
fd6690b988 Flatten ParseNodes: "supsub" and related ("accent", "accentUnder", "horizBrace", "xarrow", "op"). (#1542) 2018-08-03 14:06:02 +09:00
Ron Kok
c7145f0ff0 Alpha sorted function support page (#1536)
* Alpha sorted function support page

* Pick up comments

* Pick up review comments

* Pick up more comments

* Add more links

* Add \pu
2018-08-03 03:11:27 +09:00
Ashish Myles
7e97a382ec Introduce "atom" parse node to coalesce various symbol nodes. (#1541) 2018-08-02 20:46:40 +09:00
Erik Demaine
30be53efe6 Fix \textdaggerdbl (#1539)
Fix #1538 by correcting the symbol mapping for `\textdaggerdbl`
2018-08-02 08:33:39 +09:00
Ashish Myles
0ac4b6e89d Convert ParseNode to struct (#1534)
* Define the nested version of ParseNodes structs explicitly.

Passes test:jest, but fails test:flow.

* Fix additional type errors reported by flow.

* Migrate rebased code from master.

* Rename ParseNode.js to parseNode.js.

* Update defineEnvironment output type to fix the flow errors in environment/array.js.
2018-08-01 15:41:27 +09:00
Erik Demaine
2202aa774f Comments without terminating newlines, \href fixes, \url support (#1529)
* Comments without terminating newlines in nonstrict mode

Fix #1506 by allowing single-line comments (`%` without terminating newline)
in nonstrict mode.  `Lexer` and `MacroExpander` now store the `Settings`
object, so the `Lexer` can complain about missing newline according to the
`strict` setting.  I filtered this out from the snapshot tests with a slightly
different `replacer`.

* Reimplement \href like \verb, add \url

Major restructuring to lex URL arguments differently, e.g. to support
`\href%{hello}` and `\href{http://foo.com/#test%}{hello}`.  The new URL
parsing code is simpler, but involves a special case in `parseSymbol`
like `\verb`.

Also add support for `\url` while we're here.

* Cleanup

* Fix flow errors and improve error messages

* Add \url to documentation

* Improve doc formatting
2018-07-31 14:13:30 -04:00
Ron Kok
b73e43832b Improve Unicode docs (#1533)
* Improve Unicode docs

* Edit table
2018-08-01 01:43:55 +09:00
Erik Demaine
41892af1a3 Typo in \hspace*, cleanup TeX commands (#1532) 2018-07-30 17:15:31 -07:00
ylemkimon
c06b36cb6a Replace yarn run and yarn install with yarn, remove building with npm instructions (#1528)
* Replace `yarn run` with `yarn`

* Replace `yarn install` with `yarn`

* Remove building using `npm` from node.md
2018-07-30 14:31:25 +09:00
Erik Demaine
c88fa70a62 Small tweaks to documentation (#1527) 2018-07-30 12:25:38 +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
ylemkimon
702b3c807f Add Building from Source & update Security documentation (#1516)
* Add `Building from Source` documentation

* Update security.md documentation

* Fix grammars
2018-07-30 03:18:44 +09:00