On Tue, 12 Apr 2005 20:58:12 +0000, Alan Mackenzie wrote:
> You could actually configure CC Mode only to do auto-newline on certain
> types of brace. For example, on one of these braces, type <CR> before it
> to get it onto a line of its own. Then do C-c C-s to get its "syntactic
> context". You'll get back something like "((bracelist-open 1523))".
> Then make sure c-hanging-braces-alist looks something like this:
>
> (setq c-hanging-braces-alist '((bracelist-open)
> (bracelist-close)))
>
> This will stop auto-newlines going in in these particular circumstances.
> (Note: auto-newlines are put on all braces apart from those in the list.
> If you wanted an auto-newline only _after_ a statement-block `{' (say,
> for Kernighan & Ritchie formatting) you'd have something like this:
>
> (setq c-hanging-braces-alist '((bracelist-open)
> (bracelist-close)
> (substatement-open after)))
>
> ).
Thanks for the info. I'll do that and see how close I'll get to
perfection. Currently my environment suits me so well that I rarely do
hand formatting of code anymore. It is great to be able to just type in,
and see your code formatted exactly as you want. :-)
BTW, is there an easy way to distinguish between the bracelist-close of
the structure initializer from the bracelist-close of the array
initializer in an array of structure case? What I want is something like:
struct_type_t test[] = {
{ &var1, sizeof(var1) },
{ &var2, sizeof(var2) }
};
What you suggest would end up with
struct_type_t test[] = {
{ &var1, sizeof(var1) },
{ &var2, sizeof(var2) } };
Which requires one manual correction. :-)
Cheers,
vedat
_______________________________________________
Help-gnu-emacs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gnu-emacs