Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem compiling KaTeX #14

Open
drewsberry opened this issue Mar 30, 2015 · 0 comments
Open

Problem compiling KaTeX #14

drewsberry opened this issue Mar 30, 2015 · 0 comments

Comments

@drewsberry
Copy link

I've been using ExecJS for compiling KaTeX for a while now (see repo https://github.com/drewsberry/jekyll-katex-block).

After upgrading from 2.2.2 (where it worked perfectly), versions 2.3.0 and 2.4.0 cannot compile katex.js, giving the error TypeError: Cannot set property 'katex' of undefined (ExecJS::ProgramError). I downloaded katex.min.js version 0.2.0 from https://github.com/Khan/KaTeX/releases. ExecJS version 2.2.2 compiles the same file without problem.

The full trace is below:

p ((execjs):1:563): TypeError: Cannot set property 'katex' of undefined (ExecJS::ProgramError)
        from (execjs):1:568
        from (execjs):11:14
        from (execjs):1:102
        from Object.<anonymous> ((execjs):1:120)
        from Module._compile (module.js:460:26)
        from Object.Module._extensions..js (module.js:478:10)
        from Module.load (module.js:355:32)
        from Function.Module._load (module.js:310:12)
        from Function.Module.runMain (module.js:501:10)
        from /var/lib/gems/2.1.0/gems/execjs-2.4.0/lib/execjs/external_runtime.rb:32:in `exec'
        from /var/lib/gems/2.1.0/gems/execjs-2.4.0/lib/execjs/external_runtime.rb:14:in `initialize'
        from /var/lib/gems/2.1.0/gems/execjs-2.4.0/lib/execjs/runtime.rb:44:in `new'
        from /var/lib/gems/2.1.0/gems/execjs-2.4.0/lib/execjs/runtime.rb:44:in `compile'
        from /var/lib/gems/2.1.0/gems/execjs-2.4.0/lib/execjs/module.rb:27:in `compile'
        from execjs-katex.rb:4:in `<main>'

It seems like it might have to do with the following line in katex.min.js:

... "undefined" != typeof window ? window.katex = e() : global.katex = e() ...

In 2.2.2, running ExecJS.eval "typeof global" returns Object, whereas in 2.4.0 it returns undefined.

I'm using Node.js v0.12.1 for the runtime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant