SQF BBCode für armaworld.de

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

  • SQF BBCode für armaworld.de

    Hallo,

    armaworld.de braucht eure Hilfe. Für die Fertigstellung und den Einbau des SQF BBCodes in das armaworld.de Forum sind noch helfende Hände nötig.

    Ich selber habe den SQF BBCode in meinem Forum schon erfolgreich funktionierend in meinem wbb Forum in Einsatz betrieben, liegt das jedoch schon über zwei Jahre zurück. In dieser Zeit sind einige neue Scriptbefehle und BIS_fnc_ dazu gekommen. Diese müssten nun wieder in das php Script des SQF-BBCode eingepflegt werden. Kurz: Akteulle Scriptbefehle und Funktionen müssen eingepflegt werden. Leider kann ich für das wbb keine Updatefähigen Pakete erstellen, so dass eine Aktualisierung von ArmA immer auch händisch im wbb Verzeichnis des Forums zu vollziehen sind, um Scriptbefehle etc. aktuell zu halten.

    Das ist aber relativ wenig aufwand, das habe ich vorher auch so gemacht. In meinen Forum hatte ich den sqf BBCode seit 2012 in Einsatz und die Pflege war kaum aufwändig.

    Das php Script, aktueller Stand 2015, ist als Textdatei angehängt.

    Vielleicht können wir gemeinsam auch die Farbhervorhebung für die Syntax festlegen? Wünsche, Ideen, Verbesserungsvorschläge etc. sind gerne Willkommen!

    Interessenten bitte im Forum schreiben, oder per PN an Doc, ZeWa oder Saint. Danke!


    Edith mit h:
    Kamerad Dorbedo hat mich freundlicherweise darauf gestoßen, dass die von mir angehängte Datei unvollständig zu sein scheint. Das ist auch so, daher werde ich das schnellstmöglich ändern und den Dateianhang vorläufig wieder entfernen!

    Dateianhang entfernt
    "Um nirgends eine gähnende Leere zu lassen, wollen wir uns vorstellen, daß aller Orten und zu jeder Zeit etwas Wahrnehmbares vorhanden ist. Um nicht Materie oder Elektrizität zu sagen, will ich für dieses Etwas das Wort Substanz brauchen."
    Hermann Minkowski

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Saint ()

  • Ich antworte einfach mal auf meinen eigenen Post, der Ordnung und Übersicht wird's keinen Schaden antun ;)

    Sämtliche ArmA Befehle habe ich eingepflegt in das php Script. Es fehlen noch die BIS_fnc_ und die CBA_fnc, aber das ist schnell gemacht.

    Als Mathematiker habe ich zwar eine Affinität zur Logik und Aussagen, jedoch fehlen mir tiefe Kenntnisse des Programmierens. Konkret brauche ich Hilfe bei folgendem Sachverhalt:

    Ich möchte lokale Variablen highlighten. Das am Besten so umgesetzt, dass bei Verwendung eines Präfix "_" (Unterstrich) automatisch erkannt wird, das es sich um eine lokale Skriptvariable handelt. Meine trauriger Versuch, leider erfolglos, sieht so aus:

    PHP-Quellcode

    1. protected $keywords7 = array(
    2. '_'
    3. );

    Es passiert deshalb nichts, weil die Skripte innerhalb des WBB mit Präfixen nichts anzufangen wissen. Wahrscheinlich muss man tief in die WBB Skripte eingreifen um das realisieren, oder? Möglicherweise übersehe ich auch etwas? Über Hilfe eines Kundigen wäre ich in diesem Fall echt dankbar :)
    "Um nirgends eine gähnende Leere zu lassen, wollen wir uns vorstellen, daß aller Orten und zu jeder Zeit etwas Wahrnehmbares vorhanden ist. Um nicht Materie oder Elektrizität zu sagen, will ich für dieses Etwas das Wort Substanz brauchen."
    Hermann Minkowski
  • Um lokale Variablen zu highlighten musst du den input parsen. Ich weiß nicht ob dein BBCode das macht, aber das ist eine Stufe komplizierter, als das reine SyntaxHighlighting.

    Und wenn lokale Variablen hervorgehoben werden, dann müssten Globale auch hervorgehoben werden, wo dann aber das Problem aufkommt, dass jeder Operand, der kein definierter SQF-Befehl ist als globale Variable angesehen werden müsste (Er kann ja sonstwo definiert sein). Um das zu erreichen reicht es dann nicht mehr die Variablendeklarationen mit einer einfachen RegEx zu suchen, sondern dann muss das Ding richtig los legen die komplette SQF syntax zu verstehen (Wenn du das geschafft hast dann sag Bescheid, denn ich hab da momentan noch ein kleines Problemchen, das ich nicht gelöst bekomme ^^).

    Du siehst also, dass das dann gleich ein erheblicher Mehraufwand mit drin steckt und letztendlich wäre es erstmal praktisch das grundlegende Highlighting zu haben ;)

    Was die Funktionen angeht, so kannst du die mit einem recht simplen Progrämmchen direkt hier raus kopieren und in das gewünschte Format bringen... Das wird am einfachsten sein und ist fast dynamisch, dh wenn die Liste aktualisiert werden muss, dann kannste das Programm einfach nochmal drüber laufen lassen :)

    EDIT:
    Lokale Variablen sollten über das Regex \b_[a-zA-Z_0-9]+ zu finden sein... ich weiß nur nicht wie das mit dem Highlighting hier funktioniert... Wenn du eine feste Liste brauchst, bevor das Highlighting anfängt dann musst du doch parsen
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • @Raven: das recht simple Progrämmchen um die Funktionen auszulesen/zu kopieren und ins entsprechende Format zu bringen finde ich wo?

    Raven schrieb:

    Du siehst also, dass das dann gleich ein erheblicher Mehraufwand mit drin steckt und letztendlich wäre es erstmal praktisch das grundlegende Highlighting zu haben
    Das grundlegende Highlighting hatte ich bereits funktionsfähig im Einsatz in meinem Forum. Es müssen lediglich die Skriptbefehle und Funktionen geupdatet werden und das ganze wieder zu einem WBB4.x Installationspaket zusammengefasst werden. Für meine Forderung, _lokale Variablen ebenfalls highlighten zu können, scheint es keine schnelle Lösung - für mich als Programmierkrüppel - zu geben. Daher kann ich auch auf eine Implementierung verzichten. Ich selbst werde keine Ausflüge ins WWW machen, um php zu lernen. Wenn jemand das implementieren kann dann gut, wenn nicht, auch gut.:)
    "Um nirgends eine gähnende Leere zu lassen, wollen wir uns vorstellen, daß aller Orten und zu jeder Zeit etwas Wahrnehmbares vorhanden ist. Um nicht Materie oder Elektrizität zu sagen, will ich für dieses Etwas das Wort Substanz brauchen."
    Hermann Minkowski
  • Folgendes Format benötige ich:

    PHP-Quellcode

    1. 'BIS_fnc_3Dcredits',
    2. 'BIS_fnc_AAN',
    3. 'BIS_fnc_absSpeed',
    4. 'BIS_fnc_addClassOO',
    5. 'BIS_fnc_addEvidence',
    6. '.....'



    Ich habe mir die Funktionen von der BI Wiki Seite kopiert und dann mit Notepad++ einfach die Präfixe und Suffixe hinzugefügt. Das geht sehr schnell, mit der Ersetzen Funktion lässt sich das sehr leicht erstellen.
    Suche nach: ^(.+)$
    Ersetzen mit: <PRÄFIX>\1 oder \1<SUFFIX>

    Gleiches geht mit den ArmA Befehlen, und den noch fehlenden CBA Funktionen. Trotzdem Danke für die angebotene Hilfe, Raven :thumbsup:
    "Um nirgends eine gähnende Leere zu lassen, wollen wir uns vorstellen, daß aller Orten und zu jeder Zeit etwas Wahrnehmbares vorhanden ist. Um nicht Materie oder Elektrizität zu sagen, will ich für dieses Etwas das Wort Substanz brauchen."
    Hermann Minkowski
  • Dorbedo schrieb:

    In der BI Wiki sind nicht alle Commands in der Übersichts-Liste aufgeführt. Das gleiche gilt für die BIS-Funktionen.
    Beispiele: BIS_fnc_attachToRelative oder inAreaArray
    Oh, das wusste ich nicht. Gibt es denn eine Quelle, wo alles gesammelt zu finden ist? Bislang dachte ich immer, die bis wiki sei auf den aktuellen Stand in Punkto Befehle und Funktionen.
    "Um nirgends eine gähnende Leere zu lassen, wollen wir uns vorstellen, daß aller Orten und zu jeder Zeit etwas Wahrnehmbares vorhanden ist. Um nicht Materie oder Elektrizität zu sagen, will ich für dieses Etwas das Wort Substanz brauchen."
    Hermann Minkowski