![]() |
Code-Formatierung
Kennt ihr das Problem ?
Ihr wollt ein Code-Fragment in die DP stellen. Schnell gemacht 1) Text markieren 2) Ctrl-C 3) Zur DP wechseln 4) Ctrl-V 5) Delphi-Code klicken 6) Ärgern und "zu Fuß" Tabs entfernen und durch entsprechende Blanks ersetzen. Das nachstehende kurze Programm ersetzt in einem im Clipboard stehenden Text Tabs durch Blanks und stellt den geänderten Text wieder ins Clipbord. Bevor jetzt jemand mit StringReplace etc. kommt : Die Tabs werden so durch Blanks ersetzt, daß der folgende Text an der nächsten definierten Tab-Position steht. Bei mir ist für Tabstops 3 eingestellt, andere bevorzugen 2 oder noch was anderes. Dies kann durch ändern der Konstanten "tablen" eingestellt werden. In Zukunft wird in obigen Ablauf Punkt 3.5 ReplaceTabs klicken eingefügt, dafür entfällt der lästige Punkt 6. Vielleicht kann der eine oder andere das auch gebrauchen.
Delphi-Quellcode:
program ReplaceTabs;
{$APPTYPE CONSOLE} uses SysUtils, ClipBrd; const tablen=3; FUNCTION Replace(const s:string):string; var ps,pr:PChar; len:integer; begin SetLength(result,Length(s)*tablen); if s='' then exit; ps:=PChar(s); pr:=pChar(result); len:=0; repeat case ps^ of #9 : begin len:=tablen-len mod tablen; while len>0 do begin pr^:=' '; inc(pr); dec(len); end; end; #10,#13 : begin pr^:=ps^; inc(pr); len:=0; end; else begin pr^:=ps^; inc(pr); inc(len); end; end; inc(ps); until ps^=#0; pr^:=#0; SetLength(result,Integer(pr)-Integer(PChar(s))); end; begin with ClipBoard do if HasFormat(1) then AsText:=Replace(AsText); end. |
Re: Code-Formatierung
Zitat:
Zitat:
Zum Einrücken in Delphi gibt es die Tasten Strg + Shift + U/I |
Re: Code-Formatierung
Zitat:
Du drückst immer 3 Tasten (statt einer). Das nenne ich optimal arbeiten. |
Re: Code-Formatierung
Vielleicht haben wir die Editor-Einstellungen ja auch nur richtig gesetzt :mrgreen:
Optionen - Editor-Optionen - Quelloptionen (Delphi 2010) Da kann man das Verhalten (mit/ohne TAB) einstellen |
Re: Code-Formatierung
Zitat:
Deshalb : kannst Du mir erklären, was man da genau einstellen kann ? Die Optionen, die Delphi 2005 bietet (vorsichtig gesagt, die, die ich kenne) bieten mir keine zufriedenstellenden Möglichkeiten. Und offensichtlich haben diverse andere User das gleiche Problem. |
Re: Code-Formatierung
Wenn ich nicht irre, empfiehlt auch der Styleguide Einrückung mittels 2x Leerzeichen pro Blocktiefe, und Vermeidung von Tabs in Delphi Quellcode. Und sogar mein Delphi 7 ist intelligent genug, den Cursor auf die zuletzt eingerückte Spalte zu setzen wenn ich die vorige mit einem beherzeten Enter abschließe - also nix mit vielen Tasten drücken :)
|
Re: Code-Formatierung
Zitat:
|
Re: Code-Formatierung
Zitat:
Auch bei mir springt der Cursor nach Enter auf die letzte Einrückung. Und genau das ist eines der Probleme. Zum Beispiel, wenn ich hinter einem begin Enter drücke, springt er unter das b, ich hätte ihn aber lieber unter dem i, also drücke ich die Tab-Taste, alternativ 3 x Blank. |
Re: Code-Formatierung
Zitat:
|
Re: Code-Formatierung
Delphi 7:
Tools > Editor-Optionen > Quelloptionen > Einzug mit Tabs > deaktiviert > Tab-Zeichen anzeigen > vielleicht mal aktivieren |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz