-
Forum: Software-Projekte der Mitglieder
by stahli,
31. Okt 2021
Die bedingten Kompilierungen ziehen mir noch den Zahn. :-(
Jetzt wollte ich mich endlich mal dem Problem der auf allen Wegen aufgehenden begin...ends widmen und schon stellt sich ein anderes Problem. Oder doch nicht?
Die Vererbungen und Verwendung von Interfaces in Klassendeklarationen soll der Optimizer berücksichtigen und entsprechenden Code vervollständigen. Dazu schlägt er auch in...
-
Forum: Software-Projekte der Mitglieder
by stahli,
23. Okt 2021
Was es doch alles gibt in der Welt :shock:
Aber für meine Belange sollte das nicht störend sein, soweit ich das sehe.
Ich werde in den $If... Zweigen einfach nur alle Wege einzeln durchgehen, einrücken und auf die notwendigen "end"s prüfen.
Wenn die Bedingungen dabei für spätere Prüfungen umgestellt werden, sollte das nicht wirklich störend sein.
Es werden also alle Möglichkeiten...
-
Forum: Software-Projekte der Mitglieder
by stahli,
23. Okt 2021
Mein nächster Punkt ist die bedingte Compilierung.
Hier soll geprüft werden, ob alle Varianten "aufgehen", also dass zumindest begin...ends ordentlich abgeschlossen werden.
Die Einrückungen von {$IFDEF ...} würde ich immer am Code orientieren. {$ELSE} und {$INDIF} sollen immer auf der gleichen Ebene stehen.
Mehrfache Verschachtelungen sollen so erkennbar sein.
Ich selbst habe damit noch...
-
Forum: Software-Projekte der Mitglieder
by stahli,
3. Okt 2021
Ich habe jetzt eine Formatierungssperre eingebaut.
Als Kriterium habe ich existierende "in" in den Uses-Klauseln festgelegt.
Das finde ich sicherer, als auf bestimmte Dateiendungen zu prüfen.
-
Forum: Software-Projekte der Mitglieder
by stahli,
3. Okt 2021
Oha! :shock: Vielen Dank!
Dann schließe ich die Formatierung von Projektdateien wohl doch besser gleich komplett aus!
-
Forum: Software-Projekte der Mitglieder
by stahli,
3. Okt 2021
Ich hatte jetzt erst mal keine Probleme festgestellt.
Aber danke für die Info!
Die Formatierung der Projektdateien ist natürlich generell recht überflüssig.
Evtl. Kann ich das auch optional komplett ausschließen oder nochmal etwas anpassen, falls es konkretes Probleme gibt.
-
Forum: Software-Projekte der Mitglieder
by stahli,
2. Okt 2021
Kleiner Nebeneffekt...
Zwar muss man die automatisch erzeugten Units natürlich nicht formatieren, aber mir gefällt das so auf jeden Fall besser und ich finde es übersichtlicher. :-)
-
Forum: Software-Projekte der Mitglieder
by stahli,
19. Sep 2021
Der Umzug nach D.11 und Anpassung des Installers gingen bis hierher recht problemlos. :-)
-
Forum: Software-Projekte der Mitglieder
by stahli,
18. Sep 2021
Ok danke. Das muss ich dann mal später genauer untersuchen wenn es mir überhaupt mal gelingen sollte, ein Refactoring über die OTA anzustoßen.
In dem Fall könnte ich über eine eine einzelne Anweisung wohl innerhalb eines Projektes gleich zeitig ein Property eines Interfaces umbenennen incl. automatisch Getter und Stter anpassen und die Änderung auch in alle benutzenden Klassen durchschleifen...
-
Forum: Software-Projekte der Mitglieder
by stahli,
18. Sep 2021
Jetzt werden auch innerhalb der IDE Interfaces in anderen Units gefunden und verarbeitet. :-)
Anbei mal ein Auszug, wie eine vorher recht wüste Unit nach dem Optimieren aussieht.
(Die Performance passt noch nicht, aber da kann ich sicher noch etwas rausholen.)
-
Forum: Software-Projekte der Mitglieder
by stahli,
14. Sep 2021
Mit meiner Frage meinte ich eher das Refactoring.
Dazu muss der Compiler die verschiedenen binären Objekte (z.B. eine globale Variable "X") kennen und alle Codestellen in allen Units, die diese Variable benutzen.
Wenn ich ein Refactoring aufrufe und "X" in "XX" umbenenne, dürfte das nicht möglich sein, wenn das Projekt nicht kompiliert bzw. kompilierbar ist...
Ich denke mal, das dürfte so...
-
Forum: Software-Projekte der Mitglieder
by stahli,
14. Sep 2021
Die Optionen kannte ich so jetzt gar nicht.
Aber das würde nicht auf Klassenmember o.ä. angewendet - oder?
(Ich kann jetzt gar nicht konkret sagen, wann Delphi Schreibweisen korrigiert und wann nicht.)
... Panel1.font.name -> Panel1.Font.Name
Dazu müsste ja immer die Deklaration gesucht und die dortige Schreibweise abgeglichen werden.
Nach meinem Verständnis muss dazu das Projekt...
-
Forum: Software-Projekte der Mitglieder
by stahli,
14. Sep 2021
Um alle Verwendungen von Bezeichnern genau an die Groß- und Kleinschreibung wie bei der Deklaration anzupassen, bräuchte man definitiv ein richtiges Refactoring (das also die Bezüge nach der Kompilierung kennt).
Das habe ich bisher nicht. Ich nutze nur den reinen Klartext.
Aber ich würde gern später man auch Umbenennungen ermöglichen wie z.B:
IPerson = interface
function ...
-
Forum: Software-Projekte der Mitglieder
by stahli,
14. Sep 2021
Das Video steht auf "nicht gelistet", ist also öffentlich aber man braucht den Link.
(ist mehr was für zwischendurch und unter uns)
Groß- und Kleinschreibung von Schlüsselwörtern kann ich problemlos regeln (auch erstes Zeichen groß, Rest klein).
Aber mal später, wenn es dann an diverse Optionen geht.
Für Variablen-, Typen- und Methodenbezeichnungen wäre das technisch bei den...
-
Forum: Software-Projekte der Mitglieder
by stahli,
13. Sep 2021
Ich will mal wieder einen aktuellen Stand vorstellen: https://youtu.be/azP8w6g0i18
Zwar war ich schon mal etwa so weit, habe aber nochmal auf einen komplett anderen Ansatz umgestellt, da der vorherige mit auskommentiertem Code bei den ganzen Umsortierungen und Vervollständigungen nicht gut zurecht kam. Jetzt sollte ich da besser weiter kommen.
Die Suche läuft jetzt in einem Task, so dass...
-
Forum: Software-Projekte der Mitglieder
by stahli,
8. Jan 2021
Ja sicherlich. Aber ich möchte ja kein Ärgernis verursachen.
Das Tool soll ja helfen und keinen zusätzlichen Aufwand bringen.
Insofern muss es erst richtig ausgereift sein, ehe ich es auf die Allgemeinheit loslasse.
Derzeit muss man eben noch damit rechnen, dass sich doch mal noch hier und da Probleme ergeben können.
Wer das in Kauf nehmen will und grundsätzliche Idee mit unterstützen...
-
Forum: Software-Projekte der Mitglieder
by stahli,
8. Jan 2021
@Moombas
Sorry, da hatte ich mich unklar ausgedrückt.
Mir ging es jetzt um die Einrückungen im Zusammenhang mit den bedingten Kompilierungen.
Also die Blöcke
{$IFDEF level2}
...
{$ELSE}
...
-
Forum: Software-Projekte der Mitglieder
by stahli,
8. Jan 2021
Danke Dir trotzdem.
Ja, mit dem Aufwand hätte ich so auch nicht gerechnet, wollte aber dann trotzdem weiter dran bleiben.
Aber die Klassen- und Interfacevervollständigung war genau das, was mir immer bei der Arbeit gefehlt hat.
Die anderen Dinge waren dann eher Beiwerk u d haben sich zusätzlich ergeben.
Videos finde ich persönlich immer die beste Art, etwas zu erklären oder zu zeigen....
-
Forum: Software-Projekte der Mitglieder
by stahli,
8. Jan 2021
Ich habe mit der bedingten Formatierung selbst keine Erfahrungen.
Man muss dazu die Bedingungen (Flags) festlegen, um dem Compiler zu sagen, welchen Block er compilieren soll.
In dem Beispiel entweder Sleep(1) oder Sleep(2).
Das Dumme in dem Beispiel ist, dass in beiden Bereichen ein "end;" steht.
Der Compiler nimmt dann das erste end oder das zweite end. Insofern ist für ihn alles ok.
Mein...
-
Forum: Software-Projekte der Mitglieder
by stahli,
8. Jan 2021
@Moombas
Das Problem in dem Beispiel sind die Bereiche im $IFDEF.
Das war mal ein Beispiel, das ich irgendwo gefunden habe.
Wenn man das "end" einmal hinter das erste $ENDIF schreiben würde, wäre das wohl korrekt und nachvollziehbarer.
Der Compiler kommt aber so mit dem Code auch klar und der Formatierer sollt das entsprechend auch.
Deswegen suche ich auch für diese Form eine Lösung.
...
-
Forum: Software-Projekte der Mitglieder
by stahli,
7. Jan 2021
Hallo zusammen,
da bisher keinerlei Reaktion auf meine Mitteilung und Videos (15 Views auf die Zusammenfassung gab es) erfolgt ist, will ich hier mal pushen.
Vielleicht ist es ja auch etwas untergegangen auf Grund der Feiertage...
Gebt mir doch mal gern eine Rückmeldung, auch wenn sie skeptisch oder negativ ausfällt.
Haltet Ihr das Tool für unnötig oder habt Ihr das Anliegen nicht...
-
Forum: Software-Projekte der Mitglieder
by stahli,
25. Dez 2020
So, es ist vollbracht! :-)
Ok, zumindest so weit, dass es 3-4 Leute schon mal als Beta anschauen könnten.
Meldet Euch, wenn Ihr Interesse habt.
Voraussetzungen sind derzeit:
- immer aktuellste Delphi-Version
- akzeptieren des hellen Designs bei den Suchformularen
- akzeptieren von Codeveränderungen (möglichst kein Einsatz oder Akzeptanz trotz Versionierungssystem).
-
Forum: Software-Projekte der Mitglieder
by stahli,
27. Nov 2020
Ich habe mal einen Eintrag erstellt: https://quality.embarcadero.com/browse/RSP-31762
(Ob das verständlich ist, kann ich nicht garantieren.)
-
Forum: Software-Projekte der Mitglieder
by stahli,
25. Nov 2020
Einen Teil habe ich geschafft.
Ungedockte Formulare kann man jetzt auf beliebigen Monitoren platzieren (und auch an Monitorränder anheften).
Eindocken geht natürlich auch noch.
Standardmäßig werden dockbare Formulare offenbar ungedockt nur auf dem Monitor geöffnet, auf dem die IDE geöffnet ist.
An verschiedenen Stellen speichere ich daher die Suchformular-Positionen in eine Ini bzw. stelle...
-
Forum: Software-Projekte der Mitglieder
by stahli,
24. Nov 2020
Ich kann es mal versuchen. Aber das ist deutsch schon schwer zu erklären - englisch noch schwieriger (für mich). :oops: