emacs public/protected/private label indentation of C++ header file not working for zero offset

Posted by murrekatt on Stack Overflow See other posts from Stack Overflow or by murrekatt
Published on 2010-12-20T13:45:32Z Indexed on 2010/12/21 10:54 UTC
Read the original article Hit count: 290

Filed under:
|
|

I cannot get zero offset for some things for my C++ header files in emacs even if I have it defined in my .emacs file.

The header file below shows a class definition inside two namespaces and most importantly the public keyword I would like to have with zero offset like below.

namespace n1
{
namespace n2
{

class SomeClass
{
public: // this line with zero offset
    SomeClass();
    ...
};

} // n2
} // n2

In my .emacs file I have added label like this:

(c-set-offset 'label 0)

I used Ctrl-C Ctrl-S to find out what to modify. Other offsets I have defined in the .emacs file are working fine and also values other than 0 work for label.

When I set offset 0 for label it turns out to be 1 when hitting tab for that line. This is strange and looks like something else is overriding or adding a minimum of 1.

Can anyone explain how I can achieve what I want and maybe also an explanation what is happening currently?

Phew, this was my first question here. Thanks :)

© Stack Overflow or respective owner

Related posts about c++

Related posts about emacs