Colapso if-then-else em editor de código (Delphi 2007)
Pergunta
De vez em quando eu estou editando alguns long par de declarações if-then-else (ou pior, aninhada if-then-else), como, por exemplo, esta:
if A < B then
begin
DoSomething;
DoSomethingElse;
{...and more statements going on and on and on...}
FinallyWrapUpThisBit;
end
else
begin
DoThis;
DoThat;
{...and more statements going on and on and on...}
FinallyWrapUpThisBit;
end;
... e eu encontro-me querer "colapso" o par começar primeiro-end, para fazer subir a parte inferior "else" (geralmente porque eu estou me referindo a algo acima da statemnent if-then. Talvez por isso gostaria apenas de dizer "começar ..." e tem [+} sinal para a esquerda dele para expandi-lo novamente.
Eu explorei os "dobrar" as funções no IDE, mas nenhum dos comandos parecem fazer isso. Parece que o meu CodeRush para o meu velho D6 fez isso, mas eu poderia estar imaginando coisas. (Eu tenho uma imaginação muito ativa ...).
Algum dos IDE plug-ins como Castalia (ou algum outro) fazer isso?
Solução
Com Delphi planície fora da caixa, você teria que cercam seu fim começar ... com
{$region 'begin...end'}
....
{$endregion}
que pode ser feito através de um código de modelo ...
Eu me lembro Castalia para o colorido agradável visualização de blocos de código (BEGIN..END), mas eu não me lembro se era dobrável.
Outras dicas
Use as ferramentas de refatoração para mover o código dos desvios condicionais em funções separadas. Então você não vai precisar de dobrar qualquer coisa. Você também pode achar que você pode mesclar código que é comum aos dois ramos, como a chamada para FinallyWrapUpThisBit
.
Outra grande ajudante aqui seria CNPack . É um assistente que instala em Delphi e colorir seus pares begin / end, tornando muito mais fácil de seguir o código. Ele não é exatamente fazer dobramento de código, para que você precisa para usar o {$ REGIÃO} {$ ENDREGION} tags.