Clang-Format: Spacing around operator function definitions

Hi all,

I recently stumbled across clang-format and I really like it so far :slight_smile:
However, I was not able to reproduce some of our csg guidelines. Maybe I was too stupid configuring this, but as far as I can see those things are not working atm (I am using version 3.6), am I right?

1. Spacing around operator function definitions
At my company we like to ad spaces around the operators when defining operator functions, for example:

// Note the spaces around '==':
bool operator == (const Type& other) const
{
   return (m_member == other.m_member);
}

I could not find anything handling this kind of stuff in clang-format. I also gave it a shot to quickly grep through the sourcecode, but couldn't find anything either. Is this simply not possible? What would be the starting point for implementing this?

2. Initializer lists each in one line, comma at the end
I wasn't able to reproduce this. Either everything was in a separate line, with the comma aligned to the colon, or if possible the initializer list was wrapped into one line. I agree, that the comma-colon-aligning makes sense, however it does not fit our csg :wink:
Is it possible to force putting every member into a separate line but keeping the comma at the end?

Cheers
Felix

+Daniel Jasper, one of the clang-format developers