Как выровнять имена членов класса C ++ в одном столбце в Emacs? - PullRequest
6 голосов
/ 13 мая 2010

Я хотел бы выровнять все члены класса C ++ имена (не путать с типами членов) в одном столбце.

Давайте посмотрим на пример того, что мы имеем на входе:

class Foo
{
public:
    void   method1( );
    int                  method2( ); 
    const Bar *        method3( ) const; 
protected:
    float    m_member;
};

и вот что мы хотели бы получить в конце:

class Foo
{
public:
    void           method1( );
    int            method2( ); 
    const Bar *    method3( ) const; 
protected:
    float          m_member;
};

Таким образом, самое длинное объявление типа члена определяет столбец, с которым будут выровнены имена членов класса. Как я могу выполнить такое преобразование в Emacs?

1 Ответ

6 голосов
/ 13 мая 2010

Выберите регион с объявлениями метода

M-x align-regexp

Введите строку [^ ]+\((\|;\) и нажмите Enter

Отредактировано для добавления ; в соответствие, которое также выравнивает переменную-член.

...