Code completion often assumes that there's nothing after the cursor. For example, when I'm writing CSS: padding-b|: 10px; I should still get completion for `padding-bottom`. This is a hard problem, but I've seen few IDEs handle this well.