Skip to content
This repository has been archived by the owner on Dec 11, 2017. It is now read-only.

GSOC idea: atom autocompletion. #37

Closed
nkt opened this issue Mar 8, 2015 · 14 comments
Closed

GSOC idea: atom autocompletion. #37

nkt opened this issue Mar 8, 2015 · 14 comments

Comments

@nkt
Copy link

nkt commented Mar 8, 2015

I suggest to add in atom autocompletion for JS based on static analysis. Now atom-completion collect parsed identifiers:

But there are already exists tools (like babel) with great api for retrieving js ast.
So we just need to write tool that gives more brains to completion mechanism.

Maybe, if it's possible do during summer - parse dependencies and add correct completion for them too.

@bkeepers
Copy link
Contributor

bkeepers commented Mar 8, 2015

/cc @github/atom

@benogle
Copy link

benogle commented Mar 9, 2015

This is interesting. Have you tried https://github.com/tststs/atom-ternjs?

@nkt
Copy link
Author

nkt commented Mar 12, 2015

@benogle yep, I've tried. This project works based on plugins. For example there are angular, node, require.js, jquery plugins. But I'm suggest to analyse code and create autocompletion based on it.
Actually previously I were using WebStorm by JetBrains. But there is a huge problem - ide index all code and suggest completion looks like every code in global namespace. As you know, today every js file is the module with its individual scope.

@bkeepers bkeepers added the atom label Mar 13, 2015
@nkt
Copy link
Author

nkt commented Mar 19, 2015

That's how atom-ternjs works now.

Ternjs written by acorn author, so it's could support es6.

@despairblue
Copy link

@nkt though it does not yet completely, right? I had to disable it since it kept throwing errors if the file contained arrow function.

@nkt
Copy link
Author

nkt commented Mar 19, 2015

@despairblue I've not found your commits that disable something.
Also I've tried to use sublime ternjs plugin and this simple completion also doesn't working fine.

@despairblue
Copy link

@nkt sorry, you misunderstood me, I had to disable the atom-ternjs in atom, since it kept piling up errors on the right hand side. And those weren't atom-ternjs errors, but ternjs errors. I'll just enable it and post a screenshot of it when it happens again. I meant to report them to ternjs anyway.

@despairblue
Copy link

@nkt that's what I meant: ternjs/tern#510 it's generator functions not arrow functions that don't work.

Sorry for getting off topic :/
Stopping now.

@nkt
Copy link
Author

nkt commented Mar 25, 2015

I also want to participate in GSOC with Atom team. I'm on 3rd course in Russian university MIREA on "Applied Mathematics". I pretty know js, coffee, but prefer es6, also I know C++, but didn't wrote something significant using it. I'm just started work on coursework - HTTP 1.0 server, it's will be written using C++ and C.
If my idea will not be accepted, I'm ready work on "Improve Atom's parser performance" or "IDE and editor integrations to develop Atom Shell apps".
I've been working on Zephir language and have written IDEA plugin for this language.
@bkeepers, what I have to do right now?

@MikeMcQuaid
Copy link
Contributor

@nkt Just submit a proposal based on the template and we'll review it.

@bkeepers
Copy link
Contributor

bkeepers commented Apr 3, 2015

The application deadline is passed, so I'm going to close this. Let us know if you have any other questions.

@bkeepers bkeepers closed this as completed Apr 3, 2015
@nkt
Copy link
Author

nkt commented Apr 3, 2015

@bkeepers

If my idea will not be accepted, I'm ready work on "Improve Atom's parser performance" or "IDE and editor integrations to develop Atom Shell apps".

Did you accept my application for participation?

@bkeepers
Copy link
Contributor

bkeepers commented Apr 3, 2015

We're still reviewing proposals. We'll be in touch soon.

@nkt
Copy link
Author

nkt commented Apr 3, 2015

@bkeepers thanks, I'll be waiting.

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

5 participants