JEDI Code Format Was macht es Der Formatierer kann alle Aspekte der Delphi Object Pascal Quellcode Formatierung, einschließlich Einrückung, Abstand und Kapitalisierung zu standardisieren. Wenn Sie noch nicht sicher sind, sehen Sie die Beispiele für die Programm-Eingabe und Ausgabe. Es funktioniert auf Delphi und Delphi Syntax. Warum ein Code-Formatierer verwenden Es ist nützlich, wenn Sie Code übernehmen und nicht wie die ursprüngliche Formatierung. Es ist nützlich, wenn Sie versuchen, Code aus mehreren Quellen zu einem Standard zu bringen. Ein Mensch kann immer besser formatieren als ein Programm, aber in vielen Fällen sind sie nicht. Wenn du ein Stück Codes findest, das nervig oder schwer zu lesen ist, kann dieses Programm dir viel Zeit sparen. Auf deinem eigenen Code kann es deine Fehler fangen und sogar irgendwelche banalen Aufgaben automatisieren, die dich vielleicht verärgert haben, aber du hast dich bis jetzt nicht belästigt (z. B. um Tabs auf Räume zu verteilen, Einbuchtung, Abstand und Kapitalisierung zu standardisieren, global eine Variable oder Prozedur zu ändern Name, global entfernen redundante Einheit aus allen Verwendungen Klauseln, oder sogar den MPL-Lizenz-Kommentar in alle Einheiten einfügen). Wie soll ich meine Delphi-Programme formatieren? Du musst deine Delphi-Programme nach diesen Standardeinstellungen definieren, d. h. wie Borland vorschlägt. Lizenz und Haftungsausschluss: Dieses Programm ist kostenlos und Open-Source. Ab Version 2.37 ist JCF unter einer Dual-Lizenz - Mozilla Public License (MPL) 1.1 oder GPL 2.0 oder höher. Die ursprüngliche Lizenz war die MPL - ich wählte die MPL-Open-Source-Lizenz auf Anregung der Delphi-JEDI-Gruppe. Die GPL wurde auf Antrag der Mitglieder des Lararus-Projekts hinzugefügt. Die diese Lizenz verwenden und in JCF-Code verknüpfen möchten. Wenn Sie dieses Programm in irgendeiner Weise verbessern (Bugfix, neue Funktion, besserer Algorithmus, was auch immer), würde ich es schätzen, wenn Sie diese Verbesserungen zurück zu mir für mögliche Einbeziehung in eine zukünftige Version senden. Haftungsausschluss: Dieses Programm kann Fehler haben oder noch nicht vollständig seinen Design-Ziele entsprechen. Obwohl es ziemlich gut getestet wurde und mit etwas Erfolg verwendet wird, kann ich keine Garantien machen. Wenn Sie sich um die Qualität dieses Programms kümmern, senden Sie in Fehlerberichte. Ich empfehle die Verwendung eines Quellcodeverwaltungssystems wie Subversion. Microsoft TFS CVS TeamSource oder dergleichen. Denken Sie daran, Quelle Kontrolle ist wie Zahnseide - Sie müssen nicht Zahnseide alle Ihre Zähne - nur diejenigen, die Sie behalten wollen. Wenn du noch kein solches Tool benutzt hast, mache bitte Backups, bevor du den Formatierer benutzt. So installieren Sie diese Version kann als Quelle oder als ausführbare Datei heruntergeladen werden. Installiere die ausführbaren Dateien wie folgt: Laden Sie die ausführbaren Programme herunter. Und entpacke in ein geeignetes Verzeichnis. Platziere die Datei JCF2Settings. cfg in dein Windows-Verzeichnis. Führen Sie die gui JcfNotepad. exe aus, um mit Dateien zu experimentieren. Führen Sie das GUI-Programm JcfGui. exe, um Dateien aus dem Gui zu formatieren - das ist gut, wenn Sie ein Verzeichnis oder Verzeichnis Baum von Delphi-Dateien, die Sie formatieren möchten. Führen Sie das Kommandozeilenprogramm jcf. exe aus, wenn Sie eine Batchdatei erstellen oder Sie sind masochistisch. Verwenden Sie das IDE-Plugin, um Dateien oder Projekte zu formatieren, während Sie in der Delphi IDE arbeiten. Der Delphi IDE Pluggin kann für Delphi 7 wie folgt installiert werden. Alle Pakete können installiert werden, indem Sie den Menüpunkt ComponentInstall Pakete auswählen und auf die Schaltfläche Hinzufügen klicken. Installiere das JCL-Design-Zeitpaket in Delphi. Installiere die JVCL-Design-Zeit-Steuerelemente in Delphi. Installiere die JcfIde7.bpl Lesen Sie die Gebrauchsanweisung für den JCF IDE Pluggin. Installiere die Quelle wie folgt: Holen Sie sich die JCL-Code-Bibliothek. Installieren Sie die Design-Zeit-Pakete. Laden, bauen und installieren Sie die JVCL-Komponenten. Für den Testkabelbaum benötigen Sie auch DUnit. Laden Sie die Quelle herunter. Und entpacke in ein geeignetes Verzeichnis. Starten Sie Delphi. Öffnen Sie die Code-Formatierer-Programmgruppe in JediCodeFormat. bpg Kompilieren und ausführen. Vorsicht, viel Spaß Dinge, die mit Compilation schief gehen können: Das Projekt TestProject. dpr ist standardmäßig geöffnet und dieses Projekt ist voller Warnungen. Denken Sie daran, es ist nur Test-Code für den Formatierer zu arbeiten, und ist nicht beabsichtigt, ausgeführt werden. Delphi öffnet das letzte Projekt in einer Gruppe automatisch, und ich wünschte, Borland würde das ändern. TestProject ist das wichtigste der Projekte. Verwenden Sie den Menüpunkt ViewProject Manager und öffnen Sie stattdessen das erste Projekt, JediCodeFormat. dpr. Manche Dateien können nicht gefunden werden (Sie erhalten einen Fehler wie Fatal Error JediCodeFormat. dpr (142): Datei nicht gefunden: JclStrings. dcu Die JCF-Dateien und JediComponents-Dateien sind nicht in dieser Zip-Datei enthalten Verschiedene Orte auf Ihrer Festplatte Ändern Sie die Pfade in den Dateien JediCodeFormat. dpr, Jcf. dpr und Jcfide. dpk. Die Dateien sind schreibgeschützt markiert, so dass sie aus dem Quellsteuerungssystem kommen Ich habe die Möglichkeit, Delphi zu konfigurieren, um die. dcu-Dateien und ausführbaren Dateien in ein Ausgabedokument zu schreiben. Natürlich ist das Verzeichnis bei der Verteilung der Quelle leer. WinZip speichert keine leeren Verzeichnisse, also kann es sein Nach dem Entpacken gibt es noch keine Dummy-Datei namens Delme. tmp in diesem Verzeichnis. Wenn Sie diese Datei sehen, hat es bereits seinen Zweck gedient und kann entfernt werden. Machen Sie ein Ausgabe-Verzeichnis unter Ihrem CodeFormat-Verzeichnis oder löschen Sie (Oder ändern) diese Einstellung in Delphis ProjectOptionsDirectoriesConditionals Einstellungen. Jdfide. dpk gibt viele Warnungen über implizit importierte Einheiten. Ja tut es. Es ist nicht ernst. Alle Projekte außer dem ersten werden überhaupt nicht gebaut, weil Dateien, die nicht gefunden werden, und die Dateien sind Teil von JCF. Vergewissern Sie sich, dass Sie ein Ausgabeverzeichnis haben und dass es die DCU-Dateien enthält und dass es sich um den Projektpfad handelt. Beim Kompilieren aller Projekte, mache ein Build alle nicht ein Kompilieren alle, da es ein kleines Bit Code hinter IFDEF Makros, um die IDE-Plugin anders als die GUI ausführbare Datei. Das Kompilieren ohne Umbau ist nicht empfindlich auf die Tatsache, dass diese Einheiten durch veränderte Projekt neu kompiliert werden müssen. Wie melde ich einen Fehler. Melden Sie hier den Fehler. Geben Sie einen Testfall und (optional) ein Fix an die Quelle, und sagen Sie mir, welche wenn diese Kategorien, von Schwere geordnet, dass Sie denken, dass der Fehler fällt: Programmfehler: Das Programm stürzt ab (Zugriffsverletzung, Assertionsfehler usw.) Oder Abbrüche, wenn Sie Ihren Testfall gegeben haben. Schlechte Ausgabe: Das Programm gibt Ausgabe, die nicht kompiliert, wenn Sie Ihren Testfall gegeben haben. Lausige Formatierung: Die Ausgabe kompiliert aber sieht schlecht aus. Geben Sie ein Beispiel für Eingabecode, der schlecht formatiert ist, und vorzugsweise ein Update. Nicht-Standard-Formatierung: Die Ausgabe ist lesbar, aber nicht mit den vereinbarten Standards konform. Geben Sie ein Beispiel mit Ihrem Testfall von dem, was Sie denken, dass die Ausgabe sein sollte, und vorzugsweise eine Verlegenheit. Fehlende Option: Die Formatierung, die Sie wollen, ist nicht Standard, aber es ist, wie Sie es tun und der Formatierer unterstützt es nicht. Wenn Sie nicht geben eine Fix, die Ihre Lieblings-Option fügt, geben Sie ein Beispiel mit Ihrem Testfall von dem, was Sie denken, dass die Ausgabe sein sollte. Was zu tun ist, wenn es dir nicht gefällt. Breath. Beruhigen. Denken Sie daran, dass ich dieses Programm kostenlos und ohne Garantien anbiete. Denken Sie daran, dass ich Sie nicht dazu gebracht habe, es zu benutzen. Denken Sie daran, dass ich stark vorgeschlagen, dass Sie Backups machen. Konstruktive Vorschläge, vor allem solche mit Code, werden freundlich behandelt. Flammen werden gelöscht. Ich hatte noch keine Flammen für dieses Programm, und Id mag es so halten. Wo ist das Programm gehen Dieses Programm ist meistens im Wartungsmodus jetzt - ich beheben Fehler, verfolgen Änderungen in Delphi Versionen und Sprachsyntax und veröffentlichen ein Update jeden Monat oder zwei. Das Ziel für Version 2.0 ist, dass das Programm keine Bugs haben und generieren, die mit offiziellen Code-Formatierungsstandards kompatibel sind (und Optionen für andere Stile haben). Es sollte dem Benutzer erlauben, alles zu konfigurieren, was konfiguriert werden muss, und es sollte den Benutzer nicht mit unnötigen Optionen überladen. Es sollte auch in der Reihenfolge der Priorität: lesbare Quelle, eine leicht erweiterbare und gut dokumentierte Architektur, und sollte schnell genug laufen. Kann ich mich mitmachen Ja, bitte machen Sie. Melde einen technischen Fehler. Fordern Sie eine Funktion an. Laden Sie die Quelle herunter, kompilieren Sie sie und beheben Sie einen Fehler oder fügen Sie eine Funktion hinzu. Wenn Ihr Zusatz Sound ist, wird es in die nächste Version aufgenommen und Ihr Name wird aufgeführt. Wenn du zur Sourceforge-Projektentwicklerliste hinzugefügt werden möchtest, dann mach das zuerst, dann gut reden Ich bin nicht daran interessiert, Menschen die Projekte Entwickler Liste nur, weil sie wollen den Status des Seins dort. Ich bin daran interessiert, diesen Status den Leuten zu geben, die bewiesen haben, dass sie etwas hinzufügen und etwas hinzufügen können. Ich bin ein bisschen skeptisch gegen wilde verbale Begeisterungen. Um Bruce Sterling zu paraphrasieren, nimmt es keine jugendliche Begeisterung, es braucht hartnäckige Beharrlichkeit im mittleren Alter. Denken Sie jedoch daran, dass dies Open Source Software ist. Wenn du mit dem Code spielen willst, kannst du in deiner eigenen Richtung vorgehen oder einfach nur deine eigene Version von JCF rollen, geh nach rechts. Was andere Delphi-Code-Formatierer gibt Pascal Einzug ist ein Pascal und Delphi Formatierer geschrieben (in C) von Ladislav Sobr. Es kann auch HTML oder TeX Ausgabe von Pascal oder Delphi Quelle generieren. Der Free Pascal Compiler ist unter der GPL-Lizenz verfügbar und enthält einen Object-Pascal Code Formatierer namens PTOP. DelForExp ist eine freie (aber keine Quelle) Delphi Quellformatierer von Egbert van Nes Der Source Normalizer kostet 47. Ich weiß nichts davon, außer was auf den Webseiten ist CocolCloak ist ein ziemlich falsches Programm, das nur Delphi Quellcode verschleiern kann. Wenn Version 1 freigegeben wird, kostet es 150. Es ist eine neue Art der Sicherung Ihrer Produkte und Quellcode aus Diebstahl und Reverse Engineering. Ich bevorzuge MPL die Quelle. Die FAQ scheint zu implizieren, dass es sogar Variablennamen verschleiern wird. Was für eine sinnlose Verschwendung von Aufwand SourceCoder ist ein umfangreiches Quellcode-Tool, das die Formatierung als eine seiner Funktionen kodiert. Es kostet 89, aber es gibt eine kostenlose Testversion, die für 50 Tage funktioniert. Was andere Delphi-Code-Tools vorhanden Du könntest nach Delphi-Code-Tools im Innenkreis-Projekt suchen. Sie konnten nach den API-Übersetzungen, der Codebibliothek und den Komponenten bei der gemeinsamen Endeavour von Delphi Innovators (Projekt JEDI) suchen. GExperts ist Open Source Programmierwerkzeuge für Delphi und C Builder. Nicht nur sind sie gute Werkzeuge, die Quelle ist gute Beispiele, wie man so etwas macht. Es gibt mehrere Standorte, die als Clearing-Häuser für Delphi Shareware, Komponenten und kostenlosen Code fungieren. Ist JCF nur auf Delphi-Code Ja, es ist nur mit Delphi im Kopf entworfen. Allerdings kann es an anderen Dialekten von Pascal arbeiten. Ich habe keine Möglichkeit, dies zu testen, da ich nur Delphi benutze, aber wenn du Glück hast, lass es mich wissen. Wenn Sie möchten, dass JCF ein Syntax-Element von einem anderen Dialekt von Pascal unterstützt, dann schicken Sie mir ein Codebeispiel bitte Für andere Sprachen wie C, Java und so weiter - machen Sie eine Suche im Web und Sie werden wahrscheinlich eine Auswahl von Tools finden. Ich habe seit einiger Zeit freigegeben experimentelle GExperts Versionen, die die Code-Formatierer früher bekannt als DelForEx mit einigen Verbesserungen und Korrekturen enthalten. Die neueste Version ist von 2008-12-26 und unterstützt die folgenden Delphi-Versionen: Delphi 6 bis 7 Delphi 2005 bis 2010 Delphi XE Delphi XE2 zu XE7 Bitte beachten Sie, dass ich es nur mit Delphi 2007 verwende, also die anderen Versionen Kann unbekannte Fehler haben. Außerdem werden nicht alle Sprachverbesserungen der späteren Delphi-Versionen funktionieren, z. B. Verschachtelte Typen, Generika und anonyme Methoden. Btw: Jede Hilfe zur Verbesserung der Formatierer, vor allem das Hinzufügen der neuen Sprache Konstrukte würde geschätzt werden. Der Quellcode kann aus dem von meiner Homepage verknüpften Subversion-Repository heruntergeladen werden. Die TWM-Version von GExperts funktioniert gut und ist gut in die IDE integriert. Es ermöglicht Ihnen, Ihren Code zu schreiben und zu modifizieren, ohne sich zu sehr über die genaue Formatierung zu sorgen, dann schlagen Sie einfach den zugewiesenen Hotkey und es sofort reformiert. Ich habe es immer leicht gefunden, mich dem Stil anzupassen, den ich bevorzuge, und nicht so komplex wie das JEDI Code Format, das wie übertrieben zu mir aussah. Die Version von Delphi 2009 ist ab sofort über den Link bekannt, der auf einer Beta-Version von GExperts basiert. Es ist immer noch der gleiche Formatierer darunter, und ist sich der Syntax von einigen der neueren Delphi-Verbesserungen nicht bewusst. Beantwortet Dec 31 08 um 12:19
No comments:
Post a Comment