2013-03-18 8 views
5

Ieri ho scoperto la funzione Format Source in Delphi e mi ha risparmiato un sacco di tempo.Delphi Automatic Format Source corrompe le procedure anonime

Tuttavia, ho scoperto che corrompe il layout delle procedure anonime. C'è un'impostazione che può migliorare questo risultato?

Per esempio, se ho il seguente codice:

procedure TServerThread.cbUpdateStreamProgBar(Precentage: Integer); 
begin 
    Synchronize(
    procedure 
    begin 
     FrmMain.StreamProgressBar.StepBy(Precentage); 
    end); 
end; 

Dopo aver auto-formato del codice sorgente, è compressa come segue:

procedure TServerThread.cbUpdateStreamProgBar(Precentage: Integer); 
begin 
    Synchronize(procedure begin FrmMain.StreamProgressBar.StepBy 
    (Precentage); end); 
end; 

Come posso evitare questo?

+1

Non sono sicuro che sia possibile, ci sono molte funzionalità linguistiche a cui l'editor IDE non è realmente "consapevole", ma aspettiamo che gli altri rispondano a questo, mi interessa anche ... non dimenticarti di aggiungi il tag della versione delphi a questa domanda. – ComputerSaysNo

+1

@ComputerSaysNo Grazie per il supporto e io stesso spero davvero che ci sia una soluzione a questo. (spero solo che non sia una utility di terze parti) –

+0

AFAIK questa è una funzionalità che inizia con XE3 –

risposta

2

È necessario eseguire l'aggiornamento a una versione più recente di Delphi, come indicato nei commenti. Il formattatore di origine automatico in XE2 è ok per i metodi anonimi.

In alternativa è possibile provare lo Experimental GExperts IDE PlugIn. Se non viene formattato correttamente, c'è un codice sorgente per aggiungere il tuo stile.

Vedere anche Delphi code formatter.


Aggiornamento, venendo a pensarci, c'è una soluzione. Un po 'noioso però. Selezionando le parti della fonte, solo la selezione verrà formattata premendo ctrl + D.

+0

Sì, purtroppo questo è un bug noto nel formattatore di codice di Delphi XE che non verrà risolto se non eliminando XE e passando a XE2 o XE3. –