I find this unrelated-seeming setting makes a big difference so I'll mention it.
The auto-completion feature in eclipse works somewhat differently if you choose "Completion overwrites" instead of "Completion inserts" on the "Content Assist" preferences.
(Let wrappingMethod()
be the method that will be completed.)
wrappingMoriginalMethod()
With the cursor after the "gM" above, accepting the completion proposal gives:
wrappingMethod()
wrappingM(originalMethod()
With the cursor after the "gM" above, accepting the completion proposal gives:
wrappingMethod(originalMethod()
Notice I had to add the open paren to prevent the overwrite, but no extra parens.
wrappingM originalMethod()
With the cursor after the "gM" above, accepting the completion proposal gives:
wrappingMethod(parameterGuess) originalMethod()
I find this the most comfortable choice so far. I DO think that it would be nice if there were a "smart" parentheses insertion feature that would NOT insert the parens if completing right before an existing paren and since I am WISHING anyway... it would be even more awesome if it could check those existing parens to see if they have the args I am looking for or not and do something smart OR check the method after my insertion point to see if it should be an argument to my completion and just go ahead and DO that and put a closing paren after it and BEFORE the semi-colon if there was one there already.
Then again, if the IDE writes ALL of my code then I'll get bored pretty quickly.