My 2 cents: a typical case where this could be useful is:
switch (foobar) {
case long_enum_value_name_a: printf ("a"); break;
case long_enum_value_name_b: printf ("b"); break;
case long_enum_value_name_c: printf ("c"); break;
case long_enum_value_name_d: printf ("d"); break;
case long_enum_value_name_e: printf ("e"); break;
case long_enum_value_name_f: printf ("f"); break;
case long_enum_value_name_g: printf ("g"); break;
case long_enum_value_name_h: printf ("h"); break;
case long_enum_value_name_i: printf ("i"); break;
default: printf ("?"); break;
}
Here's how I'd type this:
case long_enum_value_name_a: printf ("a"); break;
c M-/ DEL b : p M-/ ("b"); b M-/
c M-/ DEL c : p M-/ ("c"); b M-/
c M-/ M-/ DEL d : p M-/ ("d"); b M-/
etc. (And if the series are indeed longer than a couple of lines, a
rare case indeed, then a keyboard macro is in order.)