adobe / brackets

An open source code editor for the web, written in JavaScript, HTML and CSS.
http://brackets.io
MIT License
33.25k stars 7.63k forks source link

Completions distracting #6876

Open rreinhardt opened 10 years ago

rreinhardt commented 10 years ago

Brackets' completions are very nice and helpful, but may be distracting in their current implementation.

I think the experience could be improved by changing the default behavior, or at least offering a few preferences, to address the following:

1) Prevent the "walking" of the completions dropdown box along with the current cursor position.

I feel it is distracting for users that know what they want to type and want to type it out because it is a lot of movement that is unnecessary. I think the smoothness of the animation is nice, but it doesn't provide any benefit to helping the user quickly identify the right item.

It also makes it difficult to match what is currently being typed with the options below. Consider the following:

 var myFavoriteId = document.getElementById('specialId');

As this is typed straight, I have completions provide me with document the entire time while typing it out but because it does not line up by the end it looks like:

   documen[t]
         |  Document  |

This makes it almost appear to provide me with the completion to follow the previous word, rather than the current.

To illustrate this further, it is much less helpful when I am typing out the getElements piece it would be much nicer if the display was:

   .getElemen[t]
 |  getElementById         |
 |  getElementsByName      |
 |  getElementsByTagName   |
 |  getElementsByTagNameNS |

instead of :

   .getElemen[t]
             |  getElementById         |
             |  getElementsByName      |
             |  getElementsByTagName   |
             |  getElementsByTagNameNS |

How the code hints stay anchored would be appreciated behavior in completions.

2) Allow for a delay in completions appearing until a certain duration after the last keystroke.

I think it would be really nice if the completions didn't show up until there was a pause in character entry as when I am typing a phrase/line of code that I know, I will be distracted by the dropdown changes rather than be aided by it. I would like the option to only be assisted if I stop typing momentarily. Even a short ms delay could benefit the user here.

Thanks!

pthiess commented 10 years ago

@rreinhardt Nice enhancement ideas, thank you very much. Adding it to our backlog will be the next step.

pthiess commented 10 years ago

@RaymondLim Would you mind adding a card covering the ER? Thanks!