hughsk / atom-node-resolver

Atom plugin to jump to a module's file from its require statement
Other
5 stars 7 forks source link

Unable to open files from scripts having JSX #2

Open techgyani opened 9 years ago

techgyani commented 9 years ago

[Enter steps to reproduce below:]

  1. Open any file having jsx tag and node require statement.
  2. Select the require statement and press ctrl+alt+o

Below is the error stack trace :

Atom Version: 0.177.0 System: linux 3.16.0-30-generic Thrown From: node-resolver package, v1.0.1

Stack Trace

Uncaught Error: Line 5: Unexpected token <

At /home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3719

Error: Line 5: Unexpected token <
  at throwError (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:1831:21)
  at throwUnexpected (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:1889:9)
  at parsePrimaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2203:13)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2278:61)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2385:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseArguments (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2218:27)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2285:24)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2353:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2586:16)
  at parseStatement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3249:16)
  at parseSourceElement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3490:20)
  at parseFunctionSourceElements (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3319:29)
  at parseFunctionExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3462:16)
  at parsePrimaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2179:24)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2278:61)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2385:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseArguments (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2218:27)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2285:24)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2353:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2586:16)
  at parseStatement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3249:16)
  at parseSourceElement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3490:20)
  at parseSourceElements (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3523:29)
  at parseProgram (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3541:16)
  at Object.parse (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3707:23)
  at atom-workspace.<anonymous> (/home/bhupendra/.atom/packages/node-resolver/index.js:18:23)
  at atom-workspace.handler (/usr/share/atom/resources/app/src/space-pen-extensions.js:115:32)
  at atom-workspace.jQuery.event.dispatch (/usr/share/atom/resources/app/node_modules/space-pen/vendor/jquery.js:4681:9)
  at atom-workspace.elemData.handle (/usr/share/atom/resources/app/node_modules/space-pen/vendor/jquery.js:4359:46)
  at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app/src/command-registry.js:243:29)
  at /usr/share/atom/resources/app/src/command-registry.js:3:61
  at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:558:16)
  at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:396:22)
  at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app/src/window-event-handler.js:170:20)

Commands

 17x -39:54.7 core:move-down (atom-text-editor.editor)
     -39:44.8 core:save (atom-text-editor.editor)
     -37:00.9 core:backspace (atom-text-editor.editor.mini)
     -36:59.9 core:confirm (atom-text-editor.editor.mini)
 15x -36:21.7 core:backspace (atom-text-editor.editor.mini)
     -36:18.7 core:confirm (atom-text-editor.editor.mini)
 11x -36:06.1 core:backspace (atom-text-editor.editor.mini)
     -36:02.4 core:confirm (atom-text-editor.editor.mini)
 23x -33:40.9 core:backspace (atom-text-editor.editor.mini)
     -32:48.5 core:confirm (atom-text-editor.editor.mini)
  3x -32:47.4 core:backspace (atom-text-editor.editor.mini)
     -32:45.7 core:confirm (atom-text-editor.editor.mini)
     -30:16.4 application:open-your-keymap (atom-workspace.workspace.scrollbars-visible-always.theme-atom-dark-syntax.theme-atom-dark-ui)
     -30:10.5 core:paste (atom-text-editor.editor)
     -30:09.4 core:save (atom-text-editor.editor)
     -30:00.9 node-resolver:open-selected-dependencies (atom-text-editor.editor.is-focused)

Config

{
  "core": {
    "themes": [
      "atom-dark-ui",
      "atom-dark-syntax"
    ]
  }
}

Installed Packages

# User
jshint, v1.2.0
node-resolver, v1.0.1
react, v0.9.8

# Dev
No dev packages

/cc @atom/core

farism commented 9 years ago

+1

charliedowler commented 9 years ago

Hi,

Having the same problem with ES6 code. This plugin relies on esprima, It doesn't support JSX. Facebook forked esprima to add JSX support. It might be worth switching.

Cheers, Charlie

evindor commented 9 years ago

+1