A question Nick had about semantic-complete-self-insert got me looking
to see if I could make my suggested patch more permanent. As a result I
checked in some changes to this function.
If you use semantic-complete-self-insert, please try out the CVS
version and let me know how it goes. It will not start up a full
reparse and recalculate the environment, but with exit-on-input enabled,
so it will cancel if you are typing quickly.
I also found it wouldn't self-insert if you were already in a
completion environment, so I fixed that up too.
I also updated the interfaces to all the external programs, such as
GNU Global, idutils, or ctags. The mechanism used to query the program
to make sure it is up-to-date enough is now more robust to programs
which might not exist. For exuberent ctags I also added a list of
possible names, and try to detect homonym programs to provide more
useful error messages.