'Hook for sub-classes to post-process the list of completions.
Implementations may modify the list in place.
Note that a common operation that all implementations should
generally do (and the default impl. *does*) is to sort the list
of completions case-insensitively by value and with punctuation
characters sorting last (see bug 77954). Sorting is necessary
to have type-ahead-find work properly in Scintilla\'s autocomplete
UI and case-insensitive sorting is necessary if using Scintilla\'s
SCI_AUTOCSETIGNORECASE(true) -- which Komodo is.'

def post_process_cplns(self, cplns):

    from codeintel2.util import OrdPunctLast
    cplns.sort(key=(lambda c: OrdPunctLast(c[1])))
    return cplns
