Yes, please go ahead. :D

Keep in mind today the autocomplete does not have information about the
evaluator (which is the process that effectively has variable bindings).
However, you can reach the evaluator from the autocomplete code as follows:

{:dictionary, keys} = Process.info(IEx.Server.local, :dictionary)
keys[:evaluator]


You may need to extend the evaluator process (defined in IEx.Evaluator) to
respond to new messages which you will send from the autocomplete.

I assume that as soon as we allow the autocomplete to access information in
the evaluator, we can support both:

map.f<Tab>

some_module.f<Tab>


Please let me know if you have any questions!

*José Valim*
www.plataformatec.com.br
Skype: jv.ptec
Founder and Director of R&D

On Mon, Nov 28, 2016 at 1:29 AM, Myron Marston <[email protected]>
wrote:

> IEx autocompletion is really nice, but I think there are some features
> missing to really make it shine.  In particular, I wish it supported
> autocompletion of struct fields (or really, atom keys in any map).  For
> example, in a case like:
>
> ```
> iex> map = %{foo: 23, bar: 14}
> iex> map.f<TAB>
> ```
>
> ...I'd like it to autocomplete `f` to `foo`.  And if multiple fields
> match, it would ideally list all matches, just like how `Module.f`<TAB>`
> prints all the functions starting with `f` in `Module`.
>
> Depending on the complexity of implementing this, I'd be interested in
> taking a stab, provided the core team was in favor of this new feature.
>
> Thoughts?
> Myron
>
> --
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-core" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/elixir-lang-core/5760b5e6-c597-40a1-8749-
> c9927643da41%40googlegroups.com
> <https://groups.google.com/d/msgid/elixir-lang-core/5760b5e6-c597-40a1-8749-c9927643da41%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4%2BN-2wzu9Rimu%2B%3D2qerhw3LU-yBVbqZbkkSAoo9rFtCaw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to