This behavior of IEx has always surprised and annoyed me. I regularly type h [first few chars of mod name]<tab><enter> in IEx to read the read the moduledoc of a particular module, and the trailing period gets in the way every time.
Here’s a demonstration showing what happens to me regularly when I try to read the @moduledoc for a module:

With this change, it avoids this problem:

I opened a PR with this change but was asked to redirect conversation here for community feedback first. On the PR, @antipax said (and @josevalim concurred):
I’m not in support of merging this, if only because the vast majority of the time I autocomplete a module in IEx it is to make a remote call.
I thought the purpose of autocomplete in IEx is to autocomplete tokens (e.g. module and function names) not to guess the intention of the programmer and add additional characters after the token. IMO, it’s much more natural to just complete the module name, and people who want to do a remote call (or navigate to a “nested” module) can type a period, than to add the period and force the programmer to delete it. After all, I believe the autocomplete plugins in most text editors/IDEs would just autocomplete the module name, and not add the period.
On the PR @antipax also said:
I would be in support of making this configurable, however.
Having this be configurable would meet my needs as long as I could configure it globally (presumably in ~/.iex.exs) but the trailing dot still feels like an odd default to me.
Thoughts from the community?
Thanks,
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 elixir-lang-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CADUxQmu%3Dnc1VpF9Y8oFE%2Bzsp45Xb_sCVZjdPLgBQivrpt2iv2g%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAM-pwt4sRT8UVdTkEMm1eWsaLdrG%2BbYWnNN20zqtQEvJHq2rrg%40mail.gmail.com.
Since I haven't found a good way in iex to "cancel the current line", if I get in that spot, I lose a lot of history and current variables and whatnot.
If anything, my vote would be to make it optional -- but default it to NOT appending the dot.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/386bdd96-d3e0-4b90-8172-a5bbe51a1246%40googlegroups.com.--
You received this message because you are subscribed to a topic in the Google Groups "elixir-lang-core" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/elixir-lang-core/ZDbAdRgCvzw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to elixir-lang-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/386bdd96-d3e0-4b90-8172-a5bbe51a1246%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAD3kWz9xda-CefoHXRq5emARyvjcvFXb4U8xb%2BFmpJAnhS2dTw%40mail.gmail.com.
Also for those looking for a way to "cancel the current line" in iex, you can type #iex:break at any time to return to do so.
--
You received this message because you are subscribed to a topic in the Google Groups "elixir-lang-core" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/elixir-lang-core/ZDbAdRgCvzw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to elixir-lang-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAA1-O0x4S8vdZM%2BF7u4kqVqUwSpsPh%2BoQ9xd2FO6XDCo86yQXQ%40mail.gmail.com.