Como forçar o Emacs a redefinir o recuo?

0

Eu quero que o emacs redefina automaticamente seu nível de recuo para 0 em um ponto específico em um arquivo.

Por exemplo: Como eu tenho namespaces nested-nested -..., no C ++ - Files, eu gostaria que não envelasse todo o corpo dentro dos namespaces.

#include <vector>    
namespace qw {
namespace impl {

using std::vector;

class index_impl {
    vector<string> entries;
public:
    void add(const string &normalized, const string& original);
    string getBestMatch(const string& normalized) const;
};

} // namespace impl_multimap
} // namespace qw

Isso só é útil, é claro, nesses casos, quando há principalmente uma classe para implementar dentro dos namespaces aninhados. Nos arquivos de cabeçalho isso seria confuso. Então eu acho que a melhor solução seria ter um comentário especial ou algo assim.

#include <vector>    
namespace qw {
namespace impl {
// -*- indent: 0 -*-

using std::vector;
...

Qualquer outra ideia também seria boa.

    
por towi 21.08.2016 / 14:51

1 resposta

0

Original Fonte .

Por favor coloque esta linha no seu arquivo emacs:

(c-set-offset 'substatement-open 0)

Método de detalhes:

  1. Vá para a linha que você deseja recuar

  2. Por favor, digite C-C C-O (não zero) e pressione Enter

  3. Agora digite "0" e pressione Enter sem recuo extra

  4. Por favor, digite Tab para reindentar a linha

  5. O futuro "{" terá a configuração correta da guia, até você reiniciar o emacs.

Além disso, você pode colocar isso no seu arquivo emacs:

(c-set-offset 'SYNTACTIC-SYMBOL OFFSET)

para ver o código lisp.

Aprenda a formatar o código C ++ fora do emacs aqui .

    
por 21.08.2016 / 15:15