I have a reason to believe that the answer to your question is: None. I looked at the document type and exported the UTI declarations in Info.plist Xcode 4.5.1. It lists 4 extensions for flash shaders associated with the UTI org.khronos.glsl.fragment-shader: .fs, .fsh, .frag, .fragment. There are similar extensions for vertex shaders and geometric shaders. But if I add a file with any of these 4 fragment shader extensions to the project, Xcode simply classifies it as common source code.
I bet there is no answer to (b) either, but I cannot prove it.
source share