I agree it’s quite ugly, but I find it much more readable than putting them at the end of lines.  Finding the colon is almost the first thing one needs to do in parsing any Coq declaration, and colons at the end of lines get completely lost.  At the beginning of the line, they’re ugly, but they’re conspicuous.