| Won't get you graphql literals, but the new Emacs has much better JSX support. Reposting my setup: """
Disclosure: I'm the author of rjsx-mode) The best setup I've found is to use js2-mode for .js and rjsx-mode for .jsx, which parse the buffer for syntax highlighting, local refactoring (with js2r) and basic linting. For typescript, use typescript-mode. Flow support is quite bad ATM nvm.el replaces the shell scripts from nvm. Add a jsconfig.json to your project root and enable tide-mode for completion. This has worked far better than tern-mode, which some people recommend. For fuller linting than what js2/rjsx offer, use flycheck. Eslint support is built-in, so it should just work, I think. [2018 update: I prefer using tslint, which you can accomplish with: (flycheck-add-mode 'typescript-tslint 'js2-mode) (flycheck-add-mode 'typescript-tslint 'rjsx-mode)] Finally, for build management, I use prodigy to run webpack, babel, ts, etc. |