> This is offtopic, but it really shouldn't. If the casing where all that > important, how come every URL I look at starts with 'http(s)'?
Well I didn't mean to start a discussion on that, but just give an example showing that `snake_case_Caps_allowed` contains more information than `camelCase` and conclude that we shouldn't "convert" `fooBar` to `foo_Bar` or `foo_bar` but stick with current "ignoring" approach. In fact, I used to wrote such converters for OpenGL (`camelCase` to `snake_case_all_small_caps`). Believe me, it's really nasty to do simply because of the lack of information. The first problem you may encounter will be the numbers. E.g. my first try converts `glTexImage2D` to `gl_tex_image2_d`, which should be `gl_tex_image_2d`. My second try fixed that by considering numbers as capital letters and consecutive capital letters are considerered to be only the first character is capitalized. Then `glUniformMatrix2x3fv` becomes a problem, too. It's converted to `gl_uniform_matrix_2x_3fv`, which should converts to `gl_uniform_matrix_2x3_fv` or `gl_uniform_matrix_2x3fv`. And `glTexImage2DMultisample` is also incorrectly converted to `gl_tex_image_2dmultisample`, which should be `gl_tex_image_2d_multisample`.
