CompleteClipse FAQ

Troubleshooting
When I restarted Eclipse, CompleteClipse didn't seem to be working anymore. Why?
CompleteClipse operates by intercepting IEditorPart as they are opened, and adding new functionality (TextEditorActions) to them. When Eclipse restarts, CompleteClipse checks for all the editors that have been restored and tries to update them during start up. Unfortunately, this doesn't always seem to "take." There does not seem to be much rhyme or reason to this behavior. Sometimes it works, sometimes it doesn't. If this happens to you, try closing your editors and reopening them, which should fix the problem.
CompleteClipse Java
What is a No Fill [NF] completion?
A no fill completion is one that does not try to fill in the arguments. This can be useful if you know the guesses will be wrong, or just don't want them filled in under certain conditions. If you want to option to complete a no fill completion, turn on the preference on the CompleteClipse preference page. Turning on this option will give you two completion alternatives for every method with arguments, a guessing completion and a [NF] completion which functions like normal code complete.
Why would I want to turn off the "guess parameters" preference?
I have no idea, I think it's rather cool, but to each his own. Perhaps you just want to use CompleteClipse to change the key binding for completion.
How does CompleteClipse java determine which variable to use when it guesses?
CompleteClipse guesses the variable based on a number of factors. These are the preference rules in approximate order of priority:
  1. Variable type must be assignable to the argument type
  2. Local variables will be chosen before instance variables
  3. Instance variables will be chosen before inherited instance variables
  4. Variables that have a common substring with the parameter get preference (e.g. if the argument is "String theString" a variable "String myString" will have a greater common substring than "String fooBar")
  5. Variables that appear closer to the point of code completion get preference (proximity)
  6. Variables that have not been matched to a parameter yet are given preference over those already used in this method completion.
TextCompletion
What is a raw template? -or- Why do templates come up as completions?
There is an option to include "raw" templates as possible text completions. Raw templates are ones where the variables (e.g. ${cursor}) are not evaluated. If the template name would be a valid completion, you will see the template as a completion option. In case you noticed, this is also why the TextComplete plugin has a dependency on the JDT-UI plugin. Variables can not be evaluated because currently templates are only valid in a Java context, which only applies if you are editing a Java file.
Why doesn't TextComplete work in [some editor implementation]?
There are a few possible reasons:
  1. The editor is not a subclass of AbstractText Editor
  2. The editor does not return an appopriate IDocumentProvider/IDocument
  3. The editor does something else uncooperative
I don't like how TextCompletion tokenizes/how it pick words to use as completions. Can I modify how it behaves?
You can change the "Additional characters to count as word completion" preference. TextCompletion will count anything that matches Character.isJavaIdentifierPart() plus all characters in this preference as part of a completion word.
How is TextCompletion different from Genady's Emacs Complete?
TextCompletion uses the Content Assist pop up, so it's GUI based rather than text/cycle based. TextCompletion also does not track history or give preference to recently used completions.
Key Bindings
I use Emacs Keybindings, and your key bindings are wrong. What should I do?
Change them. Please see the next two questions. A future version may attempt to detect this and adjust the defaults.
Can I change the Java Code Completion key binding to something besides Ctrl+Space?
Yes. On the CompleteClipse Preference Page, select "ContentAssistProposal Key Binding", and change it to any free key sequence.
Can I change other Content Assist action key bindings?
Every implementation of the CompleteClipse Extension Point will appear on the CompleteClipse preference page, where the key binding can be modified. If you have TextComplete, or any other CompleteClipse extension installed, you should be able to change its keybinding.