Update: I think the more general question I should have asked is: How should I write usage messages to work well with auto-completion? Is there documentation on how to prepare a package for convenient auto-completion?
If I make a small function with a usage message, Mathematica will automatically extract the argument pattern from the usage message and offer it for auto-completion:
f := 1 f::usage = "f returns the value.";
Notice that the complete usage message is echoed under the completion patters, `"f returns the value.", including "f".
This is not the case for builtins. The argument pattern is not repeated in the description. Can I achieve this for user-defined functions?