No idea what you think is lacking. Colour? Sound? Taste?
Your suggestions are very similar to my own conventions. A minor quibble is with the braces, brackets issue. If the code block fits neatly on one line (without it being inconveniently long) I often put the opening and closing brackets on the same line. Otherwise I make sure the opening and closing brackets line up clearly in the vertical direction. In my opinion that makes it easy to see where a code block starts and finishes. But that works for me - others might see it differently. For example, text .X files often have blocks structured like this:
xof 0303txt 0032
template Vector {
<3d82ab5e-62da-11cf-ab39-0020af71e433>
FLOAT x;
FLOAT y;
FLOAT z;
}
template MeshFace {
<3d82ab5f-62da-11cf-ab39-0020af71e433>
DWORD nFaceVertexIndices;
array DWORD faceVertexIndices[nFaceVertexIndices];
}
template Mesh {
<3d82ab44-62da-11cf-ab39-0020af71e433>
DWORD nVertices;
array Vector vertices[nVertices];
DWORD nFaces;
array MeshFace faces[nFaces];
[...]
}
template MeshNormals {
<f6f23f43-7686-11cf-8f52-0040333594a3>
DWORD nNormals;
array Vector normals[nNormals];
DWORD nFaceNormals;
array MeshFace faceNormals[nFaceNormals];
}
template Coords2d {
<f6f23f44-7686-11cf-8f52-0040333594a3>
FLOAT u;
FLOAT v;
}
template MeshTextureCoords {
<f6f23f40-7686-11cf-8f52-0040333594a3>
DWORD nTextureCoords;
array Coords2d textureCoords[nTextureCoords];
}
Mesh {
12;
-19.134149;49.999987;-46.193974;,
19.134149;49.999987;46.193974;,
-19.134149;-49.999987;-46.193974;,
19.134149;49.999987;46.193974;,
19.134149;-49.999987;46.193974;,
-19.134149;-49.999987;-46.193974;,
-76.536595;4.999998;-184.775898;,
76.536595;4.999998;184.775898;,
-76.536595;-4.999998;-184.775898;,
76.536595;4.999998;184.775898;,
76.536595;-4.999998;184.775898;,
-76.536595;-4.999998;-184.775898;;
4;
3;0,1,2;,
3;3,4,5;,
3;6,7,8;,
3;9,10,11;;
MeshNormals {
12;
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;,
-0.923880;0.000000;0.382683;;
4;
3;0,1,2;,
3;3,4,5;,
3;6,7,8;,
3;9,10,11;;
}
MeshTextureCoords {
12;
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;,
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;;
}
}
That's not too bad because the starting character of the block, e.g. the "M" of "MeshTextureCoords {" lines up vertically with the closing "}". I prefer something like
MeshTextureCoords
{ 12;
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;,
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;;
}
or perhaps
MeshTextureCoords
{
12;
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;,
1.000000;0.000000;,
0.000000;0.000000;,
1.000000;1.000000;,
0.000000;0.000000;,
0.000000;1.000000;,
1.000000;1.000000;;
}
Anyway, such distinctions are nit-picking and the important thing is to have a consistent readable style which you seem to have.