I attached the overhauled patch, which addresses most of the comments by Eli. In comparison to my last patch, the patch is fully backward compatible and preserves all existing tests. As before, there are tests which check the new functionality for each existing completion style. Daniel