Projekt: SQF plug-in für eclipse aka SQDev

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Projekt: SQF plug-in für eclipse aka SQDev

    Servus zusammen,
    Ich arbeite momentan an einem plug-in für eclipse (eine Entwicklungsumgebung, die wahrscheinlich jeder Java Programmierer schonmal gehört hat) damit es [lexicon]SQF[/lexicon] unterstützt.
    Das bedeutet dann Syntax highlighting, code completion/proposal und das meiner Meinung nach interessanteste Feature ist der live-Parser, der während man den Code schreibt schon nach Syntax Fehlern sucht und diese ggf direkt markiert.
    Für die Zukunft wäre auch noch geplant, dass es die Beschreibung aus dem wiki für die jeweiligen Befehle zu implementieren sodass man diese direkt im Editor einsehen kann. Außerdem muss ich mal schauen in wie weit es möglich ist die mission.sqm auszulesen und dann direkt zu überprüfen ob Objekte oder Marker mit dem angegebenen Namen tatsächlich existieren und mithilfe eines externen Java Programms habe ich vor einem gescheiten Debugger für [lexicon]SQF[/lexicon] zu entwickeln mit dem man den ganzen Zeile für Zeile durch den Code gehen kann und einsehen kann welchen Wert die Variablen momentan haben.
    Aber wie gesagt momentan arbeite ich noch an der grundlegenden [lexicon]SQF[/lexicon] Unterstützung für eclipse sodass das erstmal funktioniert.

    Meine Frage nun ist ob es denn auch andere gibt die sich vorstellen könnten mit diesem plug-in zu arbeiten oder ob ich das ganze erst gar nicht auf einen publik use vorbereiten brauche :)

    Eure Meinung und Ideen wurden mich mal interessieren :D

    MFG Raven

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Raven () aus folgendem Grund: Updated name

  • Ich denke das mit dem live-Parser ne Sehr schwere sache wird wegen der Inconsequenz von SQF.

    Ansonsten Klinkt das ganz interessant man kann es ja Über Git machen und da findet sich ja vielleicht noch einer ich würde aufjeden fall mal reinschauen kenne aber eclipse nicht so gut das ich gleich mit rauf springe
    SIGNATUR START
    Wer Rechtschreibfehler findet darf sie behalten
    ACE3 Core Developer
    CBA A3 Developer
    Developer of Dynasound, Enhance SoundScape, Immerse, Suppress and Align
    SIGNATUR ENDE
  • Das mit dem live Parser wird sozusagen nebenbei kreiert (weil es Teil des eclipe framework ist) wenn ich ihm die Syntax beibringe.
    Für die Syntax bin ihc im Endstadium eines Programmes, welches die ganzen relevanten Befehle (sämtliche Syntaxen) für ArmA 3 aus dem wiki zieht und mit den enstprechenden Parametern versieht (optionale Parameter werden berücksichtigt) :)

    Was meinst du mit "über git machen"?
    MFG
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • Ich meinte eine Public Repo bei Github(github.com/) oder Ähnlichen GitServer anbietern erstellt und damit kann man dann immer mitarbeiten und man hat aber auch immer noch Kontrolle wer da was einreicht oder ähnliches
    SIGNATUR START
    Wer Rechtschreibfehler findet darf sie behalten
    ACE3 Core Developer
    CBA A3 Developer
    Developer of Dynasound, Enhance SoundScape, Immerse, Suppress and Align
    SIGNATUR ENDE
  • Raven schrieb:

    Das mit dem live Parser wird sozusagen nebenbei kreiert (weil es Teil des eclipe framework ist) wenn ich ihm die Syntax beibringe.
    Für die Syntax bin ihc im Endstadium eines Programmes, welches die ganzen relevanten Befehle (sämtliche Syntaxen) für ArmA 3 aus dem wiki zieht und mit den enstprechenden Parametern versieht (optionale Parameter werden berücksichtigt) :)

    Was meinst du mit "über git machen"?
    MFG


    community.bistudio.com/wiki/supportInfo
    nutz nicht das wiki um alle befehle zu bekommen
    höchstens für die dokumentation selbiger
  • Also das mit dem live Parser klingt ziemlich pornös. Würde das richtig funktionieren könnte ich sofort anfangen zu Scripten xD

    Aber eclipse kenne ich auch noch von früher. War sehr angenehm damit zu arbeiten durch die integrierte Doku und Hilfe Funktion. Ich weiß nicht so recht auf was ich mich einschiessen soll, notepad++, poseidon oder dann eclipse. :-?
  • Astrell schrieb:

    Also das mit dem live Parser klingt ziemlich pornös. Würde das richtig funktionieren könnte ich sofort anfangen zu Scripten xD

    Aber eclipse kenne ich auch noch von früher. War sehr angenehm damit zu arbeiten durch die integrierte Doku und Hilfe Funktion. Ich weiß nicht so recht auf was ich mich einschiessen soll, notepad++, poseidon oder dann eclipse. :-?

    Na ganz klar eclipse :7_muetze::41_chill:
    Dann hat sich meine Arbeit auch noch für andere gelohnt XD
    Aber wie gesagt musst du dich noch etwas gedulden...Jetzt wo ich alle Befehle mit ihrer Syntax habe bin ich grad dabei die Grammatik für die DSL (also SQF) zu schreiben, sodass sie diese tollen Features unterstützt :)
    (Also ich will mich jetzt auf nichts einschießen aber es kann gut sein dass der erste Prototyp nach den Pfingstferien fertig ist...Kann aber nichts versprechen :38_trinken:)

    MFG Raven
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • Raven schrieb:

    Servus zusammen,
    Ich arbeite momentan an einem plug-in für eclipse (eine Entwicklungsumgebung, die wahrscheinlich jeder Java Programmierer schonmal gehört hat) damit es SQF unterstützt.


    Ich hatte vor langer Zeit mal Squint2 genutzt, aber das Ding ist instabil und clunky.
    Dann hatte ich in letzter Zeit etwas Hoffnung in Nevadascouts Dash gesetzt ( github.com/nevadascout/dash-core ), ist halt leider Windows-only, und iwie halt ichs für keine gute Idee, eine IDE from scratch zu basteln.


    Und jetzt -- endlich! Machts mal jemand richtig, und baut einfach ein Plugin für eine existierende IDE. Top! :)

    Meine eigene Kapazität für zusätzliche Projekte geht leider gegen null, aber äh ich würd auf jeden Fall reinschauen, doofe Kommentare abgeben, testen und Bugs melden, falls du die Entwicklung irgendwo öffentlich veranstalten wirst (github, bitbucket o.ä.) - was ich generell empfehlen würde, weil's fast schon Voraussetzung dafür ist, Coder anzulocken :)
  • Fusselwurm schrieb:

    Ich hatte vor langer Zeit mal Squint2 genutzt, aber das Ding ist instabil und clunky.
    Dann hatte ich in letzter Zeit etwas Hoffnung in Nevadascouts Dash gesetzt ( github.com/nevadascout/dash-core ), ist halt leider Windows-only, und iwie halt ichs für keine gute Idee, eine IDE from scratch zu basteln.


    Und jetzt -- endlich! Machts mal jemand richtig, und baut einfach ein Plugin für eine existierende IDE. Top! :)

    Meine eigene Kapazität für zusätzliche Projekte geht leider gegen null, aber äh ich würd auf jeden Fall reinschauen, doofe Kommentare abgeben, testen und Bugs melden, falls du die Entwicklung irgendwo öffentlich veranstalten wirst (github, bitbucket o.ä.) - was ich generell empfehlen würde, weil's fast schon Voraussetzung dafür ist, Coder anzulocken :)


    Freut mich dein Interesse geweckt zu haben :)
    Der Plan sieht auf jeden Fall eine "öffentliche Entwicklung" vor dh ich werde so gut es geht mit allen Interessenten zusammen arbeiten um konstruktive Kritik und Bugreports oder sonstwas zu bekommen...
    Das ganze wird anlaufen sobald der erste (mehr oder weniger) funktionsfähige Prototyp fertig ist.

    MFG Raven
  • Raven schrieb:

    Servus zusammen,
    Ich arbeite momentan an einem plug-in für eclipse (eine Entwicklungsumgebung, die wahrscheinlich jeder Java Programmierer schonmal gehört hat) damit es SQF unterstützt.
    Das bedeutet dann Syntax highlighting, code completion/proposal und das meiner Meinung nach interessanteste Feature ist der live-Parser, der während man den Code schreibt schon nach Syntax Fehlern sucht und diese ggf direkt markiert.
    Für die Zukunft wäre auch noch geplant, dass es die Beschreibung aus dem wiki für die jeweiligen Befehle zu implementieren sodass man diese direkt im Editor einsehen kann. Außerdem muss ich mal schauen in wie weit es möglich ist die mission.sqm auszulesen und dann direkt zu überprüfen ob Objekte oder Marker mit dem angegebenen Namen tatsächlich existieren und mithilfe eines externen Java Programms habe ich vor einem gescheiten Debugger für SQF zu entwickeln mit dem man den ganzen Zeile für Zeile durch den Code gehen kann und einsehen kann welchen Wert die Variablen momentan haben.
    Aber wie gesagt momentan arbeite ich noch an der grundlegenden SQF Unterstützung für eclipse sodass das erstmal funktioniert.

    Meine Frage nun ist ob es denn auch andere gibt die sich vorstellen könnten mit diesem plug-in zu arbeiten oder ob ich das ganze erst gar nicht auf einen publik use vorbereiten brauche :)

    Eure Meinung und Ideen wurden mich mal interessieren :D

    MFG Raven


    Wollte ich auch schon mal machen, hatte aber leider keine Ahnung wie das geht.
    Aber ich würde es definitiv benutzten.

    :001_tt1: :001_tt1: :001_tt1:
  • Hi!
    Habe gerade eben von deinem Projekt erfahren und bin sehr begeistert von der Idee! Ich würde es definitiv nutzen, und auch beim testen behilflich sein.

    Edit: Beim absenden kam im IRC folgender link als Hinweis: forums.bistudio.com/showthread…ADev-Eclipse-Plugin/page4

    Das gab es wohl schon einmal für Arma 2, leider hat der coder keine Zeit mehr für das Projekt und plant den Code offen zu legen, ist vieleicht interessant für dich...
  • m1ndgames schrieb:


    Edit: Beim absenden kam im IRC folgender link als Hinweis: forums.bistudio.com/showthread…ADev-Eclipse-Plugin/page4

    Das gab es wohl schon einmal für Arma 2, leider hat der coder keine Zeit mehr für das Projekt und plant den Code offen zu legen, ist vieleicht interessant für dich...


    Ja ArmADev kenne ich bereits (tdem danke), aber als ich es mal ausprobiert habe, hat es überhaupt nicht funktioniert. Außerdem wurde die Entwicklung daran schon lange eingestellt und ich habe keine Möglichkeit gefunden den SourceCode von diesem PlugIn einzusehen. Deswegen habe ich mich dazu entschlossen das Gnaze nochmal von Grund auf selbst zu machen :)

    MFG Raven
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • Mal ne kleine Zwischenfrage: Gibt es unter euch jemanden, der im Bedingungsfeld z.B. eines if-statements noch Berechnungen antstellt?
    Also so nach dem Motto

    Quellcode

    1. if((3*4) == vegleich) then {};
    2. //oder
    3. if((var1 + var2) isEqualTo (4-3*2)) then {};

    Oder Strings erst in diesem Bereich zusammenbasteln oder sonst was oder vergleicht ihr hauptsächlich fest definierte Werte (Sprich ein fixer String oder eine Variable die einfach schon vorher entsprechend zusammen gebastelt wurde)?
    Denn momentan habe ich ein paar Problemchen diese Bearbeitung vernünftig zu implmentieren... :25_rotwerd:

    Beziehungsweise mal anders gefragt: Würdet ihr es als einen großen Nachteil empfinden, dass solche Zusammensetzungen vorher gemacht werden müssen und eben in ner Varible zwischengespeichert werden, die dann in dem statement verglichen werden?

    MFG Raven

    EDIT:
    Kaum mal die Gedanken kurz wo anders gehabt und schwupps is mir beim nächsten Mal Code überliegen die Lösung für mein Problem eingefallen :35_kaffee:
    Ihr könnt Obenstehendes also getrost ignorieren...habs implementiert XD
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • Raven schrieb:

    Würdet ihr es als einen großen Nachteil empfinden, dass solche Zusammensetzungen vorher gemacht werden müssen


    Generell zu dem Thema, auch wenn's für den konkreten Fall erledigt ist: für einen ersten Release würde mir auch eine Untermenge von SQF reichen, die die wichtigsten Sachen abdeckt. Fancy shit kann man dann immer noch dazupacken, wenn die Grundlage solide ist.
  • Heyho zusammen,
    Also ich gebe hier mal über einen kleinen Zwischenstand Bescheid:
    Bis z habe ich Variablen- und Arraydeklarationen samt diverser Checks und den zugehörigen (Rechen-)Operatoren, alle Kontrollstrukturen (glaube ich zumindest) und Methodenaufrufe (das allerdings noch nicht so, dass ich damit zufrieden wäre aber fürs erste funktionsfähig) implementiert.
    Zeitplantechnisch hat sich alles etwas nach hinten verschoben, sodass ich den ersten vollen Prototypen noch nicht jz nach den Pfingstferien rausgeben kann, da ich momentan noch dran tüftle die einzelnen Scriptingbefehel mit ihrer Syntax einzubauen, aber ihc bin zuversichtlich das in nächster Zeit hinzubekommen (wann hängt davon ab wie viel Zeit ich dafür finde, aber n ein paar Wochen denke ich sollte es soweit sein).

    Meine Frage nun wäre, ob jemand interesse daran hat sich das Projekt zum jetzigen Zeitpunkt schonmal anzuschauen, um zu sehen in welche Richtung sich das Ganze bewegt? ABER: Außer minimalistischen SQF-Scripten die ohne commands auskommen (also letztendlich nur kleine Rechenprogramme, in denen Kontrollstrukturen integriert sind) ist momentan noch nichts

    MFG Raven

    P.S.: Momentan werden nur einzelene Scriptfiles unterstützt, sodass man alles, auf das man zugreifen will, im Gleichen File deklarieren muss.
    Entwickler von SQDev
    Co-Entwickler von OurAltis