PhpStorm

Hallo Zusammen,

ich entwickle zurzeit meine Scripte in PhpStorm. Wie ich im Forum bereits gelesen habe, benutzen diese IDE auch einige andere. Nun zu meiner Frage:
Kann ich PhpStorm die IP-Symcon Befehle „beibringen“? Bei mir werden die ganzen IP-Symcon Befehle als fehlerhaft markiert, da die IDE diese nicht kennt. Kann ich diese der IDE irgendwie „beibringen“, oder muss ich einfach damit leben, dass diese als fehlerhaft makiert werden?

LG
Ghostrider

Im Forum finde ich den Beitrag gerade nicht, aber Tommi hat da etwas.
http://www.tdressler.net/ipsymcon/funktionsliste.html#wrapper
Michael

ok, vielen Dank.

Soweit ich das jetzt verstanden habe ist das ja dann die Befehlsreferenz für die ganzen IP-Symcon Befehle. Aber wie kann ich diese dann bei PhpStorm hinzufügen?

LG
Ghostrider

Kenne PHPStorm jetzt nicht, aber ich kann es bei meiner IDE als Include angeben und somit kennt er die Funktionen.
Michael

Habe es jetzt hinbekommen:D
Vielen Dank für deine Hilfe.

LG
Ghostrider

Es würde allen super helfen, wenn du uns kurz beschreibst wie es geht. Dann kannst du in Zukunft auch nachschauen wie es geht, falls du es mal vergisst :slight_smile:

paresy

Klar, kein Problem:D

Also über den von Nall-chan geposteten Link bekommt man eine Anleitung, wie man die die Befehlsreferenz für alle IP-Symcon Befehle erstellt. In PhpStorm muss man dann unter File -> Settings -> Language & Frameworks -> PHP auswählen und dann den Pfad zu der Befehlsreferenz includieren (über das Plussymbol und dann Specify Other). Danach fügt PhpStorm diese Datei automatisch als External Library hinzu und kennt dadurch alle IP-Symcon Befehle.

Hoffe die Anleitung ist so verständlich genug:)

LG
Ghostrider

Kurz noch mal an Referenz: Hier eine Datei zum Einbinden: Generated Functions for IP-Symcon 4.3 · GitHub

paresy

Super, funktioniert perfekt.:loveips:

Gibt es auch eine Möglichkeit, die Systemvariable $_IPS mit ihren Elementen mit einzubinden? Oder muss ich in PHPStorm noch etwas einstellen?

Momentan wird bei mir $_IPS als ‚Undefined variable‘ angezeigt.

Gruß

Burkhard

Ich habe die mal hinzugefügt… Aber PHPStorm scheint die bei mir nicht zu nehmen!?

Generated Functions for IP-Symcon 4.3 · GitHub

paresy

Zeigt bei mir auch keine Auswirkung. Weiterhin ‚Undefined variable‘.:frowning:

(Ich probiere gerade PHPStorm. Macht wirklich einen guten Eindruck …)

Könntest du bitte noch $InstanceID mit aufnehmen?


class IPSModule {
    protected $InstanceID;
	function __construct(int $InstanceID) {}
	function Create() { return true; }
...

Ich habe es bei mir mal lokal erweitert, damit $this->InstanceID erkannt wird.

Gruß

Burkhard

Ist drin! Danke.

paresy

Hallo zusammen,

nutzt zufällig jemand den Atom Editor und hat es dort hinbekommen?
Dann würde ich mich über Infos darüber freuen. :slight_smile:

Grüße,
Kai

Ich wollte dies ausprobieren - habe es aber nicht geschafft. Zumal die PHP Unterstützung eher mäßig war im vergleich zu PHPStorm.

paresy

Schade, PHPStorm finde ich ziemlich teuer, dafür dass man es halt wirklich nur fürs Hobby nutzen möchte.
Gibt es etwas vergleichbares?

Grüße,
Kai

Bei mir war auch der Preis das Argument warum ich jetzt NetBeans nutze :wink:
Michael

Denke da bleibt nur Netbeans oder Eclipse als Alternative? Bin für Symcon jetzt aber auch auf phpStorm hängen geblieben, zumindest solange ich noch Student bin :slight_smile:

Ich schaue mir mal gerade PHPStrom an. Ich habe den Ordner scripts von IP-Symcon unter Language & Frameworks -> PHP bei include path angegeben.

Mein Problem ist nun das er irgendwie meckert das es Multiple definitions für IPSModule gibt. Anscheinend liegt noch was im Unterordner deleted.

Wie bekomme ich nun raus welche Datei unter deleted ein Problem macht? Was hat es mit dem Ordner deleted eigentlich auf sich kann ich den Inhalt einfach löschen oder geht da dann irgendwas kaputt und IPS startet nicht mehr wenn ich den Ordner einfach im Explorer leere?

Im Projekt Folder gibt es die die Möglichkeit ein Directory als Excluded zu markieren, wenn ich allerdings ein Ordner unter External Libraries include wie den Skript Ordner finde ich keine Möglichkeit unterliegende Ordner wie deleted für die Indizierung auszuschließen.

Edit: ich habe jetzt den Inhalt unter deleted einfach gelöscht jetzt geht es.