This is the format I've gone for (more-or-less) in my RoleGraph view (I'll be sharing it publicly in the near future).
bob from grantor (a, s, i) \n
adam from postgres (a, s, i) \n
emily from postgres (empty)
I think this is a good compromise.
Based upon prior comments going for something like the following is undesirable: bob=asi/grantor
Agree. Membership options are not the ACL (although they have similarities). Therefore, showing them as a ACL-like column will be confusing. So, please find attached the second version of the patch. It implements suggested display format and small refactoring of existing code for \du command. As a non-native writer, I have doubts about the documentation part.