CollIDE - Crossplatform BlitzMax-IDE

Kommentare anzeigen Worklog abonnieren
Gehe zu Seite 1, 2, 3, 4, 5, 6, 7  Weiter

Worklogs CollIDE - Crossplatform BlitzMax-IDE

Alles wird ein bisschen bunter...

Dienstag, 30. Juni 2009 von Blitzcoder
So Leute. Nach ein wenig Pause melde ich mich mal wieder hier und kann zumindest ein wenig Kram ankündigen. In der Vergangenheit wurde vermehrt der Konfigurationsdialog für die Farben bemängelt, insbesondere die fehlende Möglichkeit den Hintergrund einzustellen. Nun gibts einen neuen Diaglog (Bzw. Tab im Konfigurationsdialog), der dies ermögicht. Zudem arbeitet er nun mit Profilen. Somit kann ich mehrere Farbkombinationen mitliefern, zum Beispiel bekannte Vertreter wie VisualStudio oder die BlitzIDE. Zudem kann sich der Programmierer Profile für unterschiedliche Tageszeiten anlegen, ich bevorzuge zum Beispiel kontrastarme Schrift auf schwarzem Hintergrund wenn es im Zimmer dunkel ist.

Oben wird das Profil ausgewält. Die unterschielichen Highlighter-Typen werden in der Mitte konfiguriert, nimmt man den Haken bei Vererbt raus, kann man die Hintergrundfarbe nochmal extra einstellen, um z.B. Konstanten mit einem grauen Hintergrund zu versehen wenn der globale Hintergrund weiß ist. Zudem kann der Schriftstil umkonfiguriert werden. Die Demotextarea unten ist hier noch nicht zu sehen, kommt aber noch.

Zuletzt noch ein Screenshot:

user posted image

Mal wieder was neues

Dienstag, 12. Mai 2009 von Blitzcoder
Nach noch ein paar Änderungen werf ich jetzt mal ne neue Version raus.

In dieser Version fehlen noch folgende Dinge, die auf meiner Liste stehen:
Arrow Textersetzung
Arrow Einstellbarkeit der Hintergrundfarbe
Arrow Eine bessere Dokumentation

Neu sind unter anderem:
Arrow Parser zeigt bei Funktionen ohne Rückgabetyp :Void an
Arrow Verbesserter SplashScreen
Arrow Menüpunkt "Alle Module bauen"
Arrow Sehr einfacher Colorpicker
Arrow "Speichern unter"
Arrow Ein Haufen Bugfixes
Arrow Der "EndRem"/"End Rem"-Kram funktioniert endlich ordentlich
Arrow Autokorrektur funktioniert wesentlich besser
Arrow Startgeschwindigkeit wurde signifikant verbessert
Arrow Die Fenstergröße und position wird richtig gespeichert
Arrow Dokumente lassen sich klonen

Zu guter Letzt gibts noch den Download: CollIDE 0.3 rc13 (zip, ca. 7 MB)

Bugs und Anregungen bitte wie immer den Bugtracker, Danke.

Dokumente Klonen

Mittwoch, 6. Mai 2009 von Blitzcoder
Ich nutze heute die zwei langweiligen Informatikstunden um ein wenig an CollIDE zu schrauen. Eine IDEs bieten das Feature, Dokumente zu klonen. Gemeinsam mit dem Docking Ansatz, kann man so ein Dokument zwei mal betrachten und 2 unterschiedliche Stellen gleichzeitig bearbeiten. Das macht z.B. Sinn um an einer Funktion zu basteln und gleichzeitig die Variablendeklarationen im Auge zu behalten bzw. anzupassen, ohne permanent scrollen zu müssen.

Das ganze in Bildern:

user posted image

user posted image

Das Spiel kann man natürlich beliebig weitertreiben und sich auch 3 oder mehr Stellen in einem Code auf einmal ansehen. Die TextArea benutzt den selben Buffer und hat damit immer (in Echtzeit) den selben Inhalt. Die Dokumente verhalten sich exakt gleich. Bis auf die Suche ist alles identisch.

Nun denn, für die nächste Version stehen noch ein paar wenige Änderungen auf der Liste, wenn die gemacht sind gibts wieder ein paar MB im zip-Format Wink

.

Sonntag, 3. Mai 2009 von Blitzcoder
In den vergangen Tagen gab es wieder ein paar kleinere, wenig sichtbare Anderungen.

Arrow Funktionen und Methoden ohne Typangabe erscheinen nun bei aktiviertem SuperStrict als ":Void" statt ":Int" im CodeTree
Arrow Es gibt verschiedene Müneinträge für "Geänderte Module bauen" und "Alle Module bauen"
Arrow "Speichern unter" Funktion
Arrow Der Fokus der Codes funktioniert nun besser, wenn mehrere Codes nebeneinander geöffnet sind
Arrow Ein Fehler beim parsen der Compilerfehler wurde behoben
Arrow Die Ersetzung von "End Rem" durch "EndRem" funktioniert nun perfekt. (Tat sie vorher auch, aber der Mechanismus, der das erkannte war kaputt)
Arrow Die Korrektur der Groß-/Kleinschreibung wurde erheblich verbessert und arbeitet nur noch bei BMax-Codes, und nicht mehr in allen Textdokumenten
Arrow Der Start der IDE wurde erheblich beschleunigt. Alle Menüscripts wurden beim Start geparst, das geschieht nun jeweils beim ersten anwählen eines Menüeintrags

CollIDE 0.3rc12

Mittwoch, 8. April 2009 von Blitzcoder
Auch ich melde mich nach einiger Zeit mal aus dem Jenseits wieder. Ich war in der gesamten Zeit leider nicht besonders produktiv, dennoch gibt es einiges neues und eine neue Testversion.

Eine kleine Liste von dem, was ich gemacht hab:

Arrow Fix einiger kleiner Bugs mit OSX
Arrow Kantenglättung (AntiAlias) funktioniert nun wie erwartet auf allen Platformen
Arrow Es gab Bugfixes im Zusammenspiel mit Compiler und Debugger
Arrow Der CodeTree klappt nun nichts mehr von selbst aus und ist schneller geworden
Arrow Noch laufende Prozesse werden beim Beenden abgeschossen
Arrow Ich habe die Steuerung des Parsers neugeschrieben, dadurch läuft es auch bedeutend stabiler
Arrow Bilder könne mit der Maus hin und hergezogen werden (Langeweile eines iPod Touch Users Wink )
Arrow Der Output scrollt mit wenn neuer Text darin landet
Arrow Es gibt nun einen Menüeintrag um das Layout der IDE zurückzusetzen, für Leute die sich alles zerschossen haben
Arrow Es gab Updates der verwendeten Bibliotheken QuaQua, jEdit und Groovy
Arrow Dateien können einfach aufs Fenster gedraggt werden, leider momentan nur auf freie Flächen wie Menü oder Toolbar

Desweiteren hab ich natürlich noch einen Haufen kleinkram aufgeräumt und korrigiert. Ich hoffe ihr habt Freude an den Updates, für Feedback bin ich immer offen Wink

Zu guter Letzt gibts noch den den Download: CollIDE 0.3rc12 (7 MB)

Donnerstag, 12. März 2009 von Blitzcoder
Nach einem kleinen Dockingupdate, hab ich das ganze nun nochmal ordentlich überarbeitet.

Aufgebaut ist es nun wie folgt:

Arrow In der Mitte ist der Content, also in diesem Fall die geöffneten Codes, Bilder, was auch immer. Diese werden standardmäßig als Tabs geöffnet, können aber verschoben werden. Somit kann man mehrere Codes auf einmal editieren, was es z.B. einfach macht an Teilen herumzubasteln, die von anderen Codeteilen abhängen.
Arrow Es ist möglich, die Codes komplett vom Fenster abzukoppeln und in ein eigenes Fenster zu verfrachten. Das ist z.B. bei einer Multimonitorlösung toll, um Codes auf mehrere Monitore zu verteilen.
Arrow Außen um den Content befinden sich die sogenannten Tools. Sie werden zur Seite eingeklappt wenn sie nicht gebraucht werden.
Arrow Natürlich sind auch die Tools voll verschieb- und abkoppelbar.

Ausstehend für Version 0.3 sind nun noch einige kleine Bugs und Korrekturen, sowie eine Suchfunktion für die Dokumentation. Dann hab ich denke ich eine stabile version 0.3, und kann mich um Features wie Autovervollständigung, einen Projektmanager und ein paar Aufräumarbeiten konzentrieren.

Eben im Chat bekam ich recht positives Feedback was die Funktionalität und Flexibilität des ganzen angeht. Ich bitte mal ganz frech um Verbesserungsvorschläge Wink

Den Download der Testversion gibt es hier: *Klick* (5,7 MB)
Hinweis: Auf MacOSX kommt beim ersten Start eine "NotSupported"-Meldung. Das ist ein fehler, den ich bereits behoben habe. Ich bin nur zu faul etwas neues hochzuladen...

Einen Screenshot, der das ganze auf Windows 7 zeigt (Vorsicht 1680er-Auflösung) gibts hier:

user posted image

Viel Spaß beim Testen
Wink

Blitzcoder

Mehr (Un-)Übersichtlichkeit

Mittwoch, 11. März 2009 von Blitzcoder
Ja, ich leben noch.

Ich hab heute auch mal wieder ein wenig gebastelt. Neben zahlreichen Bugfixes werden die Codes nun auf Wunsch auch als Dockables anstatt als Tabs dargestellt. So ist es möglich, mehrere Codes auf einmal zu sehen. Noch funktioniert es nicht ganz perfekt, aber es ist ein Anfang.

Seht selbst:

user posted image

Interesse!

Dienstag, 10. Februar 2009 von Blitzcoder
Die News auf der Startseite haben doch ihre Spuren hinterlassen. Eine Menge downloads, eine nette Menge Bugs und Mails, aber ein größtenteils doch recht positives Feedback.

Zunächst einmal möchte ich mich bei allen bedanken die die IDE getestet haben und mir ihre Fehlerbrichte und guten Ideen zukommen ließen. Hier habe ich nun erstmal eine nette List.

Heute kam allerdings FirstDeathMaker mit einer Idee auf mich zu, die mich fasziniert hat. Ich denke ich darf hier kurz seine Nachricht zitieren:
Zitat:
Hi,

ich wollte noch einen Verbesserungsvorschlag machen, wodurch diese Ide für mich noch sehr viel an Wert gewinnen würde: Beim Templatemanager, wenn man dort noch eine Möglichkeit wie typeof($var$) hätte, wodurch der typ dieser variablen eingefügt werden würde. Dadurch könnte man sich auch im superstrict mode getters und setters volautomatisiert erstellen lassen. Also schön wäre es, folgendes zu haben:

Code: [AUSKLAPPEN]
field myVar:myType


und jetzt durch ein template folgenden Source erstellen zu können:

Code: [AUSKLAPPEN]

method setMyVar(myVar:myType)
 self.myVar = myVar
end method

method getMyVar:myType()
 return self.myVar
end method



Ich fand die Idee an sich nun nicht besonders dringlich und wichtig, aber ich hatte einen Einfall über eine wesentlich flexiblere Methode des Templatens. Da ich sowieso schon groovy (http://groovy.codehaus.org/) für die Menüs nutze, dachte ich für Templates ist es auch nicht verkehrt. Voila, 30 Minuten später:

Code: [AUSKLAPPEN]
GROOVY: String var = vars.get("var");
GROOVY: if (var.indexOf(":") != -1) {
GROOVY:     vars.put("varName",var.split(":")[0]);
GROOVY:     vars.put("varType",var.split(":")[1]);
GROOVY: } else {
GROOVY:     vars.put("varName",var);
GROOVY:     vars.put("varType","");     
GROOVY: }
Method get$var$()
    Return $varName$
EndMethod

Method set$varName$(value:$varType$)
    Self.$varName$ = value
EndMethod


Hier sieht man FDM's Idee umgesetzt. Der Groovy-Code muss mit GROOVY: am Zeilenanfang stehen und hat eine HashMap namens vars zur verfügung, die die Variablen enthällt. Hier können natürlich auch neue hinzugefügt werden. Dieser Schnipsel zerlegt einfach einen Variablennamen in Namen und Typ, und wirft die Infos in die HashMap. Anschließend werden sie einfach im Template verwendet.

Eine zweite Anwendung ist der Header einer Datei, den sicherlich viele kennen. Er enthällt in der Regel Dateinamen, Erstellungsdatum und Autor. Natürlich kann das Template beliebig erweitert werden.

Code: [AUSKLAPPEN]
GROOVY: import de.blitzcoder.collide.*;
GROOVY: import de.blitzcoder.collide.gui.*;
GROOVY:
GROOVY: // FileName
GROOVY: CodeDocument doc = (CodeDocument)Interface.get().getDocumentManager().getCurrentDocument();
GROOVY: vars.put("fileName",doc.getFile().getName()); 
GROOVY:
GROOVY: // Date
GROOVY: vars.put("date",new java.util.Date(System.currentTimeMillis()).toString());
GROOVY:
GROOVY: // Author
GROOVY: vars.put("author",System.getProperty("user.name"));
Rem
   $fileName$
   -------------
   Created: $date$
   Author : $author$
EndRem


Heraus fällt, ganz ohne Benutzereingaben etwa sowas:

Code: [AUSKLAPPEN]
Rem
        DebugTest.bmx
        -------------
        Created: Tue Feb 10 22:26:18 CET 2009
        Author : blitzcoder
EndRem


Ich hoffe das Feature kann man gebrauchen Very Happy

0.3 rc8

Sonntag, 1. Februar 2009 von Blitzcoder
So nach etlichen weiteren Bugfixes und kleinen Verbesserungen gibts nun wieder eine neue Version zum Testen. Falls es Probleme mit Mac OSX gibt bitte hier einmal nachsehen.

Bugs bitte im Bugtracker auf GoogleCode posten, an bugs@blitz-coder.de mailen oder mir hier als PN schreiben.

Download

Viel Spaß beim Testen Smile

Umzug

Dienstag, 6. Januar 2009 von Blitzcoder
Ich habe nun beschlossen das Projekt komplett auf Google Code zu packen. Die alte (und veraltete) Projektwebsite flog soeben vom Server. Den alten Bugtracker gibt es zwar noch, aber die paar offenen Tickets werden auch noch rausfliegen. Ich bitte jedenfalls darum ihn nicht mehr zu benutzen.

Das ganze Projekt findet sich nun hier.

Viel gibt es noch nicht zu sehen, wenn euch Fehler oder Verbesserungsvorschläge einfallen bitte ich um Bericht Wink

Zudem gibt es dort nun Release Candidate 6 der Version 0.3 zum Download. Die ZIP-Datei wiegt ca. 6,1 MB und benötigt natürlich Java 6 (Empfohlen Java 6 Update 10 oder höher). Wer also Lust zum Testen hat der möge das tun und mir seine Erfahrungen schildern. Bugs und Verbesserungsvorschläge bitte in den Issue-Tracker von Google Packen.

Insbesondere bin ich natürlich wie immer an Tests auf der Apple-Platform interessiert. Dazu braucht ihr einen Intel-Mac mit Leopard (Böses Apple!) sowie Java 6 welches ihr hier findet, falls SoftwareUpdate es nicht längst installiert hat. Zudem müsst ihr zum starten von CollIDE die Java Version 6 noch als Standard festlegen. Dies kann in den Java-Einstellungen (Als eigenes Programm zu finden) geschehen.

Viel Spaß beim Testen Wink

Gehe zu Seite 1, 2, 3, 4, 5, 6, 7  Weiter