No Eclipse, eu posso clicar, CTRL + SHIFT + F
que não apenas corrige o recuo, mas também o espaço em branco (por exemplo: c=a +b ;
está corrigido c = a + b;
) e o comprimento da linha. Estou procurando uma ferramenta semelhante para o Emacs. Tudo o que sei é C-x h TAB
que corrige o recuo, mas nada mais. Você conhece alguma maneira automática de formatar completamente um arquivo de origem (espacially C / C ++) no Emacs?
indentation
whitespace
formatting
Monkey Supersonic
fonte
fonte
init.el
. Em seguida, vincule o comando a uma chave comoC-c i
e use-o sempre que desejar recuar sem o cursor movido para outro lugar.Respostas:
Você pode usar ClangFormat para conseguir isso. Após instalar a
clang-format
ferramenta, você pode usarclang-format.el
para executar as ações apropriadas do emacs.clang-format.el
também está disponível no MELPA . Os comandos do emacs fornecidos sãoclang-format-buffer
eclang-format-region
você pode vincular conforme necessário. Observe que você pode personalizar as opções de formatação usando um.clang-format
arquivo localizado em um diretório ancestral.fonte
(define-key c-mode-base-map (kbd "C-S-f") 'clang-format-region)
. Nas versões recentesclang-format
também suporta alguns outros idiomas, como Javascript e Java, consulte LanguageKind nesta página: clang.llvm.org/docs/ClangFormatStyleOptions.htmlList<pair<int, int> >
->List<pair<int, int>> //Error!
Cpp03
para corrigir esse problema.