Ver código com recuo diferente do que foi salvo no disco


13

Trabalho em alguns projetos com estilos de indentação que acho realmente irritantes. Gostaria de visualizar o código com um certo estilo de recuo, mas sempre salve em disco com o estilo de recuo prescrito.

Especificamente, eu gosto do estilo padrão de recuo do emacs em argumentos de função de várias linhas ...

void foo(int a, int b,
         string c)

Mas o projeto é apenas tabulação, recuo único em tudo ...

void foo(int a, int b,
    string c)

Posso ver o primeiro caso, mas compartilhar o segundo?


Que tal: desativar o modo de auto-revert, em seguida, executar um comando (por exemplo, astyle) que formata o arquivo para o estilo da sua equipe em suaafter-save-hook
nanny

você considerou um gancho de formatação no nível de controle de versão, por exemplo, gancho de pré-confirmação do git?
erjoalgo

Respostas:


1

Uma abordagem óbvia para isso seria

  • recuar uma cópia do buffer usando c-mode; e depois
  • coloque o recuo da cópia como propriedades de exibição no espaço de recuo no buffer original.

Nota 1: Implementar isso, mantendo a capacidade de editar o buffer, pode ser um pesadelo; portanto, eu faria o buffer somente leitura.
Nota 2: As propriedades do texto são muito mais rápidas que as sobreposições, portanto, eu as usaria. A menos que, no caso ímpar, em que o recuo do buffer original seja 0 e c-modenão seja.


Isso pode ser feito com propriedades de texto adicionando palavras-chave adicionais de bloqueio de fonte. Estou mais preocupado em descobrir como o recuo deve ser exibido.
wasamasa
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.