Skip to content
This repository has been archived by the owner on Jan 31, 2023. It is now read-only.

Failed to compile, unexpected character '#' #19

Open
karanrajpal14 opened this issue Oct 8, 2018 · 7 comments
Open

Failed to compile, unexpected character '#' #19

karanrajpal14 opened this issue Oct 8, 2018 · 7 comments

Comments

@karanrajpal14
Copy link

I've been trying to get this to work for a while now but, unfortunately, I haven't had the luck.
Firstly, the directory structure looks like this:

├── docs
│   └── res.mdx
├── node_modules
│   ├── bloomer
│   ├── classnames
│   └── tslib
├── package.json
└── package-lock.json

I cd to this directory and run mdx-go docs and get the following error:

➜ mdx-go docs 
[mdx-go] starting dev server...
✔ success [mdx-go] compiled in 1s 848ms


 ERROR  Failed to compile with 1 errors                                 19:30:57

 error  in /home/karan/.nvm/versions/node/v8.11.4/lib/node_modules/mdx-go/lib/client/keyboard-shortcuts.md

Module parse failed: Unexpected character '#' (2:0)
You may need an appropriate loader to handle this file type.
| 
> ### Keyboard Shortcuts
| 
| - `/`: Show directory listing

 @ /home/karan/.nvm/versions/node/v8.11.4/lib/node_modules/mdx-go/lib/client/routes.js 11:0-56 44:26-43
 @ /home/karan/.nvm/versions/node/v8.11.4/lib/node_modules/mdx-go/lib/client/App.js
 @ /home/karan/.nvm/versions/node/v8.11.4/lib/node_modules/mdx-go/lib/client/index.js
 @ multi webpack-hot-middleware/client /home/karan/.nvm/versions/node/v8.11.4/lib/node_modules/mdx-go/lib/client/index.js

✖ 「wdm」: 
ERROR in ./client/keyboard-shortcuts.md 2:0
Module parse failed: Unexpected character '#' (2:0)
You may need an appropriate loader to handle this file type.
| 
> ### Keyboard Shortcuts
| 
| - `/`: Show directory listing
 @ ./client/routes.js 11:0-56 44:26-43
 @ ./client/App.js
 @ ./client/index.js
 @ multi webpack-hot-middleware/client ./client/index.js
[mdx-go] listening on http://localhost:8080
^C

Any idea why it's breaking due to a file that isn't even present in the directory? Is there something wrong on my end that I need to change? Please do let me know.

@jxnblk
Copy link
Owner

jxnblk commented Oct 9, 2018

Thanks! That's definitely a bug. I think I have a fix in #20 if you wanna try installing the latest version

@karanrajpal14
Copy link
Author

karanrajpal14 commented Oct 10, 2018

Hey thanks for attempting to fix it! I do think the issue is resolved for the case I specified but there is one other case I would like to mention and highlight another issue I am facing.

The mdx file does seem to be compiling but, I do not see any content on the page right now. I just have # Hello in the index.mdx file right now.

I only see a blank page with the following error in the console

Uncaught TypeError: Cannot read property 'Root' of undefined
    at eval (routes.js:126)
    at Module../client/routes.js (main.js:1876)
    at __webpack_require__ (main.js:768)
    at fn (main.js:131)
    at eval (App.js:11)
    at Module../client/App.js (main.js:1756)
    at __webpack_require__ (main.js:768)
    at fn (main.js:131)
    at eval (index.js:8)
    at Module../client/index.js (main.js:1840)

Any idea what's going on here?

Also, the second case that I mentioned. Is it necessary to have the mdx files inside another folder? In my case, I will most likely need just one mdx file and some components from BloomerJS. If I do place the index.mdx file in the root directory, it picks up the README.md files from the node_modules directory and errors out. What do you think? It's not a big deal but just something to consider if you've got the time.

@jxnblk
Copy link
Owner

jxnblk commented Oct 10, 2018

Glad that the original issue was resolved. For your second question, mdx-go uses webpack's require.context to pick up all files that end in .js, .md or .mdx, so it's recommended you use it on a folder that doesn't contain node_modules. I'm looking into other ways to specify which files it picks up, but for now I'd recommend making a separate docs folder or similar

@karanrajpal14
Copy link
Author

Ah! That makes sense. I'll stick to the recommended structure if that's the case. Any idea what's the issue with rendering the mdx though? That error does not seem to be going away irrespective of what I do and I always see a blank page and nothing more.

@airtonix
Copy link

airtonix commented Apr 17, 2019

@airtonix
Copy link

airtonix commented Apr 17, 2019

ok so you must have a docs/index.md or docs/index.mdx... you can not simply have only docs/readme.md, or just docs/README.md

@talentlessguy
Copy link

The issue keeps happening:

 WAIT  Compiling...                             3:36:46 PM

✔ success [mdx-go] compiled in 195ms


 ERROR  Failed to compile with 1 errors         3:36:47 PM

 error  in /home/v1rtl/.local/pnpm/pnpm-global/3/node_modules/.pnpm/registry.npmjs.org/mdx-go/2.0.0-32/node_modules/mdx-go/lib/client/keyboard-shortcuts.md

Module parse failed: Unexpected character '#' (2:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| 
> ### Keyboard Shortcuts
| 
| - `/`: Show directory listing

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

No branches or pull requests

4 participants