Hallo,
bisher hatte ich meinen Code immer in einem Editor geschrieben, jetzt wollte ich mal Eclipse probieren. Worauf kommt es bei Code completion an? Ich bekomme immer "No completions available" angezeigt. Braucht man da irgendwelche "Includes"...?
Prinzipiel habe ich mir zend-eclipse-php-galileo-SR1-win32-x86.zip heruntergeladen, entpackt und das Eclipse darin gestartet. Kein Projekt angelegt, sondern direkt eine .php bearbeitet.
Eine andere Frage ist das Code folding. Kann man da nur Funktionen und Klassen falten? Ich würde ja auch gerne große If-Konstrukte falten, aber das wird mir nicht angeboten.
Danke!
Michael
Ankündigung
Einklappen
Keine Ankündigung bisher.
Code completion/Folding Eclipse/PDT/Zend
Einklappen
Neue Werbung 2019
Einklappen
X
-
Code completion/Folding Eclipse/PDT/Zend
Stichworte: -
-
Das Problem ist bei mir meistens die .project - Datei, die direkt unter dem jeweiligen Projektnamen im Workspace gespeichert ist. Da steht u.a. drin, dass das Projekt ein PHP-Projekt ist - oder halt auch nicht. Das erkennt man übrigens im Eclipse-Explorer am Symbol neben dem Projektnamen. Wenn Eclipse es als PHP-Projekt verwaltet, ist ein "P" mit am Symbol. Wenn nicht, habt ihr das gleiche Problem wie ich.
Bei mir ist das immer der Fall wenn ich ein komplettes Projekt über SVN auschecke.
Lösung: In Eclipse zusätzlich ein PHP-Projekt "Test" anlegen, da sollte jetzt auf jeden fall ein P mit am Symbol sein, und dann mal die zwei .project - Dateien (<Workspace>\Test und <Workspace>\<AktuellesProjekt>) vergleichen. Die Abschnitte buildspec und natures sollten von der .project aus Test in die aus AktuellesProjekt kopiert werden.
Zum schluß kann man das Testprojekt löschen.
-
Gelöst. Ich hatte eine einzelne PHP-Datei geöffnet. Code Assist funktioniert scheinbar nur in einer Projektumgebung. Nachdem ich ein neues Projekt anlegte und meine Datei diesem Projekt hinzufügte, funktionierte Code Assist.
Einen Kommentar schreiben:
-
Habe jetzt nochmal in Eclipse PDT nachgesehen. Code Assist ist überall eingeschaltet. "end" wird auch ergänzt und endif und noch ein paar andere reservierte Wörter angezeigt. substr, "sub" oder ähnliches kennt es nicht oder strto... auch nicht.
Einen Kommentar schreiben:
-
Ich hatte den Eindruck, dass Netbeans eher im C(++)/Java-Bereich aktiv ist und da PHP stiefmütterlicher behandelt wird... nur eine Vermutung.
Einen Kommentar schreiben:
-
Ein Gast antworteteAlternativ kannst Du Dir mal netbeans anschauen. Dort ist das Code-Completion in meinen Augen sehr gut (und schnell). Sogar bei manchen JS-Bibliotheken.
Einen Kommentar schreiben:
-
Zitat von sumiyou Beitrag anzeigenzend-eclipse-php-galileo-SR1-win32-x86.zip
Um "Code Assist" für PHP zu nutzen, musst du natürlich entsprechende PlugIns zur PHP-Entwicklung installiert haben. Ich kenne das von dir genannte Eclipse-Bundle nicht - nutze ggf. die Suchfunktion des Einstellungsfensters.
Code Folding hängt auch wieder von der jeweils verwendeten Perspective bzw. von installierten Plugins ab. Auch danach einfach mal im Einstellungsdialog suchen.
Ich nutze z.Z. PHPEclipse und dort ist der Code Assist Projektabhängig. (Außer PHP-eigene Funktionen versteht sich.) Ich habe eher das Problem, dass immer alle evtl. passenden Variablennamen eines Projektes vorgeschlagen werden, auch wenn die Dateien nicht zwingend zusammenhängen. Aber dies ist wahrscheinlich auch gewollt so, da man bei PHP ja schon als Mensch aus dem Code und der Klassen-/Ordnerstruktur nicht immer alle Abhängigkeiten erkennen kann.
EDIT: Mmmh, ich brauche anscheinend ganz schön lange um eine Antwort zu schreiben ... schon zwei Zwischenantworten.
Zitat von sumiyou Beitrag anzeigenDas ist mein Problem: "No completions available".
Einen Kommentar schreiben:
-
Zitat von Flor1an Beitrag anzeigenInterne Funktionen sollten ganz normal angezeigt werden. Tipp z.b. "str_re" ein und dann warten oder Strg+Leertaste drücken.
Code folding weiß ich nicht ob es Eclipse auch bei IF Abfragen unterstützt. Am besten mal in den Einstellungen suchen, da kann man zumindest einstellen was von Anfang an eingeklappt sein soll. Vielleicht gibts dort auch weitere Einstellungen.
Einen Kommentar schreiben:
-
Code Completion kommt immer drauf an. Normal brauchst du sowas ja nur bei Aufrufen von internen Funktionen oder beim arbeiten mit Objekten.
Interne Funktionen sollten ganz normal angezeigt werden. Tipp z.b. "str_re" ein und dann warten oder Strg+Leertaste drücken.
Bei Objekten müssen diese Objekte natürlich bekannt sein. Daher solltest du am besten ein Projekt erstellen und dort dann eine Datei mit der Klasse haben. Wenn du dann irgendwo
$obj = new Test(),
$obj->
eingibst sollte nach dem -> auch die Code completion einsetzen und dir entsprechende Methoden der Klasse auflisten.
Code folding weiß ich nicht ob es Eclipse auch bei IF Abfragen unterstützt. Am besten mal in den Einstellungen suchen, da kann man zumindest einstellen was von Anfang an eingeklappt sein soll. Vielleicht gibts dort auch weitere Einstellungen.
Einen Kommentar schreiben:
Einen Kommentar schreiben: